From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: NeilBrown Date: Sun, 20 May 2018 19:53:08 +1000 Subject: Re: [PATCH] staging: mt7621-gpio: retrieve correct pointers in interrupt related functions In-Reply-To: <1526803562-8369-1-git-send-email-sergio.paracuellos@gmail.com> References: <87tvr31d19.fsf@notabene.neil.brown.name> <1526803562-8369-1-git-send-email-sergio.paracuellos@gmail.com> Message-ID: <87d0xq1wmz.fsf@notabene.neil.brown.name> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" List-ID: To: Sergio Paracuellos , gregkh@linuxfoundation.org Cc: driverdev-devel@linuxdriverproject.org --=-=-= Content-Type: text/plain Content-Transfer-Encoding: quoted-printable On Sun, May 20 2018, Sergio Paracuellos wrote: > The data passed between irq related functions and the ones which have > been retrieved where different. Also first data haven't properly > set on irq_domain_add_linear call where it was passing NULL instead. > > Signed-off-by: Sergio Paracuellos Reviewed-by: NeilBrown Tested-by: NeilBrown :-) Thanks, NeilBrown > --- > drivers/staging/mt7621-gpio/gpio-mt7621.c | 14 +++++--------- > 1 file changed, 5 insertions(+), 9 deletions(-) > > diff --git a/drivers/staging/mt7621-gpio/gpio-mt7621.c b/drivers/staging/= mt7621-gpio/gpio-mt7621.c > index 650286df..077a7c2 100644 > --- a/drivers/staging/mt7621-gpio/gpio-mt7621.c > +++ b/drivers/staging/mt7621-gpio/gpio-mt7621.c > @@ -201,8 +201,7 @@ mediatek_gpio_bank_probe(struct platform_device *pdev= , struct device_node *bank) > static void > mediatek_gpio_irq_handler(struct irq_desc *desc) > { > - struct gpio_chip *gc =3D irq_desc_get_handler_data(desc); > - struct mtk_data *gpio_data =3D gpiochip_get_data(gc); > + struct mtk_data *gpio_data =3D irq_desc_get_handler_data(desc); > int i; >=20=20 > for (i =3D 0; i < MTK_MAX_BANK; i++) { > @@ -228,8 +227,7 @@ mediatek_gpio_irq_handler(struct irq_desc *desc) > static void > mediatek_gpio_irq_unmask(struct irq_data *d) > { > - struct gpio_chip *gc =3D irq_data_get_irq_chip_data(d); > - struct mtk_data *gpio_data =3D gpiochip_get_data(gc); > + struct mtk_data *gpio_data =3D irq_data_get_irq_chip_data(d); > int pin =3D d->hwirq; > int bank =3D pin / 32; > struct mtk_gc *rg =3D gpio_data->gc_map[bank]; > @@ -251,8 +249,7 @@ mediatek_gpio_irq_unmask(struct irq_data *d) > static void > mediatek_gpio_irq_mask(struct irq_data *d) > { > - struct gpio_chip *gc =3D irq_data_get_irq_chip_data(d); > - struct mtk_data *gpio_data =3D gpiochip_get_data(gc); > + struct mtk_data *gpio_data =3D irq_data_get_irq_chip_data(d); > int pin =3D d->hwirq; > int bank =3D pin / 32; > struct mtk_gc *rg =3D gpio_data->gc_map[bank]; > @@ -274,8 +271,7 @@ mediatek_gpio_irq_mask(struct irq_data *d) > static int > mediatek_gpio_irq_type(struct irq_data *d, unsigned int type) > { > - struct gpio_chip *gc =3D irq_data_get_irq_chip_data(d); > - struct mtk_data *gpio_data =3D gpiochip_get_data(gc); > + struct mtk_data *gpio_data =3D irq_data_get_irq_chip_data(d); > int pin =3D d->hwirq; > int bank =3D pin / 32; > struct mtk_gc *rg =3D gpio_data->gc_map[bank]; > @@ -352,7 +348,7 @@ mediatek_gpio_probe(struct platform_device *pdev) > if (gpio_data->gpio_irq) { > gpio_data->gpio_irq_domain =3D irq_domain_add_linear(np, > MTK_MAX_BANK * MTK_BANK_WIDTH, > - &irq_domain_ops, NULL); > + &irq_domain_ops, gpio_data); > if (!gpio_data->gpio_irq_domain) > dev_err(&pdev->dev, "irq_domain_add_linear failed\n"); > } > --=20 > 2.7.4 --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEEG8Yp69OQ2HB7X0l6Oeye3VZigbkFAlsBRYQACgkQOeye3VZi gbmfrQ//WkJeUjKZ3IMIpP6FCJn36GJ5SE3H3RJP+8jchXRVekAodnKVAW03KWTc RWEapKE31ezvJE0J0as4jHimdp65WBSjCforpe1W+2/FMHjFelWTr1MrgDOE5YPz 8ZONXYxFQlAP2NQpeFtVc+Lo0ZFHHESFmYY2cSxs0cQytiJx5QBJ2IwUvD6quFmH 5BmOAnMxbpHAZrjxqsd8AQMCceUfM/Vyudrys1A17pmcZ8JmkDak2bihwiygk1qo WibFenRtz9ZxlwhHL+pt457Ntyzpk5baf9EHOjoryyBf946CM9OWJPrqcHb6riuD ppKe3bohpBGhg8vXOrrA8/JUbyx2G5M1nPExeSHSSCkw4pQidH8IX53EOegGMpLt /HoOR8BcLhtyLMiPd6GwPbPWTqQQXqBX+hwZlK+SZPHKji1xhUqt8y/rzfURNNW1 5yt1Uof/Mvh1shr+nx8FEARFQDpjtIke5hf3dvASq+wS/AJ/8x/kygqx+VV3y4pu jFM3HtCrHDCQHnFU/NDJ8eDuRYgcrfxdO6DSf2Icr7/Sz4WAe8IghUHmD4GE8jNi 84Hl/34XYo4plHqSq2E2xY1K9It5/zNd8/KnilWYAXRYxLkEwT+Iy5cKadHI+Uu4 STmNSH147pDqnDi0gbLsnSAGn8hrUdq/LJRgLGC7PNDkLBbcGxI= =nE3v -----END PGP SIGNATURE----- --=-=-=--