mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Arnd Bergmann <arnd@arndb.de>
To: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org, arm@kernel.org,
	Arnd Bergmann <arnd@arndb.de>,
	Alan Stern <stern@rowland.harvard.edu>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	linux-usb@vger.kernel.org,
	Manjunath Goudar <manjunath.goudar@linaro.org>,
	Shawn Guo <shawn.guo@linaro.org>,
	Sascha Hauer <s.hauer@pengutronix.de>,
	Jason Cooper <jason@lakedaemon.net>, Andrew Lunn <andrew@lunn.ch>,
	Gregory Clement <gregory.clement@free-electrons.com>
Subject: [PATCH 13/15] USB: ehci: make orion and mxc bus glues coexist
Date: Mon, 21 Jan 2013 17:16:06 +0000	[thread overview]
Message-ID: <1358788568-11137-14-git-send-email-arnd@arndb.de> (raw)
In-Reply-To: <1358788568-11137-1-git-send-email-arnd@arndb.de>

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.

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

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Cc: Alan Stern <stern@rowland.harvard.edu>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: linux-usb@vger.kernel.org
Cc: Manjunath Goudar <manjunath.goudar@linaro.org>
Cc: Shawn Guo <shawn.guo@linaro.org>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Gregory Clement <gregory.clement@free-electrons.com>
---
 drivers/usb/host/ehci-hcd.c |   16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)

diff --git a/drivers/usb/host/ehci-hcd.c b/drivers/usb/host/ehci-hcd.c
index c97503b..92e7180 100644
--- a/drivers/usb/host/ehci-hcd.c
+++ b/drivers/usb/host/ehci-hcd.c
@@ -1282,7 +1282,7 @@ MODULE_LICENSE ("GPL");
 
 #ifdef CONFIG_PLAT_ORION
 #include "ehci-orion.c"
-#define	PLATFORM_DRIVER		ehci_orion_driver
+#define	ORION_PLATFORM_DRIVER		ehci_orion_driver
 #endif
 
 #ifdef CONFIG_USB_W90X900_EHCI
@@ -1353,6 +1353,7 @@ MODULE_LICENSE ("GPL");
 #if !IS_ENABLED(CONFIG_USB_EHCI_PCI) && \
 	!IS_ENABLED(CONFIG_USB_EHCI_HCD_PLATFORM) && \
 	!defined(CONFIG_USB_CHIPIDEA_HOST) && \
+	!defined(ORION_PLATFORM_DRIVER) && \
 	!defined(PLATFORM_DRIVER) && \
 	!defined(PS3_SYSTEM_BUS_DRIVER) && \
 	!defined(OF_PLATFORM_DRIVER) && \
@@ -1393,6 +1394,12 @@ static int __init ehci_hcd_init(void)
 		goto clean0;
 #endif
 
+#ifdef ORION_PLATFORM_DRIVER
+	retval = platform_driver_register(&ORION_PLATFORM_DRIVER);
+	if (retval < 0)
+		goto clean1;
+#endif
+
 #ifdef PS3_SYSTEM_BUS_DRIVER
 	retval = ps3_ehci_driver_register(&PS3_SYSTEM_BUS_DRIVER);
 	if (retval < 0)
@@ -1424,6 +1431,10 @@ clean3:
 	ps3_ehci_driver_unregister(&PS3_SYSTEM_BUS_DRIVER);
 clean2:
 #endif
+#ifdef ORION_PLATFORM_DRIVER
+	platform_driver_unregister(&ORION_PLATFORM_DRIVER);
+clean1:
+#endif
 #ifdef PLATFORM_DRIVER
 	platform_driver_unregister(&PLATFORM_DRIVER);
 clean0:
@@ -1446,6 +1457,9 @@ static void __exit ehci_hcd_cleanup(void)
 #ifdef OF_PLATFORM_DRIVER
 	platform_driver_unregister(&OF_PLATFORM_DRIVER);
 #endif
+#ifdef ORION_PLATFORM_DRIVER
+	platform_driver_unregister(&ORION_PLATFORM_DRIVER);
+#endif
 #ifdef PLATFORM_DRIVER
 	platform_driver_unregister(&PLATFORM_DRIVER);
 #endif
-- 
1.7.10.4


  parent reply	other threads:[~2013-01-21 17:17 UTC|newest]

