[PATCH v3] drivers/usb/host/ehci-fsl: Fix interrupt setup in host mode.
Christian Zigotzky
chzigotzky at xenosoft.de
Wed Jul 6 01:40:34 AEST 2022
On 02 July 2022 at 11:03 pm, Darren Stevens wrote:
> In patch a1a2b7125e10 (Drop static setup of IRQ resource from DT
> core) we stopped platform_get_resource() from returning the IRQ, as all
> drivers were supposed to have switched to platform_get_irq()
> Unfortunately the Freescale EHCI driver in host mode got missed. Fix
> it.
>
> Fixes: a1a2b7125e10 (Drop static setup of IRQ resource from DT core)
> Reported-by: Christian Zigotzky <chzigotzky at xenosoft.de>
> Suggested-by: Rob Herring <robh at kernel.org>
> Signed-off-by: Darren Stevens <darren at stevens-zone.net>
> ---
> v3 - Corrected resource allocation in fsl-mph-dr-of.c
>
> v2 - Fixed coding style, removed a couple of unneeded initializations,
> cc'd Layerscape maintainers.
>
> Tested on AmigaOne X5000/20 and X5000/40 Contains code by Rob Herring
> (in fsl-mph-dr-of.c)
>
> diff --git a/drivers/usb/host/ehci-fsl.c b/drivers/usb/host/ehci-fsl.c
> index 385be30..896c0d1 100644
> --- a/drivers/usb/host/ehci-fsl.c
> +++ b/drivers/usb/host/ehci-fsl.c
> @@ -76,14 +76,9 @@ static int fsl_ehci_drv_probe(struct platform_device *pdev)
> return -ENODEV;
> }
>
> - res = platform_get_resource(pdev, IORESOURCE_IRQ, 0);
> - if (!res) {
> - dev_err(&pdev->dev,
> - "Found HC with no IRQ. Check %s setup!\n",
> - dev_name(&pdev->dev));
> - return -ENODEV;
> - }
> - irq = res->start;
> + irq = platform_get_irq(pdev, 0);
> + if (irq < 0)
> + return irq;
>
> hcd = __usb_create_hcd(&fsl_ehci_hc_driver, pdev->dev.parent,
> &pdev->dev, dev_name(&pdev->dev), NULL);
> diff --git a/drivers/usb/host/fsl-mph-dr-of.c b/drivers/usb/host/fsl-mph-dr-of.c
> index 44a7e58..e5df175 100644
> --- a/drivers/usb/host/fsl-mph-dr-of.c
> +++ b/drivers/usb/host/fsl-mph-dr-of.c
> @@ -112,6 +112,9 @@ static struct platform_device *fsl_usb2_device_register(
> goto error;
> }
>
> + pdev->dev.of_node = ofdev->dev.of_node;
> + pdev->dev.of_node_reused = true;
> +
> retval = platform_device_add(pdev);
> if (retval)
> goto error;
Hello,
I patched the RC5 of kernel 5.19 with this patch and I can confirm, that
my keyboard and mouse work without any problems.
Tested-by: Christian Zigotzky <chzigotzky at xenosoft.de>
Please accept this patch.
Thanks,
Christian
More information about the Linuxppc-dev
mailing list