Hm, this looks like a bug: > +static ssize_t set_pwm_enable(struct device *dev, const char *buf, > + size_t count) > +{ > + struct i2c_client *client = to_i2c_client(dev); > + struct adm1026_data *data = i2c_get_clientdata(client); > + int val; > + int old_enable; > + > + if ((val >= 0) && (val < 3)) { You are using val before assigning it anything. The compiler warns you about this issue. Care to fix this up and resend the whole patch? Oh, and it should be "Signed-off-by:" not "Signed off by:" like you had used :) thanks, greg k-h