Thread overview: 75+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-01-21 17:15 [PATCH 00/15] ARM build regressions in v3.8 Arnd Bergmann
2013-01-21 17:15 ` [PATCH 01/15] ARM: compressed/head.S: work around new binutils warning Arnd Bergmann
2013-01-21 17:15 ` [PATCH 02/15] ARM: mvebu: build coherency_ll.S for arch=armv7-a Arnd Bergmann
2013-01-21 19:03   ` Tony Lindgren
2013-01-21 20:16     ` Arnd Bergmann
2013-01-21 17:15 ` [PATCH 03/15] ARM: samsung: fix assembly syntax for new gas Arnd Bergmann
2013-01-21 17:15 ` [PATCH 04/15] ARM: w90x900: fix legacy assembly syntax Arnd Bergmann
2013-01-21 17:15 ` [PATCH 05/15] ASoC: fsl: fiq and dma cannot both be modules Arnd Bergmann
2013-01-22  3:50   ` Shawn Guo
2013-01-22  6:33     ` Mark Brown
2013-01-22  8:21       ` Arnd Bergmann
2013-02-05 16:21       ` Arnd Bergmann
2013-02-05 16:42         ` [PATCH] ASoC: fsl: fix allyesconfig build for imx-pcm Arnd Bergmann
2013-02-06  4:02           ` Shawn Guo
2013-02-06  8:58             ` Arnd Bergmann
2013-01-21 17:15 ` [PATCH 06/15] clk: export __clk_get_name Arnd Bergmann
2013-01-21 20:51   ` Ulf Hansson
2013-01-22 10:54   ` Fabio Estevam
2013-01-22 15:43     ` Arnd Bergmann
2013-02-14 17:41       ` Arnd Bergmann
2013-01-21 17:16 ` [PATCH 07/15] drm/exynos: don't include plat/gpio-cfg.h Arnd Bergmann
2013-01-21 17:16 ` [PATCH 08/15] drm/exynos: fimd and ipp are broken on multiplatform Arnd Bergmann
2013-01-22  1:26   ` Inki Dae
2013-01-21 17:16 ` [PATCH 09/15] media: coda: don't build " Arnd Bergmann
2013-01-22  3:54   ` Shawn Guo
2013-01-22 12:32     ` Mauro Carvalho Chehab
2013-01-22 12:34       ` Mauro Carvalho Chehab
2013-01-22  8:21   ` Sascha Hauer
2013-01-22 15:41     ` Arnd Bergmann
2013-01-21 17:16 ` [PATCH 10/15] mfd/vexpress: export vexpress_config_func_{put,get} Arnd Bergmann
2013-01-21 17:23   ` Pawel Moll
2013-01-21 17:16 ` [PATCH 11/15] mtd: davinci_nand: fix OF support Arnd Bergmann
2013-01-21 21:37   ` Heiko Schocher
2013-01-21 21:50     ` Arnd Bergmann
2013-01-21 17:16 ` [PATCH 12/15] USB: gadget/freescale: disable non-multiplatform drivers Arnd Bergmann
2013-01-21 18:41   ` Felipe Balbi
2013-01-21 18:57     ` Greg Kroah-Hartman
2013-01-21 19:00       ` Felipe Balbi
2013-01-21 20:15       ` Arnd Bergmann
2013-02-05 16:27       ` Arnd Bergmann
2013-02-05 17:00         ` Greg Kroah-Hartman
2013-02-05 21:37           ` Felipe Balbi
2013-02-05 22:54             ` Arnd Bergmann
2013-02-06  1:55               ` Greg Kroah-Hartman
2013-02-06  7:06                 ` Felipe Balbi
2013-01-21 17:16 ` Arnd Bergmann [this message]
2013-01-21 18:42   ` [PATCH 13/15] USB: ehci: make orion and mxc bus glues coexist Felipe Balbi
2013-01-21 20:11     ` Alan Stern
2013-01-21 21:37       ` Arnd Bergmann
2013-01-22  6:11         ` Shawn Guo
2013-01-22  6:14           ` Shawn Guo
2013-01-22 15:30           ` Alan Stern
2013-01-21 20:14     ` Arnd Bergmann
2013-01-21 20:35       ` Alan Stern
2013-01-21 21:49         ` Arnd Bergmann
2013-01-22  3:39           ` Alan Stern
2013-01-21 17:16 ` [PATCH 14/15] samples/seccomp: be less stupid about cross compiling Arnd Bergmann
2013-01-22 21:20   ` Kees Cook
2013-01-28 14:26     ` Will Drewry
2013-01-21 17:16 ` [PATCH 15/15] staging/omapdrm: don't build on multiplatform Arnd Bergmann
2013-01-21 17:26   ` Rob Clark
2013-01-21 17:29     ` Rob Clark
2013-01-21 17:41     ` Arnd Bergmann
2013-01-21 18:39       ` Rob Clark
2013-01-21 20:09         ` Arnd Bergmann
2013-01-22 16:53         ` Greg Kroah-Hartman
2013-01-22 16:57           ` Rob Clark
2013-01-22 17:30             ` Greg Kroah-Hartman
2013-01-22 17:47               ` Arnd Bergmann
2013-01-22 18:16                 ` Rob Clark
2013-01-22 21:07                   ` Arnd Bergmann
     [not found] <CAJFYCKFb8F1k5Y6+Q4x5WgTsLO_xh1AFB1mgyRc0xK5m1ABbwA@mail.gmail.com>
2013-01-22 15:19 ` [PATCH 13/15] USB: ehci: make orion and mxc bus glues coexist Alan Stern
2013-01-22 15:38   ` Arnd Bergmann
2013-01-22 21:00     ` Sascha Hauer
2013-01-23 15:22       ` Alan Stern

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1358788568-11137-14-git-send-email-arnd@arndb.de \
    --to=arnd@arndb.de \
    --cc=andrew@lunn.ch \
    --cc=arm@kernel.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=gregory.clement@free-electrons.com \
    --cc=jason@lakedaemon.net \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=manjunath.goudar@linaro.org \
    --cc=s.hauer@pengutronix.de \
    --cc=shawn.guo@linaro.org \
    --cc=stern@rowland.harvard.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®