diff mbox series

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

Message ID 20210206095121.20625-3-matwey@sai.msu.ru (mailing list archive)
State New
Headers show
Series hwmon: lm75: Handle broken device nodes gracefully | expand

Commit Message

Matwey V. Kornilov Feb. 6, 2021, 9:51 a.m. UTC
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@sai.msu.ru>
---
 Documentation/devicetree/bindings/hwmon/lm75.yaml |  1 +
 drivers/hwmon/lm75.c                              | 11 +++++++++++
 2 files changed, 12 insertions(+)

Comments

Guenter Roeck Feb. 6, 2021, 4:48 p.m. UTC | #1
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@sai.msu.ru>
> ---
>  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
>        - 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
>
Guenter Roeck Feb. 6, 2021, 4:54 p.m. UTC | #2
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@sai.msu.ru>
>> ---
>>  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
>>
>
diff mbox series

Patch

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
       - 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,
 	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