Message ID | 1608104275-13174-11-git-send-email-yoshihiro.shimoda.uh@renesas.com (mailing list archive) |
---|---|
State | Superseded |
Delegated to: | Geert Uytterhoeven |
Headers | show |
Series | treewide: bd9571mwv: Add support for BD9574MWF | expand |
On Wed, 2020-12-16 at 16:37 +0900, Yoshihiro Shimoda wrote: > Use dev_regmap_add_irq_chip() to simplify the code. > > Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> Reviewed-by: Matti Vaittinen <matti.vaittinen@fi.rohmeurope.com> > --- > drivers/mfd/bd9571mwv.c | 27 ++++++--------------------- > 1 file changed, 6 insertions(+), 21 deletions(-) > > diff --git a/drivers/mfd/bd9571mwv.c b/drivers/mfd/bd9571mwv.c > index e68c3fa..49e968e 100644 > --- a/drivers/mfd/bd9571mwv.c > +++ b/drivers/mfd/bd9571mwv.c > @@ -170,31 +170,17 @@ static int bd9571mwv_probe(struct i2c_client > *client, > if (ret) > return ret; > > - ret = regmap_add_irq_chip(bd->regmap, bd->irq, IRQF_ONESHOT, 0, > - &bd9571mwv_irq_chip, &bd->irq_data); > + ret = devm_regmap_add_irq_chip(bd->dev, bd->regmap, bd->irq, > + IRQF_ONESHOT, 0, > &bd9571mwv_irq_chip, > + &bd->irq_data); > if (ret) { > dev_err(bd->dev, "Failed to register IRQ chip\n"); > return ret; > } > > - ret = devm_mfd_add_devices(bd->dev, PLATFORM_DEVID_AUTO, > - bd9571mwv_cells, > ARRAY_SIZE(bd9571mwv_cells), > - NULL, 0, regmap_irq_get_domain(bd- > >irq_data)); The funny diff formatting got me fooled. I spent a while wondering why you do remove the devm_mfd_add_devices - untill I noticed that it was just the diff playing tricks - it is added back in the remove. I should practice my diff reading skills :) But the result looks good and clean to me! > - if (ret) { > - regmap_del_irq_chip(bd->irq, bd->irq_data); > - return ret; > - } > - > - return 0; > -} > - > -static int bd9571mwv_remove(struct i2c_client *client) > -{ > - struct bd9571mwv *bd = i2c_get_clientdata(client); > - > - regmap_del_irq_chip(bd->irq, bd->irq_data); > - > - return 0; > + return devm_mfd_add_devices(bd->dev, PLATFORM_DEVID_AUTO, > + bd9571mwv_cells, > ARRAY_SIZE(bd9571mwv_cells), > + NULL, 0, regmap_irq_get_domain(bd- > >irq_data)); > } > > static const struct of_device_id bd9571mwv_of_match_table[] = { > @@ -215,7 +201,6 @@ static struct i2c_driver bd9571mwv_driver = { > .of_match_table = bd9571mwv_of_match_table, > }, > .probe = bd9571mwv_probe, > - .remove = bd9571mwv_remove, > .id_table = bd9571mwv_id_table, > }; > module_i2c_driver(bd9571mwv_driver);
On Wed, 16 Dec 2020, Yoshihiro Shimoda wrote: > Use dev_regmap_add_irq_chip() to simplify the code. > > Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> > --- > drivers/mfd/bd9571mwv.c | 27 ++++++--------------------- > 1 file changed, 6 insertions(+), 21 deletions(-) For my own reference (apply this as-is to your sign-off block): Acked-for-MFD-by: Lee Jones <lee.jones@linaro.org>
diff --git a/drivers/mfd/bd9571mwv.c b/drivers/mfd/bd9571mwv.c index e68c3fa..49e968e 100644 --- a/drivers/mfd/bd9571mwv.c +++ b/drivers/mfd/bd9571mwv.c @@ -170,31 +170,17 @@ static int bd9571mwv_probe(struct i2c_client *client, if (ret) return ret; - ret = regmap_add_irq_chip(bd->regmap, bd->irq, IRQF_ONESHOT, 0, - &bd9571mwv_irq_chip, &bd->irq_data); + ret = devm_regmap_add_irq_chip(bd->dev, bd->regmap, bd->irq, + IRQF_ONESHOT, 0, &bd9571mwv_irq_chip, + &bd->irq_data); if (ret) { dev_err(bd->dev, "Failed to register IRQ chip\n"); return ret; } - ret = devm_mfd_add_devices(bd->dev, PLATFORM_DEVID_AUTO, - bd9571mwv_cells, ARRAY_SIZE(bd9571mwv_cells), - NULL, 0, regmap_irq_get_domain(bd->irq_data)); - if (ret) { - regmap_del_irq_chip(bd->irq, bd->irq_data); - return ret; - } - - return 0; -} - -static int bd9571mwv_remove(struct i2c_client *client) -{ - struct bd9571mwv *bd = i2c_get_clientdata(client); - - regmap_del_irq_chip(bd->irq, bd->irq_data); - - return 0; + return devm_mfd_add_devices(bd->dev, PLATFORM_DEVID_AUTO, + bd9571mwv_cells, ARRAY_SIZE(bd9571mwv_cells), + NULL, 0, regmap_irq_get_domain(bd->irq_data)); } static const struct of_device_id bd9571mwv_of_match_table[] = { @@ -215,7 +201,6 @@ static struct i2c_driver bd9571mwv_driver = { .of_match_table = bd9571mwv_of_match_table, }, .probe = bd9571mwv_probe, - .remove = bd9571mwv_remove, .id_table = bd9571mwv_id_table, }; module_i2c_driver(bd9571mwv_driver);
Use dev_regmap_add_irq_chip() to simplify the code. Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> --- drivers/mfd/bd9571mwv.c | 27 ++++++--------------------- 1 file changed, 6 insertions(+), 21 deletions(-)