[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190902160948.GA16583@roeck-us.net>
Date: Mon, 2 Sep 2019 09:09:48 -0700
From: Guenter Roeck <linux@...ck-us.net>
To: Amy.Shih@...antech.com.tw
Cc: she90122@...il.com, oakley.ding@...antech.com.tw,
bichan.lu@...antech.com.tw, jia.sui@...antech.com.cn,
Jean Delvare <jdelvare@...e.com>, linux-hwmon@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [v6,1/1] hwmon: (nct7904) Fix incorrect temperature limitation
register setting of LTD.
On Mon, Jun 18, 2085 at 03:57:19PM +0000, Amy.Shih@...antech.com.tw wrote:
> From: "amy.shih" <amy.shih@...antech.com.tw>
>
> According to kernel hwmon sysfs-interface documentation, temperature
> critical max value, typically greater than corresponding temp_max values.
> Thus, reads the LTD_HV_HL (LTD HIGH VALUE HIGH LIMITATION) and LTD_LV_HL
> (LTD LOW VALUE HIGH LIMITATION) for case hwmon_temp_crit and
> hwmon_temp_crit_hyst. Reads the LTD_HV_LL (HIGH VALUE LOW LIMITATION)
> and LTD_LV_LL (LOW VALUE LOW LIMITATION) for case hwmon_temp_max
> and hwmon_temp_max_hyst.
>
> Signed-off-by: amy.shih <amy.shih@...antech.com.tw>
> ---
>
> Changes in v6:
> - Fix incorrect temperature limitation register setting of LTD.
This is a separate (follow-up) patch; v6 is inappropriate here.
Nevertheless, applied on top of the previous patch to hwmon-next.
Thanks,
Guenter
> Changes in v5:
> - Squashed subsequent fixes of three patches into one patch.
> Changes in v4:
> - Fix the incorrect return value of case hwmon_fan_min in function "nct7904_write_fan".
> - Fix the confused calculation of case hwmon_fan_min in function
> Changes in v3:
> - Squashed subsequent fixes of patches into one patch.
>
> -- Fix bad fallthrough in various switch statements.
> -- Fix the wrong declared of tmp as u8 in nct7904_write_in, declared tmp to int.
> -- Fix incorrect register setting of voltage.
> -- Fix incorrect register bit mapping of temperature alarm.
> -- Fix wrong return code 0x1fff in function nct7904_write_fan.
> -- Delete wrong comment in function nct7904_write_in.
> -- Fix wrong attribute names for temperature.
> -- Fix wrong registers setting for temperature.
>
> Changes in v2:
> - Fix bad fallthrough in various switch statements.
> - Fix the wrong declared of tmp as u8 in nct7904_write_in, declared tmp to int.
> ---
> drivers/hwmon/nct7904.c | 16 ++++++++--------
> 1 file changed, 8 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/hwmon/nct7904.c b/drivers/hwmon/nct7904.c
> index 76372f20d71a..ce688ab4fce2 100644
> --- a/drivers/hwmon/nct7904.c
> +++ b/drivers/hwmon/nct7904.c
> @@ -398,22 +398,22 @@ static int nct7904_read_temp(struct device *dev, u32 attr, int channel,
> }
> return 0;
> case hwmon_temp_max:
> - reg1 = LTD_HV_HL_REG;
> + reg1 = LTD_HV_LL_REG;
> reg2 = TEMP_CH1_W_REG;
> reg3 = DTS_T_CPU1_W_REG;
> break;
> case hwmon_temp_max_hyst:
> - reg1 = LTD_LV_HL_REG;
> + reg1 = LTD_LV_LL_REG;
> reg2 = TEMP_CH1_WH_REG;
> reg3 = DTS_T_CPU1_WH_REG;
> break;
> case hwmon_temp_crit:
> - reg1 = LTD_HV_LL_REG;
> + reg1 = LTD_HV_HL_REG;
> reg2 = TEMP_CH1_C_REG;
> reg3 = DTS_T_CPU1_C_REG;
> break;
> case hwmon_temp_crit_hyst:
> - reg1 = LTD_LV_LL_REG;
> + reg1 = LTD_LV_HL_REG;
> reg2 = TEMP_CH1_CH_REG;
> reg3 = DTS_T_CPU1_CH_REG;
> break;
> @@ -507,22 +507,22 @@ static int nct7904_write_temp(struct device *dev, u32 attr, int channel,
>
> switch (attr) {
> case hwmon_temp_max:
> - reg1 = LTD_HV_HL_REG;
> + reg1 = LTD_HV_LL_REG;
> reg2 = TEMP_CH1_W_REG;
> reg3 = DTS_T_CPU1_W_REG;
> break;
> case hwmon_temp_max_hyst:
> - reg1 = LTD_LV_HL_REG;
> + reg1 = LTD_LV_LL_REG;
> reg2 = TEMP_CH1_WH_REG;
> reg3 = DTS_T_CPU1_WH_REG;
> break;
> case hwmon_temp_crit:
> - reg1 = LTD_HV_LL_REG;
> + reg1 = LTD_HV_HL_REG;
> reg2 = TEMP_CH1_C_REG;
> reg3 = DTS_T_CPU1_C_REG;
> break;
> case hwmon_temp_crit_hyst:
> - reg1 = LTD_LV_LL_REG;
> + reg1 = LTD_LV_HL_REG;
> reg2 = TEMP_CH1_CH_REG;
> reg3 = DTS_T_CPU1_CH_REG;
> break;
Powered by blists - more mailing lists