NXP/FSL soc driver fixes for v5.6

DPAA2 DPIO
 - Fix a kernel hang caused by irq requested before creating dpio
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEhb3UXAyxp6UQ0v6khtxQDvusFVQFAl5qa2EACgkQhtxQDvus
 FVQFMg/+K9Nt7+LmW3wA3jlds9yz8PlaXMw862EexiDzPiIu/BT1BburHsKUd78G
 MCoIiMG+YuvDmplkLeXyq4mIC+4ofSiB+t7OhXCfzVSf7zm8t+ehRQSFuzffsmbS
 o+bZ4tJLf7Z+U6iSp5pbEZ3kor+EImgj/L4r1MVh7TkBvTgLm45HfUaq/gcm/Qdc
 NKDbwywVU34Ur6jNEY0OHpKOoTyu/lGwRWh1CbvdYBpF1r/CsSLe8Mqclo1dgxwa
 Mq85l3fGDbx8U/275GZij3m6BfGawGWjKCrNC/v9sr+7IJMR4ERp7AewoWks6QsM
 KYE22FpOhhl6YBTo8cT2d5tqHQRBwzG3I48K8fo3UiKzAtC7gEFOPGbsRL41XlUS
 PmpUYDtTp+85ukYWr5/sr/sZzbuad3LbhUz/J09ty0zYJjMbhtEq0tBG7odgrklx
 LgC3yA5+qZMp6/Q82FTNvACO5tcSMnePErB6fy75bn45hgXKEXAAzniG87uWFNp5
 xpvg+YzreEREg9xFRjyW4hwGHtRO+c2q4LErasciiF0QbP237+YBb2/55em+s/Hp
 Fxne8pZIuSOzNjlNx8GvW7I3CC8ym/uh1PffmROBrS81hLVLZrgoAmMZPFFkwnl+
 By8ySMnWSZtOYaXS/sjztnreeVf94YfxEdyWJkoYs3VWmzMzD6w=
 =SFdT
 -----END PGP SIGNATURE-----

Merge tag 'soc-fsl-fix-v5.6' of git://git.kernel.org/pub/scm/linux/kernel/git/leo/linux into arm/fixes

NXP/FSL soc driver fixes for v5.6

DPAA2 DPIO
- Fix a kernel hang caused by irq requested before creating dpio

* tag 'soc-fsl-fix-v5.6' of git://git.kernel.org/pub/scm/linux/kernel/git/leo/linux:
  soc: fsl: dpio: register dpio irq handlers after dpio create

Link: https://lore.kernel.org/r/20200312202525.16708-1-leoyang.li@nxp.com
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
Arnd Bergmann 2020-03-25 13:40:21 +01:00
commit 8b45e9d9c0

View File

@ -233,10 +233,6 @@ static int dpaa2_dpio_probe(struct fsl_mc_device *dpio_dev)
goto err_allocate_irqs;
}
err = register_dpio_irq_handlers(dpio_dev, desc.cpu);
if (err)
goto err_register_dpio_irq;
priv->io = dpaa2_io_create(&desc, dev);
if (!priv->io) {
dev_err(dev, "dpaa2_io_create failed\n");
@ -244,6 +240,10 @@ static int dpaa2_dpio_probe(struct fsl_mc_device *dpio_dev)
goto err_dpaa2_io_create;
}
err = register_dpio_irq_handlers(dpio_dev, desc.cpu);
if (err)
goto err_register_dpio_irq;
dev_info(dev, "probed\n");
dev_dbg(dev, " receives_notifications = %d\n",
desc.receives_notifications);