[lm-sensors] [patch 1/1] de-macro w83627hf
Jim Cromie
jim.cromie at gmail.com
Fri Oct 12 01:37:31 CEST 2007
On 10/9/07, Jean Delvare <khali at linux-fr.org> wrote:
> Hi Mark, hi Jim,
>
> On Tue, 9 Oct 2007 09:04:02 -0400, Mark M. Hoffman wrote:
> > * Jean Delvare <khali at linux-fr.org> [2007-10-02 12:50:55 +0200]:
> > > Once you send a patch that I can apply on top of Mark's tree, I'll
> > > review it.
> >
> > Here you go, I merged it for you. Or git did, but I resolved one conflict.
>
> OK, thank you. After reviewing and testing, here are the problems I've found:
>
> > @@ -218,7 +219,7 @@ static const u8 regpwm_627hf[] = { W83627HF_REG_PWM1, W83627HF_REG_PWM2 };
> > static const u8 regpwm[] = { W83627THF_REG_PWM1, W83627THF_REG_PWM2,
> > W83627THF_REG_PWM3 };
> > #define W836X7HF_REG_PWM(type, nr) (((type) == w83627hf) ? \
> > - regpwm_627hf[(nr) - 1] : regpwm[(nr) - 1])
> > + regpwm_627hf[nr] : regpwm[nr])
>
> Tabs should be used for indentation (not introduced by your patch but
> still worth fixing.)
Done.
>
> >
> > #define W83627HF_REG_PWM_FREQ 0x5C /* Only for the 627HF */
> >
> > @@ -400,72 +401,71 @@ static struct platform_driver w83627hf_driver = {
> > .remove = __devexit_p(w83627hf_remove),
> > };
> >
> > -/* following are the sysfs callback functions */
> > -#define show_in_reg(reg) \
> > -static ssize_t show_##reg (struct device *dev, char *buf, int nr) \
> > -{ \
> > - struct w83627hf_data *data = w83627hf_update_device(dev); \
> > - return sprintf(buf,"%ld\n", (long)IN_FROM_REG(data->reg[nr])); \
> > +static ssize_t
> > +show_in_input(struct device *dev, struct device_attribute *devattr, char *buf)
> > +{
> > + int nr = to_sensor_dev_attr(devattr)->index;
> > + struct w83627hf_data *data = w83627hf_update_device(dev);
> > + return sprintf(buf,"%ld\n", (long)IN_FROM_REG(data->in[nr]));
>
> Missing space after comma (not introduced by your patch but still worth
> fixing.)
done
> > @@ -1171,30 +1145,13 @@ static const struct attribute_group w83627hf_group = {
> > };
> >
> > static struct attribute *w83627hf_attributes_opt[] = {
> > - &dev_attr_in1_input.attr,
> > - &dev_attr_in1_min.attr,
> > - &dev_attr_in1_max.attr,
> > - &dev_attr_in5_input.attr,
> > - &dev_attr_in5_min.attr,
> > - &dev_attr_in5_max.attr,
> > - &dev_attr_in6_input.attr,
> > - &dev_attr_in6_min.attr,
> > - &dev_attr_in6_max.attr,
> > -
> > - &dev_attr_fan3_input.attr,
> > - &dev_attr_fan3_min.attr,
> > - &dev_attr_fan3_div.attr,
> > -
> > - &dev_attr_temp3_input.attr,
> > - &dev_attr_temp3_max.attr,
> > - &dev_attr_temp3_max_hyst.attr,
> > - &dev_attr_temp3_type.attr,
> > -
> > - &dev_attr_pwm3.attr,
> > -
> > - &dev_attr_pwm1_freq.attr,
> > - &dev_attr_pwm2_freq.attr,
> > - &dev_attr_pwm3_freq.attr,
> > + VIN_UNIT_ATTRS(1),
> > + VIN_UNIT_ATTRS(5),
> > + VIN_UNIT_ATTRS(6),
> > +
> > + FAN_UNIT_ATTRS(3),
> > + TEMP_UNIT_ATTRS(3),
> > + &sensor_dev_attr_pwm3.dev_attr.attr,
>
> Missing pwm1_freq, pwm2_freq and pwm3_freq attributes.
>
Ack. Done.
> > NULL
> > };
> >
> > @@ -1252,27 +1209,41 @@ static int __devinit w83627hf_probe(struct platform_device *pdev)
> >
> > /* Register chip-specific device attributes */
> > if (data->type == w83627hf || data->type == w83697hf)
> > - if ((err = device_create_file(dev, &dev_attr_in5_input))
> > - || (err = device_create_file(dev, &dev_attr_in5_min))
> > - || (err = device_create_file(dev, &dev_attr_in5_max))
> > - || (err = device_create_file(dev, &dev_attr_in6_input))
> > - || (err = device_create_file(dev, &dev_attr_in6_min))
> > - || (err = device_create_file(dev, &dev_attr_in6_max))
> > - || (err = device_create_file(dev, &dev_attr_pwm1_freq))
> > - || (err = device_create_file(dev, &dev_attr_pwm2_freq)))
> > + if ((err = device_create_file(dev,
> > + &sensor_dev_attr_in5_input.dev_attr))
> > + || (err = device_create_file(dev,
> > + &sensor_dev_attr_in5_min.dev_attr))
> > + || (err = device_create_file(dev,
> > + &sensor_dev_attr_in5_max.dev_attr))
> > + || (err = device_create_file(dev,
> > + &sensor_dev_attr_in6_input.dev_attr))
> > + || (err = device_create_file(dev,
> > + &sensor_dev_attr_in6_min.dev_attr))
> > + || (err = device_create_file(dev,
> > + &sensor_dev_attr_in6_max.dev_attr)))
>
> pwm1_freq and pwm2_freq attributes are no longer created.
Ack. Done.
> > *w83627hf_update_device(struct device *dev)
> > w83627hf_read_value(data,
> > W83781D_REG_FAN_MIN(i));
> > }
> > - for (i = 1; i <= 3; i++) {
> > + for (i = 0; i <= 2; i++) {
> > u8 tmp = w83627hf_read_value(data,
> > W836X7HF_REG_PWM(data->type, i));
> > /* bits 0-3 are reserved in 627THF */
> > if (data->type == w83627thf)
> > tmp &= 0xf0;
> > - data->pwm[i - 1] = tmp;
> > - if(i == 2 &&
> > + data->pwm[i] = tmp;
> > + if(i == 1 &&
>
> Missing space before opening parenthesis.
Done.
Also fixed one other found when searching for 'if(', I hope thats ok.
>
> > (data->type == w83627hf || data->type == w83697hf))
> > break;
> > }
>
>
> --
> Jean Delvare
>
Im attaching an incremental patch (on top of Mark's),
assuming that this is easiest.
If you want it against hwmon-testing (with change-entry, diffstat, signoff)
or you want the extraneous 'if(' fix removed, let me know.
Again, thanks to both of you.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: diff.demacro-on-marks
Type: application/octet-stream
Size: 2149 bytes
Desc: not available
Url : http://lists.lm-sensors.org/pipermail/lm-sensors/attachments/20071011/af393ae0/attachment-0001.obj
More information about the lm-sensors
mailing list