A patch for w83791d for 2.6 kernel

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

 



On Thu, Feb 09, 2006 at 01:34:42PM -0800, Charles Spirakis wrote:
> All --
> 
> Below is a patch to add w83791d support into the 2.6 kernel. This
> patch was created off of the 2.6.15.3 base, but it should apply
> cleanly on many earlier kernels (been tried on 2.6.14.3 and 2.6.15.1).
> 
> I've tried this on the system I have available here and it appears to work.
> 
> Thanks!
> 
> -- charles
> 
> 
> diff -urpN linux-2.6.15.3/Documentation/hwmon/w83791d
> linux-2.6.15.3-w83791d/Documentation/hwmon/w83791d
> --- linux-2.6.15.3/Documentation/hwmon/w83791d  1969-12-31
> 16:00:00.000000000 -0800

It looks like your email client wrapped the lines of the patch, and ate
all of the tabs for breakfast and spit them back out as spaces :(

Care to fix up your mailer problems and try again?


> +static inline u8 DIV_TO_REG(long val)
> +{
> +       int i;
> +       val = SENSORS_LIMIT(val, 1, 128) >> 1;
> +       for (i = 0; i < 6; i++) {
> +               if (val == 0)
> +                       break;
> +               val >>= 1;
> +       }
> +       return ((u8) i);

return is not a function, and doesn't need the ().

> +}
> +
> +struct w83791d_data {
> +       struct i2c_client client;
> +       struct class_device *class_dev;
> +       struct semaphore lock;

Perhaps a mutex instead?

> +static ssize_t
> +store_fan_cruise(struct device *dev, struct device_attribute *attr,
> +                    const char *buf, size_t count)
> +{
> +       struct sensor_device_attribute *sensor_attr = to_sensor_dev_attr(attr);
> +       int nr = sensor_attr->index - 1;
> +       struct i2c_client *client = to_i2c_client(dev);
> +       struct w83791d_data *data = i2c_get_clientdata(client);
> +       u32 val;
> +       u8 target_mask;
> +
> +       val = simple_strtoul(buf, NULL, 10);
> +       down(&data->update_lock);
> +       if (W83791D_FAN_SPEED_CRUISE == data->pwmenable[nr]) {
> +               data->fan_cruise[nr] = SENSORS_LIMIT(val, 0, 255);
> +               w83791d_write_value(client, W83791D_REG_TTARG[nr],
> +                                   data->fan_cruise[nr]);
> +       }
> +       else {

Put the else on the same line as the }, so it would look like:
	} else {

thanks,

greg k-h




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

  Powered by Linux