aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/hwmon/f71882fg.c
diff options
context:
space:
mode:
authorHans de Goede <hdegoede@redhat.com>2009-01-07 16:37:31 +0100
committerJean Delvare <khali@linux-fr.org>2009-01-07 16:37:31 +0100
commit28ba858798d5c70513cd8b9742841fd1bd49a074 (patch)
treebeabd0596c21e0f3b3d3a61c8dda1e6fac45b3ee /drivers/hwmon/f71882fg.c
parent3b02d332b6f15cc8f7b6a04757c86034669600e0 (diff)
downloadkernel_samsung_smdk4412-28ba858798d5c70513cd8b9742841fd1bd49a074.zip
kernel_samsung_smdk4412-28ba858798d5c70513cd8b9742841fd1bd49a074.tar.gz
kernel_samsung_smdk4412-28ba858798d5c70513cd8b9742841fd1bd49a074.tar.bz2
hwmon: (f71882fg) Printout fan modes
Print the mode (duty-cycle or RPM) of each fan on driver load. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Jean Delvare <khali@linux-fr.org>
Diffstat (limited to 'drivers/hwmon/f71882fg.c')
-rw-r--r--drivers/hwmon/f71882fg.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/drivers/hwmon/f71882fg.c b/drivers/hwmon/f71882fg.c
index 0ef7265..a6dc3c7 100644
--- a/drivers/hwmon/f71882fg.c
+++ b/drivers/hwmon/f71882fg.c
@@ -1711,7 +1711,7 @@ static int __devinit f71882fg_probe(struct platform_device *pdev)
{
struct f71882fg_data *data;
struct f71882fg_sio_data *sio_data = pdev->dev.platform_data;
- int err;
+ int err, i, nr_fans = (sio_data->type == f71882fg) ? 4 : 3;
u8 start_reg;
data = kzalloc(sizeof(struct f71882fg_data), GFP_KERNEL);
@@ -1735,14 +1735,14 @@ static int __devinit f71882fg_probe(struct platform_device *pdev)
goto exit_free;
}
+ data->pwm_enable = f71882fg_read8(data, F71882FG_REG_PWM_ENABLE);
/* If it is a 71862 and the fan / pwm part is enabled sanity check
the pwm settings */
if (data->type == f71862fg && (start_reg & 0x02)) {
- u8 reg = f71882fg_read8(data, F71882FG_REG_PWM_ENABLE);
- if ((reg & 0x15) != 0x15) {
+ if ((data->pwm_enable & 0x15) != 0x15) {
dev_err(&pdev->dev,
"Invalid (reserved) pwm settings: 0x%02x\n",
- (unsigned int)reg);
+ (unsigned int)data->pwm_enable);
err = -ENODEV;
goto exit_free;
}
@@ -1802,6 +1802,11 @@ static int __devinit f71882fg_probe(struct platform_device *pdev)
}
if (err)
goto exit_unregister_sysfs;
+
+ for (i = 0; i < nr_fans; i++)
+ dev_info(&pdev->dev, "Fan: %d is in %s mode\n", i + 1,
+ (data->pwm_enable & (1 << 2 * i)) ?
+ "duty-cycle" : "RPM");
}
data->hwmon_dev = hwmon_device_register(&pdev->dev);