gpio: pca953x: fix irq_domain_add_simple usage
We actually have to pass chip as the host_data parameter of irq_domain_add_simple() as later on, it is used to initialize chip_data in pca953x_gpio_irq_map(). Failing to do so is leading to a NULL pointer dereference after calling irq_data_get_irq_chip_data() in pca953x_irq_mask(), pca953x_irq_unmask(), pca953x_irq_bus_lock(), pca953x_irq_bus_sync_unlock() and pca953x_irq_set_type(). Fixes regression introduced by commit 0e8f2fdacf1d44651aa7e57063c76142d1f4988b (gpio: pca953x: use simple irqdomain) Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
This commit is contained in:
parent
31880c37c1
commit
e7a7f972f9
@ -575,7 +575,7 @@ static int pca953x_irq_setup(struct pca953x_chip *chip,
|
||||
chip->gpio_chip.ngpio,
|
||||
irq_base,
|
||||
&pca953x_irq_simple_ops,
|
||||
NULL);
|
||||
chip);
|
||||
if (!chip->domain)
|
||||
return -ENODEV;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user