Linux-Hwmon Archive on lore.kernel.org
 help / color / Atom feed
* [PATCH] hwmon: (pmbus) Fix page vs. register when accessing fans
@ 2020-06-23  7:47 Jan Kundrát
  2020-06-23 14:03 ` Guenter Roeck
  0 siblings, 1 reply; 2+ messages in thread
From: Jan Kundrát @ 2020-06-23  7:47 UTC (permalink / raw)
  To: Guenter Roeck; +Cc: linux-hwmon, Vadim Pasternak

Commit 16358542f32f added support for multi-phase pmbus devices.
However, when calling pmbus_add_sensor() for fans, the patch swapped
the `page` and `reg` attributes. As a result, the fan speeds were
reported as 0 RPM on my device.

Signed-off-by: Jan Kundrát <jan.kundrat@cesnet.cz>
Fixes: 16358542f32f hwmon: (pmbus) Implement multi-phase support
---
 drivers/hwmon/pmbus/pmbus_core.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git drivers/hwmon/pmbus/pmbus_core.c drivers/hwmon/pmbus/pmbus_core.c
index 8d321bf7d15b..e721a016f3e7 100644
--- drivers/hwmon/pmbus/pmbus_core.c
+++ drivers/hwmon/pmbus/pmbus_core.c
@@ -1869,7 +1869,7 @@ static int pmbus_add_fan_ctrl(struct i2c_client *client,
 	struct pmbus_sensor *sensor;
 
 	sensor = pmbus_add_sensor(data, "fan", "target", index, page,
-				  PMBUS_VIRT_FAN_TARGET_1 + id, 0xff, PSC_FAN,
+				  0xff, PMBUS_VIRT_FAN_TARGET_1 + id, PSC_FAN,
 				  false, false, true);
 
 	if (!sensor)
@@ -1880,14 +1880,14 @@ static int pmbus_add_fan_ctrl(struct i2c_client *client,
 		return 0;
 
 	sensor = pmbus_add_sensor(data, "pwm", NULL, index, page,
-				  PMBUS_VIRT_PWM_1 + id, 0xff, PSC_PWM,
+				  0xff, PMBUS_VIRT_PWM_1 + id, PSC_PWM,
 				  false, false, true);
 
 	if (!sensor)
 		return -ENOMEM;
 
 	sensor = pmbus_add_sensor(data, "pwm", "enable", index, page,
-				  PMBUS_VIRT_PWM_ENABLE_1 + id, 0xff, PSC_PWM,
+				  0xff, PMBUS_VIRT_PWM_ENABLE_1 + id, PSC_PWM,
 				  true, false, false);
 
 	if (!sensor)
@@ -1929,7 +1929,7 @@ static int pmbus_add_fan_attributes(struct i2c_client *client,
 				continue;
 
 			if (pmbus_add_sensor(data, "fan", "input", index,
-					     page, pmbus_fan_registers[f], 0xff,
+					     page, 0xff, pmbus_fan_registers[f],
 					     PSC_FAN, true, true, true) == NULL)
 				return -ENOMEM;
 
-- 
2.26.0



^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH] hwmon: (pmbus) Fix page vs. register when accessing fans
  2020-06-23  7:47 [PATCH] hwmon: (pmbus) Fix page vs. register when accessing fans Jan Kundrát
@ 2020-06-23 14:03 ` Guenter Roeck
  0 siblings, 0 replies; 2+ messages in thread
From: Guenter Roeck @ 2020-06-23 14:03 UTC (permalink / raw)
  To: Jan Kundrát; +Cc: linux-hwmon, Vadim Pasternak

On Tue, Jun 23, 2020 at 09:47:39AM +0200, Jan Kundrát wrote:
> Commit 16358542f32f added support for multi-phase pmbus devices.
> However, when calling pmbus_add_sensor() for fans, the patch swapped
> the `page` and `reg` attributes. As a result, the fan speeds were
> reported as 0 RPM on my device.
> 
> Signed-off-by: Jan Kundrát <jan.kundrat@cesnet.cz>
> Fixes: 16358542f32f hwmon: (pmbus) Implement multi-phase support

Applied.

Thanks,
Guenter

> ---
>  a/drivers/hwmon/pmbus/pmbus_core.c | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/hwmon/pmbus/pmbus_core.c b/drivers/hwmon/pmbus/pmbus_core.c
> index 8d321bf7d15b..e721a016f3e7 100644
> --- a/drivers/hwmon/pmbus/pmbus_core.c
> +++ b/drivers/hwmon/pmbus/pmbus_core.c
> @@ -1869,7 +1869,7 @@ static int pmbus_add_fan_ctrl(struct i2c_client *client,
>  	struct pmbus_sensor *sensor;
>  
>  	sensor = pmbus_add_sensor(data, "fan", "target", index, page,
> -				  PMBUS_VIRT_FAN_TARGET_1 + id, 0xff, PSC_FAN,
> +				  0xff, PMBUS_VIRT_FAN_TARGET_1 + id, PSC_FAN,
>  				  false, false, true);
>  
>  	if (!sensor)
> @@ -1880,14 +1880,14 @@ static int pmbus_add_fan_ctrl(struct i2c_client *client,
>  		return 0;
>  
>  	sensor = pmbus_add_sensor(data, "pwm", NULL, index, page,
> -				  PMBUS_VIRT_PWM_1 + id, 0xff, PSC_PWM,
> +				  0xff, PMBUS_VIRT_PWM_1 + id, PSC_PWM,
>  				  false, false, true);
>  
>  	if (!sensor)
>  		return -ENOMEM;
>  
>  	sensor = pmbus_add_sensor(data, "pwm", "enable", index, page,
> -				  PMBUS_VIRT_PWM_ENABLE_1 + id, 0xff, PSC_PWM,
> +				  0xff, PMBUS_VIRT_PWM_ENABLE_1 + id, PSC_PWM,
>  				  true, false, false);
>  
>  	if (!sensor)
> @@ -1929,7 +1929,7 @@ static int pmbus_add_fan_attributes(struct i2c_client *client,
>  				continue;
>  
>  			if (pmbus_add_sensor(data, "fan", "input", index,
> -					     page, pmbus_fan_registers[f], 0xff,
> +					     page, 0xff, pmbus_fan_registers[f],
>  					     PSC_FAN, true, true, true) == NULL)
>  				return -ENOMEM;
>  

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, back to index

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-23  7:47 [PATCH] hwmon: (pmbus) Fix page vs. register when accessing fans Jan Kundrát
2020-06-23 14:03 ` Guenter Roeck

Linux-Hwmon Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-hwmon/0 linux-hwmon/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-hwmon linux-hwmon/ https://lore.kernel.org/linux-hwmon \
		linux-hwmon@vger.kernel.org
	public-inbox-index linux-hwmon

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-hwmon


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git