Message ID | 20191002144318.140365-1-thierry.reding@gmail.com (mailing list archive) |
---|---|
State | Mainlined |
Commit | 7f0e60c751dc7252276230c7f8def447ffc0af4e |
Headers | show |
Series | mfd: max77620: Do not allocate IRQs upfront | expand |
On Wed, 02 Oct 2019, Thierry Reding wrote: > From: Thierry Reding <treding@nvidia.com> > > regmap_add_irq_chip() will try to allocate all of the IRQ descriptors > upfront if passed a non-zero irq_base parameter. However, the intention > is to allocate IRQ descriptors on an as-needed basis if possible. Pass 0 > instead of -1 to fix that use-case. > > Signed-off-by: Thierry Reding <treding@nvidia.com> > --- > drivers/mfd/max77620.c | 5 ++--- > include/linux/mfd/max77620.h | 1 - > 2 files changed, 2 insertions(+), 4 deletions(-) Applied, thanks.
diff --git a/drivers/mfd/max77620.c b/drivers/mfd/max77620.c index a851ff473a44..c7ed5c353553 100644 --- a/drivers/mfd/max77620.c +++ b/drivers/mfd/max77620.c @@ -507,7 +507,6 @@ static int max77620_probe(struct i2c_client *client, i2c_set_clientdata(client, chip); chip->dev = &client->dev; - chip->irq_base = -1; chip->chip_irq = client->irq; chip->chip_id = (enum max77620_chip_id)id->driver_data; @@ -545,8 +544,8 @@ static int max77620_probe(struct i2c_client *client, max77620_top_irq_chip.irq_drv_data = chip; ret = devm_regmap_add_irq_chip(chip->dev, chip->rmap, client->irq, - IRQF_ONESHOT | IRQF_SHARED, - chip->irq_base, &max77620_top_irq_chip, + IRQF_ONESHOT | IRQF_SHARED, 0, + &max77620_top_irq_chip, &chip->top_irq_data); if (ret < 0) { dev_err(chip->dev, "Failed to add regmap irq: %d\n", ret); diff --git a/include/linux/mfd/max77620.h b/include/linux/mfd/max77620.h index 12ba157cb83f..f552ef5b1100 100644 --- a/include/linux/mfd/max77620.h +++ b/include/linux/mfd/max77620.h @@ -329,7 +329,6 @@ struct max77620_chip { struct regmap *rmap; int chip_irq; - int irq_base; /* chip id */ enum max77620_chip_id chip_id;