* [v4 1/2] hwmon: (nct7904) Fix the incorrect return value of case hwmon_fan_min in function "nct7904_write_fan".
@ 2019-08-06 2:30 Amy.Shih
2019-08-06 2:31 ` [v4 2/2] hwmon: (nct7904) Fix the confused calculation " Amy.Shih
2019-08-06 22:34 ` [v4 1/2] hwmon: (nct7904) Fix the incorrect return value " Guenter Roeck
0 siblings, 2 replies; 3+ messages in thread
From: Amy.Shih @ 2019-08-06 2:30 UTC (permalink / raw)
To: she90122
Cc: amy.shih, oakley.ding, jia.sui, Jean Delvare, Guenter Roeck,
linux-hwmon, linux-kernel
From: "amy.shih" <amy.shih@advantech.com.tw>
Return the -EINVAL(Invalid argument) when writing the values <= 0
to sysfs node fan[1-*]_min.
Signed-off-by: amy.shih <amy.shih@advantech.com.tw>
Changes in v4:
- Fix the incorrect return value of case hwmon_fan_min in function "nct7904_write_fan".
Changes in v3:
- Squashed subsequent fixes of below 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 | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/hwmon/nct7904.c b/drivers/hwmon/nct7904.c
index d842c10ba11f..6527b56e4f6c 100644
--- a/drivers/hwmon/nct7904.c
+++ b/drivers/hwmon/nct7904.c
@@ -551,7 +551,7 @@ static int nct7904_write_fan(struct device *dev, u32 attr, int channel,
switch (attr) {
case hwmon_fan_min:
if (val <= 0)
- return 0;
+ return -EINVAL;
val = clamp_val((1350000 + (val >> 1)) / val, 1, 0x1fff);
tmp = (val >> 5) & 0xff;
--
2.17.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [v4 2/2] hwmon: (nct7904) Fix the confused calculation of case hwmon_fan_min in function "nct7904_write_fan".
2019-08-06 2:30 [v4 1/2] hwmon: (nct7904) Fix the incorrect return value of case hwmon_fan_min in function "nct7904_write_fan" Amy.Shih
@ 2019-08-06 2:31 ` Amy.Shih
2019-08-06 22:34 ` [v4 1/2] hwmon: (nct7904) Fix the incorrect return value " Guenter Roeck
1 sibling, 0 replies; 3+ messages in thread
From: Amy.Shih @ 2019-08-06 2:31 UTC (permalink / raw)
To: she90122
Cc: amy.shih, oakley.ding, jia.sui, Jean Delvare, Guenter Roeck,
linux-hwmon, linux-kernel
From: "amy.shih" <amy.shih@advantech.com.tw>
Use the macro "DIV_ROUND_CLOSEST" instead.
Signed-off-by: amy.shih <amy.shih@advantech.com.tw>
Changes in v4:
- Fix the confused calculation of case hwmon_fan_min in function
"nct7904_write_fan".
Changes in v3:
- Squashed subsequent fixes of below 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 | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/hwmon/nct7904.c b/drivers/hwmon/nct7904.c
index 6527b56e4f6c..76372f20d71a 100644
--- a/drivers/hwmon/nct7904.c
+++ b/drivers/hwmon/nct7904.c
@@ -553,7 +553,7 @@ static int nct7904_write_fan(struct device *dev, u32 attr, int channel,
if (val <= 0)
return -EINVAL;
- val = clamp_val((1350000 + (val >> 1)) / val, 1, 0x1fff);
+ val = clamp_val(DIV_ROUND_CLOSEST(1350000, val), 1, 0x1fff);
tmp = (val >> 5) & 0xff;
ret = nct7904_write_reg(data, BANK_1,
FANIN1_HV_HL_REG + channel * 2, tmp);
--
2.17.1
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [v4 1/2] hwmon: (nct7904) Fix the incorrect return value of case hwmon_fan_min in function "nct7904_write_fan".
2019-08-06 2:30 [v4 1/2] hwmon: (nct7904) Fix the incorrect return value of case hwmon_fan_min in function "nct7904_write_fan" Amy.Shih
2019-08-06 2:31 ` [v4 2/2] hwmon: (nct7904) Fix the confused calculation " Amy.Shih
@ 2019-08-06 22:34 ` Guenter Roeck
1 sibling, 0 replies; 3+ messages in thread
From: Guenter Roeck @ 2019-08-06 22:34 UTC (permalink / raw)
To: Amy.Shih
Cc: she90122, oakley.ding, jia.sui, Jean Delvare, linux-hwmon, linux-kernel
On Tue, Aug 06, 2019 at 02:30:07AM +0000, Amy.Shih@advantech.com.tw wrote:
> From: "amy.shih" <amy.shih@advantech.com.tw>
>
> Return the -EINVAL(Invalid argument) when writing the values <= 0
> to sysfs node fan[1-*]_min.
>
> Signed-off-by: amy.shih <amy.shih@advantech.com.tw>
>
This again fixes a previous patch of the series. Please squash
the entire series (all three patches) together in a single patch.
Thanks,
Guenter
> Changes in v4:
> - Fix the incorrect return value of case hwmon_fan_min in function "nct7904_write_fan".
> Changes in v3:
> - Squashed subsequent fixes of below 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 | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/hwmon/nct7904.c b/drivers/hwmon/nct7904.c
> index d842c10ba11f..6527b56e4f6c 100644
> --- a/drivers/hwmon/nct7904.c
> +++ b/drivers/hwmon/nct7904.c
> @@ -551,7 +551,7 @@ static int nct7904_write_fan(struct device *dev, u32 attr, int channel,
> switch (attr) {
> case hwmon_fan_min:
> if (val <= 0)
> - return 0;
> + return -EINVAL;
>
> val = clamp_val((1350000 + (val >> 1)) / val, 1, 0x1fff);
> tmp = (val >> 5) & 0xff;
> --
> 2.17.1
>
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2019-08-06 22:34 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-08-06 2:30 [v4 1/2] hwmon: (nct7904) Fix the incorrect return value of case hwmon_fan_min in function "nct7904_write_fan" Amy.Shih
2019-08-06 2:31 ` [v4 2/2] hwmon: (nct7904) Fix the confused calculation " Amy.Shih
2019-08-06 22:34 ` [v4 1/2] hwmon: (nct7904) Fix the incorrect return value " Guenter Roeck
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).