aboutsummaryrefslogtreecommitdiff
path: root/hw
diff options
context:
space:
mode:
authorGuenter Roeck <linux@roeck-us.net>2024-09-06 06:29:12 -0700
committerPhilippe Mathieu-Daudé <philmd@linaro.org>2024-09-13 20:11:13 +0200
commit3a0b75880a05088af176523ce820ef0e0a1d2317 (patch)
tree7ddc6eaaa4173f9988d813ac5bbc863aa92179fe /hw
parentbf4e487057fe4998ec494c00cc97242c0f37873e (diff)
downloadqemu-3a0b75880a05088af176523ce820ef0e0a1d2317.zip
qemu-3a0b75880a05088af176523ce820ef0e0a1d2317.tar.gz
qemu-3a0b75880a05088af176523ce820ef0e0a1d2317.tar.bz2
hw/sensor/tmp105: Lower 4 bit of limit registers are always 0
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> Message-Id: <20240906154911.86803-6-philmd@linaro.org> [PMD: Update tests/qtest/ files] Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Diffstat (limited to 'hw')
-rw-r--r--hw/sensor/tmp105.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/hw/sensor/tmp105.c b/hw/sensor/tmp105.c
index f5101af..9d7b911 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;