Message ID | 558B984D.9040309@linaro.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 25.06.2015 14:57, Vaibhav Hiremath wrote: > > > On Thursday 25 June 2015 11:20 AM, Krzysztof Kozlowski wrote: >> On 25.06.2015 14:44, Vaibhav Hiremath wrote: >>> >>> >>> On Thursday 25 June 2015 11:02 AM, Krzysztof Kozlowski wrote: >>>> On 25.06.2015 14:26, Vaibhav Hiremath wrote: >>>>> >>>>> >>>>> On Thursday 25 June 2015 05:33 AM, Krzysztof Kozlowski wrote: >>>>>> 2015-06-24 18:21 GMT+09:00 Vaibhav Hiremath >>>>>> <vaibhav.hiremath@linaro.org>: >>>>>>> As per the spec, bit 1 (INT_CLEAR_MODE) of reg addr 0xe >>>>>>> (page 0) controls the method of clearing interrupt >>>>>>> status of 88pm800 family of devices; >>>>>>> >>>>>>> 0: clear on read >>>>>>> 1: clear on write >>>>>>> >>>>>>> This patch allows to configure this field, through DT. >>>>>>> >>>>>>> Also, as suggested by "Lee Jones" renaming DT property and variable >>>>>>> field to appropriate name. >>>>>>> >>>>>>> Signed-off-by: Zhao Ye <zhaoy@marvell.com> >>>>>>> Signed-off-by: Vaibhav Hiremath <vaibhav.hiremath@linaro.org> >>>>>> >>>> > > <snip> > >>> >>> Yes, >>> Fair enough... >>> >>> I see very little value in runtime configuration, why not just do it >>> only way (either read or write)? >>> I would prefer to just set it by default (during init), to clear irq on >>> write. >> >> Hard-coding a default value, if board files are not present, looks OK >> to me. >> > > This is how it will look, I will also update the binding information > with this. > > > hvaibhav@hvaibhav-ThinkPad-T440p:~/projects/mainline/linux$ git diff > --cached > diff --git a/drivers/mfd/88pm800.c b/drivers/mfd/88pm800.c > index 0a417ac..e415a06 100644 > --- a/drivers/mfd/88pm800.c > +++ b/drivers/mfd/88pm800.c > @@ -645,9 +645,8 @@ static int pm800_probe(struct i2c_client *client, > dev_err(&client->dev, "failed to allocaate > memory\n"); > return -ENOMEM; > } > - > - pdata->irq_clr_on_wr = of_property_read_bool(np, > - "marvell,irq-clr-on-write"); > + /* Setting irq clear method on write */ > + pdata->irq_clr_on_wr = true; > } > > ret = pm80x_init(client); IMHO it is good. Best regards, Krzysztof
diff --git a/drivers/mfd/88pm800.c b/drivers/mfd/88pm800.c index 0a417ac..e415a06 100644 --- a/drivers/mfd/88pm800.c +++ b/drivers/mfd/88pm800.c @@ -645,9 +645,8 @@ static int pm800_probe(struct i2c_client *client, dev_err(&client->dev, "failed to allocaate memory\n"); return -ENOMEM; } - - pdata->irq_clr_on_wr = of_property_read_bool(np, - "marvell,irq-clr-on-write"); + /* Setting irq clear method on write */ + pdata->irq_clr_on_wr = true; }