From: "amy.shih" <amy.shih@xxxxxxxxxxxxxxxx> In function nct7904_read_temp, the bit to shift for register SMI_STS1_REG should be bit 1 & 3 & 5 &7 for TEMP_CH1~4. Signed-off-by: amy.shih <amy.shih@xxxxxxxxxxxxxxxx> --- Changes in v2: - Fix incorrect register bit mapping of temperature alarm. drivers/hwmon/nct7904.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/hwmon/nct7904.c b/drivers/hwmon/nct7904.c index 402c1bb2a99f..95348eebe8e4 100644 --- a/drivers/hwmon/nct7904.c +++ b/drivers/hwmon/nct7904.c @@ -356,7 +356,7 @@ static int nct7904_read_temp(struct device *dev, u32 attr, int channel, SMI_STS1_REG); if (ret < 0) return ret; - *val = (ret >> (channel & 0x07)) & 1; + *val = (ret >> (((channel * 2) + 1) & 0x07)) & 1; } else { if ((channel - 5) < 4) { ret = nct7904_read_reg(data, BANK_0, -- 2.17.1