diff mbox series

[v1] hwmon (it87): Add scaling macro for recent ADC voltages

Message ID 20230313115356.334937-1-frank@crawford.emu.id.au (mailing list archive)
State Changes Requested
Headers show
Series [v1] hwmon (it87): Add scaling macro for recent ADC voltages | expand

Commit Message

Frank Crawford March 13, 2023, 11:53 a.m. UTC
Generalise scaling to include all recent ADC values and match the labels
for internal voltage sensors.

This includes correction of an existing error for voltage scaling for
chips that have 10.9mV ADCs, where scaling was not performed.

Signed-off-by: Frank Crawford <frank@crawford.emu.id.au>
---
 drivers/hwmon/it87.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

Comments

Guenter Roeck March 15, 2023, 9:51 p.m. UTC | #1
On Mon, Mar 13, 2023 at 10:53:56PM +1100, Frank Crawford wrote:
> Generalise scaling to include all recent ADC values and match the labels
> for internal voltage sensors.
> 
> This includes correction of an existing error for voltage scaling for
> chips that have 10.9mV ADCs, where scaling was not performed.
> 

This is again two logical changes in a single patch, one of which is
a bug fix.

Guenter

> Signed-off-by: Frank Crawford <frank@crawford.emu.id.au>
> ---
>  drivers/hwmon/it87.c | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/hwmon/it87.c b/drivers/hwmon/it87.c
> index 66f7ceaa7c3f..f774a0732a7c 100644
> --- a/drivers/hwmon/it87.c
> +++ b/drivers/hwmon/it87.c
> @@ -515,6 +515,8 @@ static const struct it87_devices it87_devices[] = {
>  #define has_six_temp(data)	((data)->features & FEAT_SIX_TEMP)
>  #define has_vin3_5v(data)	((data)->features & FEAT_VIN3_5V)
>  #define has_conf_noexit(data)	((data)->features & FEAT_CONF_NOEXIT)
> +#define has_scaling(data)	((data)->features & (FEAT_12MV_ADC | \
> +						     FEAT_10_9MV_ADC))
>  
>  struct it87_sio_data {
>  	int sioaddr;
> @@ -2002,7 +2004,7 @@ static ssize_t show_label(struct device *dev, struct device_attribute *attr,
>  
>  	if (has_vin3_5v(data) && nr == 0)
>  		label = labels[0];
> -	else if (has_12mv_adc(data) || has_10_9mv_adc(data))
> +	else if (has_scaling(data))
>  		label = labels_it8721[nr];
>  	else
>  		label = labels[nr];
> @@ -3134,7 +3136,7 @@ static int it87_probe(struct platform_device *pdev)
>  			 "Detected broken BIOS defaults, disabling PWM interface\n");
>  
>  	/* Starting with IT8721F, we handle scaling of internal voltages */
> -	if (has_12mv_adc(data)) {
> +	if (has_scaling(data)) {
>  		if (sio_data->internal & BIT(0))
>  			data->in_scaled |= BIT(3);	/* in3 is AVCC */
>  		if (sio_data->internal & BIT(1))
diff mbox series

Patch

diff --git a/drivers/hwmon/it87.c b/drivers/hwmon/it87.c
index 66f7ceaa7c3f..f774a0732a7c 100644
--- a/drivers/hwmon/it87.c
+++ b/drivers/hwmon/it87.c
@@ -515,6 +515,8 @@  static const struct it87_devices it87_devices[] = {
 #define has_six_temp(data)	((data)->features & FEAT_SIX_TEMP)
 #define has_vin3_5v(data)	((data)->features & FEAT_VIN3_5V)
 #define has_conf_noexit(data)	((data)->features & FEAT_CONF_NOEXIT)
+#define has_scaling(data)	((data)->features & (FEAT_12MV_ADC | \
+						     FEAT_10_9MV_ADC))
 
 struct it87_sio_data {
 	int sioaddr;
@@ -2002,7 +2004,7 @@  static ssize_t show_label(struct device *dev, struct device_attribute *attr,
 
 	if (has_vin3_5v(data) && nr == 0)
 		label = labels[0];
-	else if (has_12mv_adc(data) || has_10_9mv_adc(data))
+	else if (has_scaling(data))
 		label = labels_it8721[nr];
 	else
 		label = labels[nr];
@@ -3134,7 +3136,7 @@  static int it87_probe(struct platform_device *pdev)
 			 "Detected broken BIOS defaults, disabling PWM interface\n");
 
 	/* Starting with IT8721F, we handle scaling of internal voltages */
-	if (has_12mv_adc(data)) {
+	if (has_scaling(data)) {
 		if (sio_data->internal & BIT(0))
 			data->in_scaled |= BIT(3);	/* in3 is AVCC */
 		if (sio_data->internal & BIT(1))