Re: [PATCH 3/3] mfd: arizona: Use arizona_map_irq instead of hard coding it

From: Lee Jones
Date: Tue Nov 22 2016 - 10:51:46 EST


On Tue, 22 Nov 2016, Lee Jones wrote:

> On Mon, 14 Nov 2016, Charles Keepax wrote:
>
> > We have arizona_map_irq we might as well use it rather than hard coding
> > it in several places.
> >
> > Signed-off-by: Charles Keepax <ckeepax@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
> > ---
> > drivers/mfd/arizona-irq.c | 21 +++++++++------------
> > 1 file changed, 9 insertions(+), 12 deletions(-)
>
> Applied, thanks.

Slight change of plan.

Patch doesn't seem to apply.

Please rebase it on top of my MFD tree and resubmit.

> > diff --git a/drivers/mfd/arizona-irq.c b/drivers/mfd/arizona-irq.c
> > index bc3b342..22f96c9 100644
> > --- a/drivers/mfd/arizona-irq.c
> > +++ b/drivers/mfd/arizona-irq.c
> > @@ -204,7 +204,7 @@ static const struct irq_domain_ops arizona_domain_ops = {
> > int arizona_irq_init(struct arizona *arizona)
> > {
> > int flags = IRQF_ONESHOT;
> > - int ret, i;
> > + int ret;
> > const struct regmap_irq_chip *aod, *irq;
> > struct irq_data *irq_data;
> > unsigned int virq;
> > @@ -379,9 +379,8 @@ int arizona_irq_init(struct arizona *arizona)
> > }
> >
> > /* Make sure the boot done IRQ is unmasked for resumes */
> > - i = arizona_map_irq(arizona, ARIZONA_IRQ_BOOT_DONE);
> > - ret = request_threaded_irq(i, NULL, arizona_boot_done, IRQF_ONESHOT,
> > - "Boot done", arizona);
> > + ret = arizona_request_irq(arizona, ARIZONA_IRQ_BOOT_DONE, "Boot done",
> > + arizona_boot_done, arizona);
> > if (ret != 0) {
> > dev_err(arizona->dev, "Failed to request boot done %d: %d\n",
> > arizona->irq, ret);
> > @@ -390,10 +389,9 @@ int arizona_irq_init(struct arizona *arizona)
> >
> > /* Handle control interface errors in the core */
> > if (arizona->ctrlif_error) {
> > - i = arizona_map_irq(arizona, ARIZONA_IRQ_CTRLIF_ERR);
> > - ret = request_threaded_irq(i, NULL, arizona_ctrlif_err,
> > - IRQF_ONESHOT,
> > - "Control interface error", arizona);
> > + ret = arizona_request_irq(arizona, ARIZONA_IRQ_CTRLIF_ERR,
> > + "Control interface error",
> > + arizona_ctrlif_err, arizona);
> > if (ret != 0) {
> > dev_err(arizona->dev,
> > "Failed to request CTRLIF_ERR %d: %d\n",
> > @@ -405,7 +403,7 @@ int arizona_irq_init(struct arizona *arizona)
> > return 0;
> >
> > err_ctrlif:
> > - free_irq(arizona_map_irq(arizona, ARIZONA_IRQ_BOOT_DONE), arizona);
> > + arizona_free_irq(arizona, ARIZONA_IRQ_BOOT_DONE, arizona);
> > err_boot_done:
> > free_irq(arizona->irq, arizona);
> > err_main_irq:
> > @@ -429,9 +427,8 @@ int arizona_irq_exit(struct arizona *arizona)
> > unsigned int virq;
> >
> > if (arizona->ctrlif_error)
> > - free_irq(arizona_map_irq(arizona, ARIZONA_IRQ_CTRLIF_ERR),
> > - arizona);
> > - free_irq(arizona_map_irq(arizona, ARIZONA_IRQ_BOOT_DONE), arizona);
> > + arizona_free_irq(arizona, ARIZONA_IRQ_CTRLIF_ERR, arizona);
> > + arizona_free_irq(arizona, ARIZONA_IRQ_BOOT_DONE, arizona);
> >
> > virq = irq_find_mapping(arizona->virq, 1);
> > regmap_del_irq_chip(virq, arizona->irq_chip);
>

--
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org â Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog