Re: [PATCH] mfd: omap-usb-host: Fix dts probe of children

From: Tony Lindgren
Date: Thu Aug 30 2018 - 18:18:58 EST


Lee,

* Tony Lindgren <tony@xxxxxxxxxxx> [180425 07:31]:
> It currently only works if the parent bus uses "simple-bus". We
> currently try to probe children with non-existing compatible values.
> And we're missing .probe.
>
> I noticed this while testing devices configured to probe using ti-sysc
> interconnect target module driver. For that we also may want to rebind
> the driver, so let's remove __init and __exit.
>
> Cc: Roger Quadros <rogerq@xxxxxx>
> Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>
> ---
>
> This is OK to wait for v4.18 merge window as the related dts node has
> not yet been updated to probe via ti-sysc interconnect target driver.

Sorry I just noticed this is still pending, it should be
applied as a fix for the -rc series.

Do you want me to resend the patch?

Regards,

Tony

> drivers/mfd/omap-usb-host.c | 11 ++++++-----
> 1 file changed, 6 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/mfd/omap-usb-host.c b/drivers/mfd/omap-usb-host.c
> --- a/drivers/mfd/omap-usb-host.c
> +++ b/drivers/mfd/omap-usb-host.c
> @@ -548,8 +548,8 @@ static int usbhs_omap_get_dt_pdata(struct device *dev,
> }
>
> static const struct of_device_id usbhs_child_match_table[] = {
> - { .compatible = "ti,omap-ehci", },
> - { .compatible = "ti,omap-ohci", },
> + { .compatible = "ti,ehci-omap", },
> + { .compatible = "ti,ohci-omap3", },
> { }
> };
>
> @@ -875,6 +875,7 @@ static struct platform_driver usbhs_omap_driver = {
> .pm = &usbhsomap_dev_pm_ops,
> .of_match_table = usbhs_omap_dt_ids,
> },
> + .probe = usbhs_omap_probe,
> .remove = usbhs_omap_remove,
> };
>
> @@ -884,9 +885,9 @@ MODULE_ALIAS("platform:" USBHS_DRIVER_NAME);
> MODULE_LICENSE("GPL v2");
> MODULE_DESCRIPTION("usb host common core driver for omap EHCI and OHCI");
>
> -static int __init omap_usbhs_drvinit(void)
> +static int omap_usbhs_drvinit(void)
> {
> - return platform_driver_probe(&usbhs_omap_driver, usbhs_omap_probe);
> + return platform_driver_register(&usbhs_omap_driver);
> }
>
> /*
> @@ -898,7 +899,7 @@ static int __init omap_usbhs_drvinit(void)
> */
> fs_initcall_sync(omap_usbhs_drvinit);
>
> -static void __exit omap_usbhs_drvexit(void)
> +static void omap_usbhs_drvexit(void)
> {
> platform_driver_unregister(&usbhs_omap_driver);
> }
> --
> 2.17.0
> --
> To unsubscribe from this list: send the line "unsubscribe linux-omap" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>