qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v2 5/5] hw/sensor/tmp105: Lower 4 bit of limit registers are


From: Philippe Mathieu-Daudé
Subject: Re: [PATCH v2 5/5] hw/sensor/tmp105: Lower 4 bit of limit registers are always 0
Date: Sat, 7 Sep 2024 06:12:13 +0200
User-agent: Mozilla Thunderbird

On 6/9/24 17:49, Philippe Mathieu-Daudé wrote:
From: Guenter Roeck <linux@roeck-us.net>

Per datasheet, "HIGH AND LOW LIMIT REGISTERS", the lower 4 bit
of the limit registers are unused and always report 0.
The lower 4 bit should not be used for temperature comparisons,
so mask the unused bits before storing the limits.

Signed-off-by: Guenter Roeck <linux@roeck-us.net>

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Reviewed-by: Cédric Le Goater <clg@kaod.org>

Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
---
  hw/sensor/tmp105.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/hw/sensor/tmp105.c b/hw/sensor/tmp105.c
index f5101af919..9d7b911f59 100644
--- a/hw/sensor/tmp105.c
+++ b/hw/sensor/tmp105.c
@@ -171,7 +171,7 @@ static void tmp105_write(TMP105State *s)
      case TMP105_REG_T_HIGH:
          if (s->len >= 3) {
              s->limit[s->pointer & 1] = (int16_t)
-                    ((((uint16_t) s->buf[0]) << 8) | s->buf[1]);
+                    ((((uint16_t) s->buf[0]) << 8) | (s->buf[1] & 0xf0));
          }
          tmp105_alarm_update(s, false);
          break;




reply via email to

[Prev in Thread] Current Thread [Next in Thread]