Re: [RFC PATCH v1 2/2] usb: host: add xhci-exynos to support Exynos SOCs

From: Jung Daehwan
Date: Sun Dec 04 2022 - 22:36:28 EST


On Thu, Dec 01, 2022 at 09:06:55AM +0100, Greg Kroah-Hartman wrote:
> On Thu, Dec 01, 2022 at 11:13:31AM +0900, Daehwan Jung wrote:
> > This driver works with xhci platform driver. It needs to override
> > functions of xhci_plat_hc_driver. Wakelocks are used for sleep/wakeup
> > scenario of system.
>
> So this means that no other platform xhci driver can be supported in the
> same system at the same time.
>
> Which kind of makes sense as that's not anything a normal system would
> have, BUT it feels very odd. This whole idea of "override the platform
> driver" feels fragile, why not make these just real platform drivers and
> have the xhci platform code be a library that the other ones can use?
> That way you have more control overall, right?
>
> thanks,
>
> greg k-h
>

Currently It seems there are 2 ways to excute own function.
1. xhci_plat_priv
-> This is hard to use it if the driver invokes xhci platform driver from
dwc3_host_init(usb/dwc/host.c). I can't pass driver data during probe.
2. xhci_driver_overrides
-> This is only useful if I has own xhci driver.

That's why I wanted to extend overriding concept of xhci platform driver.
If some code is better to be directly in xhci platform driver than xhci-exynos,
I will modify it.

Best Regard,
Jung Daehwan