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 <mat...@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,
        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
-- 
2.26.2

Reply via email to