hwmon: (corsair-psu) Rely on subsystem locking

Attribute access is now serialized in the hardware monitoring core,
so locking in the driver code is no longer necessary. Drop it.

Signed-off-by: Guenter Roeck <linux@roeck-us.net>
pull/1354/merge
Guenter Roeck 2025-09-09 06:16:45 -07:00
parent 4207069edb
commit abfb050851
1 changed files with 1 additions and 10 deletions

View File

@ -4,7 +4,6 @@
#include <linux/clk.h> #include <linux/clk.h>
#include <linux/device.h> #include <linux/device.h>
#include <linux/hwmon.h> #include <linux/hwmon.h>
#include <linux/hwmon-sysfs.h>
#include <linux/interrupt.h> #include <linux/interrupt.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/module.h> #include <linux/module.h>
@ -198,7 +197,6 @@ struct npcm7xx_pwm_fan_data {
int pwm_modules; int pwm_modules;
struct clk *pwm_clk; struct clk *pwm_clk;
struct clk *fan_clk; struct clk *fan_clk;
struct mutex pwm_lock[NPCM7XX_PWM_MAX_MODULES];
spinlock_t fan_lock[NPCM7XX_FAN_MAX_MODULE]; spinlock_t fan_lock[NPCM7XX_FAN_MAX_MODULE];
int fan_irq[NPCM7XX_FAN_MAX_MODULE]; int fan_irq[NPCM7XX_FAN_MAX_MODULE];
bool pwm_present[NPCM7XX_PWM_MAX_CHN_NUM]; bool pwm_present[NPCM7XX_PWM_MAX_CHN_NUM];
@ -221,7 +219,6 @@ static int npcm7xx_pwm_config_set(struct npcm7xx_pwm_fan_data *data,
/* /*
* Config PWM Comparator register for setting duty cycle * Config PWM Comparator register for setting duty cycle
*/ */
mutex_lock(&data->pwm_lock[module]);
/* write new CMR value */ /* write new CMR value */
iowrite32(val, NPCM7XX_PWM_REG_CMRx(data->pwm_base, module, pwm_ch)); iowrite32(val, NPCM7XX_PWM_REG_CMRx(data->pwm_base, module, pwm_ch));
@ -245,7 +242,6 @@ static int npcm7xx_pwm_config_set(struct npcm7xx_pwm_fan_data *data,
env_bit = NPCM7XX_PWM_CTRL_CH3_INV_BIT; env_bit = NPCM7XX_PWM_CTRL_CH3_INV_BIT;
break; break;
default: default:
mutex_unlock(&data->pwm_lock[module]);
return -ENODEV; return -ENODEV;
} }
@ -260,8 +256,6 @@ static int npcm7xx_pwm_config_set(struct npcm7xx_pwm_fan_data *data,
} }
iowrite32(tmp_buf, NPCM7XX_PWM_REG_CR(data->pwm_base, module)); iowrite32(tmp_buf, NPCM7XX_PWM_REG_CR(data->pwm_base, module));
mutex_unlock(&data->pwm_lock[module]);
return 0; return 0;
} }
@ -932,8 +926,8 @@ static int npcm7xx_pwm_fan_probe(struct platform_device *pdev)
struct resource *res; struct resource *res;
struct device *hwmon; struct device *hwmon;
char name[20]; char name[20];
int ret, cnt;
u32 output_freq; u32 output_freq;
int ret;
u32 i; u32 i;
np = dev->of_node; np = dev->of_node;
@ -985,9 +979,6 @@ static int npcm7xx_pwm_fan_probe(struct platform_device *pdev)
output_freq = npcm7xx_pwm_init(data); output_freq = npcm7xx_pwm_init(data);
npcm7xx_fan_init(data); npcm7xx_fan_init(data);
for (cnt = 0; cnt < data->pwm_modules; cnt++)
mutex_init(&data->pwm_lock[cnt]);
for (i = 0; i < NPCM7XX_FAN_MAX_MODULE; i++) { for (i = 0; i < NPCM7XX_FAN_MAX_MODULE; i++) {
spin_lock_init(&data->fan_lock[i]); spin_lock_init(&data->fan_lock[i]);