Re: [PATCH v4 2/4] hwmon: lm75: Add nxp,lm75a to of_match list

From: Guenter Roeck
Date: Sat Feb 06 2021 - 11:56:29 EST


On 2/6/21 8:48 AM, Guenter Roeck wrote:
> On 2/6/21 1:51 AM, Matwey V. Kornilov wrote:
>> NXP LM75A is compatible with original LM75A while it has improved
>> 11-bit precision.
>>
>> https://www.nxp.com/docs/en/data-sheet/LM75A.pdf
>>
>> Signed-off-by: Matwey V. Kornilov <matwey@xxxxxxxxxx>
>> ---
>> Documentation/devicetree/bindings/hwmon/lm75.yaml | 1 +
>> drivers/hwmon/lm75.c | 11 +++++++++++
>> 2 files changed, 12 insertions(+)
>>
>> diff --git a/Documentation/devicetree/bindings/hwmon/lm75.yaml b/Documentation/devicetree/bindings/hwmon/lm75.yaml
>> index aec8edd1e0c6..8c3848f4c277 100644
>> --- a/Documentation/devicetree/bindings/hwmon/lm75.yaml
>> +++ b/Documentation/devicetree/bindings/hwmon/lm75.yaml
>> @@ -22,6 +22,7 @@ properties:
>> - national,lm75
>> - national,lm75a
>> - national,lm75b
>> + - nxp,lm75a

We'll also need nxp,lm75b because that is distinctly different to
national,lm75b / ti,lm75b. Also, we'll need to fix the entry for
those to reflect that the sensor resolution is only 9 bit, not
11 bit as currently claimed.

Thanks,
Guenter

>> - maxim,max6625
>> - maxim,max6626
>> - maxim,max31725
>> diff --git a/drivers/hwmon/lm75.c b/drivers/hwmon/lm75.c
>> index 08cde1c446db..9c54c7d86771 100644
>> --- a/drivers/hwmon/lm75.c
>> +++ b/drivers/hwmon/lm75.c
>> @@ -33,6 +33,7 @@ enum lm75_type { /* keep sorted in alphabetical order */
>> lm75,
>> lm75a,
>> lm75b,
>> + nxp_lm75,
>
> Please make this lm75a_nxp for improved alphabetical alignment
> and to reflect that it is LM75A.
>
>> max6625,
>> max6626,
>> max31725,
>> @@ -182,6 +183,11 @@ static const struct lm75_params device_params[] = {
>> .default_resolution = 11,
>> .default_sample_time = MSEC_PER_SEC / 10,
>> },
>> + [nxp_lm75] = {
>> + .default_resolution = 11,
>> + .default_sample_time = MSEC_PER_SEC / 10,
>> + .resolution_limits = 9,
>> + },
>> [max6625] = {
>> .default_resolution = 9,
>> .default_sample_time = MSEC_PER_SEC / 7,
>> @@ -644,6 +650,7 @@ static const struct i2c_device_id lm75_ids[] = {
>> { "lm75", lm75, },
>> { "lm75a", lm75a, },
>> { "lm75b", lm75b, },
>> + { "nxp_lm75a", nxp_lm75, },
>> { "max6625", max6625, },
>> { "max6626", max6626, },
>> { "max31725", max31725, },
>> @@ -703,6 +710,10 @@ static const struct of_device_id __maybe_unused lm75_of_match[] = {
>> .compatible = "national,lm75b",
>> .data = (void *)lm75b
>> },
>> + {
>> + .compatible = "nxp,lm75a",
>> + .data = (void *)nxp_lm75
>> + },
>> {
>> .compatible = "maxim,max6625",
>> .data = (void *)max6625
>>
>