Thread (76 messages) 76 messages, 18 authors, 2013-02-14

[PATCH 13/15] USB: ehci: make orion and mxc bus glues coexist

From: arnd@arndb.de (Arnd Bergmann)
Date: 2013-01-21 21:38:47
Also in: lkml

On Monday 21 January 2013, Alan Stern wrote:
On Mon, 21 Jan 2013, Felipe Balbi wrote:
quoted
On Mon, Jan 21, 2013 at 05:16:06PM +0000, Arnd Bergmann wrote:
quoted
In linux-3.8-rc1 it became possible to build the imx and
mvebu platforms together in a single kernel, which clashes
in the ehci driver.

Manjunath Goudar is already working on a patch to convert
both the imx and the mvebu glue drivers (along with all
the other ARM specific ones) to the new probing method,
but that will be too late to fix v3.8. This patch instead
adds yet another hack like the existing ones to allow
the ehci driver to load both back-ends.
Pardon me for being confused.  Is this about imx and mvebu (as 
mentioned here) or about orion and mxc (as described in the patch 
title, the error messages below, and the patch itself)?
mxc is the old name for imx: the platform got removed, but some
of the drivers still carry the old name. Similarly, orion was
used before as the name for the superset of various Marvell platforms,
and mvebu is the superset of that and some of the newer ones.

Sorry for the confusion.
quoted
quoted
Without this patch, building allyesconfig results in:

drivers/usb/host/ehci-hcd.c:1285:0: error: "PLATFORM_DRIVER" redefined
drivers/usb/host/ehci-hcd.c:1255:0: note: this is the location of the previous definition
In file included from drivers/usb/host/ehci-hcd.c:1254:0:
drivers/usb/host/ehci-mxc.c:280:31: warning: 'ehci_mxc_driver' defined but not used
Was the point here to fix the build error or to allow the two drivers
to coexist?  The first would be eaiser than the second.
Fixing the build error is probably the more important part here, but
we also really want this to work, since people are migrating towards
multiplatform kernels now, and mvebu/orion and imx/mxc are two of the
more important ones.
quoted
NAK, should be converted to the new usage of ehci library driver. Alan
Stern already implemented for a few drivers, help is very welcome.
Arnd, please take a look at

        http://marc.info/?l=linux-usb&m=135843716515529&w=2

I can't test it easily, not being set up for cross compilation.  I'm 
waiting to hear from anybody whether it works before submitting it.
(There's also a report of memory corruption involving a similar patch 
for ehci-omap; it hasn't been tracked down yet.)
Your patch looks good to me, but it also seems to do some other
changes that are not required to fix the problem but could wait
for 3.9 instead. You definitely have my Ack if you are willing
to take it for 3.8 though.

Shawn or Sascha should be able to test it.

	Arnd
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help