[PATCH V5 6/6] USB: OHCI: avoid conflicting platform drivers
Alan Stern
stern at rowland.harvard.edu
Wed Apr 17 16:57:03 EDT 2013
On Tue, 2 Apr 2013, Arnd Bergmann wrote:
> Like the EHCI driver, OHCI supports a large number of different platform
> glue drivers by directly including them, which causes problems with
> conflicting macro definitions in some cases. As more ARM architecture
> specific back-ends are required to coexist in a single build, we should
> split those out into separate drivers. Unfortunately, the infrastructure
> for that is still under development, so to give us more time, this uses
> a separate *_PLATFORM_DRIVER macro for each ARM specific OHCI backend,
> just like we already do on PowerPC and some of the other ARM platforms.
>
> In linux-3.10, only the SPEAr and CNS3xxx back-ends would actually conflict
> without this patch, but over time we would get more of them, so this
> is a way to avoid having to patch the driver every time it breaks. We
> should still split out all back-ends into separate loadable modules,
> but that work is only needed to improve code size and cleanliness after
> this patch, not for correctness.
>
> While we're here, this fixes the incorrectly sorted error path
> for the OMAP1 and OMAP3 backends to ensure we always unregister
> the exact set of drivers that were registered before erroring out.
>
> Signed-off-by: Arnd Bergmann <arnd at arndb.de>
I finally had a chance to look through this carefully. It is fine.
Acked-by: Alan Stern <stern at rowland.harvard.edu>
More information about the linux-arm-kernel
mailing list