Re: Additional PWM driver support for w83792d

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Roger,

Good to see you again :)

On Sat, 9 May 2015 13:57:41 +0100, vt8231@xxxxxxxxxxxxxxxxxx wrote:
> Dear LM-Sensors,
> 
> I have a Dell FS12-NV7 server and it has two W83792G chips on it (as well as
> an IT87).  One of the W83792G devices is connected to three fans on PWM
> outputs 3,4 and 5 respectively.
> 
> I am running with Ubuntu 15.04 (Linux 3.19.0) and the W83792D driver only
> has support for PWM outputs 1,2 and 3.
> 
> The patch below adds the 4 missing PWM outputs which are supported by the
> chip.  This has been tested and works as expected on my motherboard.

It's amazing that nobody ever noticed the missing pwm files before,
thanks for reporting.

> 
> --- linux-3.19.0/drivers/hwmon/w83792d.c        2015-02-09
> 02:54:22.000000000 +0000
> +++ linux-3.19.0-new/drivers/hwmon/w83792d.c    2015-05-08
> 21:53:06.637515282 +0100
> @@ -1075,6 +1075,10 @@
>  static SENSOR_DEVICE_ATTR(pwm1, S_IWUSR | S_IRUGO, show_pwm, store_pwm, 0);
>  static SENSOR_DEVICE_ATTR(pwm2, S_IWUSR | S_IRUGO, show_pwm, store_pwm, 1);
>  static SENSOR_DEVICE_ATTR(pwm3, S_IWUSR | S_IRUGO, show_pwm, store_pwm, 2);
> +static SENSOR_DEVICE_ATTR(pwm4, S_IWUSR | S_IRUGO, show_pwm, store_pwm, 3);
> +static SENSOR_DEVICE_ATTR(pwm5, S_IWUSR | S_IRUGO, show_pwm, store_pwm, 4);
> +static SENSOR_DEVICE_ATTR(pwm6, S_IWUSR | S_IRUGO, show_pwm, store_pwm, 5);
> +static SENSOR_DEVICE_ATTR(pwm7, S_IWUSR | S_IRUGO, show_pwm, store_pwm, 6);
>  static SENSOR_DEVICE_ATTR(pwm1_enable, S_IWUSR | S_IRUGO,
>                         show_pwmenable, store_pwmenable, 1);
>  static SENSOR_DEVICE_ATTR(pwm2_enable, S_IWUSR | S_IRUGO,
> @@ -1270,6 +1274,10 @@
>         &sensor_dev_attr_pwm3.dev_attr.attr,
>         &sensor_dev_attr_pwm3_mode.dev_attr.attr,
>         &sensor_dev_attr_pwm3_enable.dev_attr.attr,
> +       &sensor_dev_attr_pwm4.dev_attr.attr,
> +       &sensor_dev_attr_pwm5.dev_attr.attr,
> +       &sensor_dev_attr_pwm6.dev_attr.attr,
> +       &sensor_dev_attr_pwm7.dev_attr.attr,
>         &dev_attr_alarms.attr,
>         &dev_attr_intrusion0_alarm.attr,
>         &sensor_dev_attr_tolerance1.dev_attr.attr,
> 
> I hope this patch is of use to others who are using the same server or have
> a similar situation.

Yes we want to apply something like this. However your e-mail client
broke the formatting. Any chance you can resend using a client which
does not mangle white space nor fold long lines?

I think the new attributes should go in w83792d_attributes_fan rather
than w83792d_attributes, as they are not always enabled (mutually
exclusive with other functions.)

Your patch should also add files pwm[4-7]_mode.

Also there is this comment in the code:

	u8 pwm[7];		/*
				 * We only consider the first 3 set of pwm,
				 * although 792 chip has 7 set of pwm.
				 */

which should be removed. Documentation/hwmon/w83792d should be updated
accordingly, as it currently claims that fan outputs 4-7 aren't
supported and doesn't mention attributes pwm[4-7] and pwm[4-7]_mode.

We'll need your Signed-off-by line so that the patch can be applied.

Last note: registers 0xA3-0xA6 have extra configuration bits "Sync
T1/2/3". Maybe the driver should handle them but I am not sure how. It
could be that the extra outputs should only be exposed to user-space if
these bits are 0 (stand alone.) Guenter, any idea/opinion on this?

-- 
Jean Delvare
SUSE L3 Support

_______________________________________________
lm-sensors mailing list
lm-sensors@xxxxxxxxxxxxxx
http://lists.lm-sensors.org/mailman/listinfo/lm-sensors




[Index of Archives]     [Linux Kernel]     [Linux Hardware Monitoring]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux