diff options
Diffstat (limited to 'drivers/hwmon')
| -rw-r--r-- | drivers/hwmon/fam15h_power.c | 2 | ||||
| -rw-r--r-- | drivers/hwmon/ibmpowernv.c | 6 | ||||
| -rw-r--r-- | drivers/hwmon/pwm-fan.c | 13 | 
3 files changed, 15 insertions, 6 deletions
| diff --git a/drivers/hwmon/fam15h_power.c b/drivers/hwmon/fam15h_power.c index fcdbde4ec692..3057dfc7e3bc 100644 --- a/drivers/hwmon/fam15h_power.c +++ b/drivers/hwmon/fam15h_power.c @@ -234,7 +234,7 @@ static const struct pci_device_id fam15h_power_id_table[] = {  	{ PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_15H_NB_F4) },  	{ PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_15H_M30H_NB_F4) },  	{ PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_16H_NB_F4) }, -	{ PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_16H_M30H_NB_F3) }, +	{ PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_16H_M30H_NB_F4) },  	{}  };  MODULE_DEVICE_TABLE(pci, fam15h_power_id_table); diff --git a/drivers/hwmon/ibmpowernv.c b/drivers/hwmon/ibmpowernv.c index d2bf2c97ae70..6a30eeea94be 100644 --- a/drivers/hwmon/ibmpowernv.c +++ b/drivers/hwmon/ibmpowernv.c @@ -181,7 +181,7 @@ static int __init populate_attr_groups(struct platform_device *pdev)  	opal = of_find_node_by_path("/ibm,opal/sensors");  	if (!opal) { -		dev_err(&pdev->dev, "Opal node 'sensors' not found\n"); +		dev_dbg(&pdev->dev, "Opal node 'sensors' not found\n");  		return -ENODEV;  	} @@ -335,7 +335,9 @@ static int __init ibmpowernv_init(void)  	err = platform_driver_probe(&ibmpowernv_driver, ibmpowernv_probe);  	if (err) { -		pr_err("Platfrom driver probe failed\n"); +		if (err != -ENODEV) +			pr_err("Platform driver probe failed (%d)\n", err); +  		goto exit_device_del;  	} diff --git a/drivers/hwmon/pwm-fan.c b/drivers/hwmon/pwm-fan.c index 823c877a1ec0..1991d9032c38 100644 --- a/drivers/hwmon/pwm-fan.c +++ b/drivers/hwmon/pwm-fan.c @@ -161,10 +161,17 @@ static int pwm_fan_suspend(struct device *dev)  static int pwm_fan_resume(struct device *dev)  {  	struct pwm_fan_ctx *ctx = dev_get_drvdata(dev); +	unsigned long duty; +	int ret; -	if (ctx->pwm_value) -		return pwm_enable(ctx->pwm); -	return 0; +	if (ctx->pwm_value == 0) +		return 0; + +	duty = DIV_ROUND_UP(ctx->pwm_value * (ctx->pwm->period - 1), MAX_PWM); +	ret = pwm_config(ctx->pwm, duty, ctx->pwm->period); +	if (ret) +		return ret; +	return pwm_enable(ctx->pwm);  }  #endif | 
