diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2011-01-03 05:30:28 -0500 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2011-02-11 02:40:45 -0500 |
commit | 4bd597b633ae630e09d58957bd99870eac35fcb4 (patch) | |
tree | 39b829bee667531ac41ea48d7f392ecb9258f956 /arch/arm/plat-mxc | |
parent | cb07625d1f84fb48e6849cb530762ffcc6f8e458 (diff) |
ARM i.MX ehci: do ehci init in board specific functions
The mxc-ehci driver calls SoC specific phy initialization right after
calling board specific initialization. To offer greater flexibility for
boards to setup the phy and to get rid of some unnecessary flags in
platform data this patch lets the boards call the SoC specific phy
initialization and remove it from the driver.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/plat-mxc')
-rw-r--r-- | arch/arm/plat-mxc/Makefile | 1 | ||||
-rw-r--r-- | arch/arm/plat-mxc/ehci.c | 46 | ||||
-rw-r--r-- | arch/arm/plat-mxc/include/mach/mxc_ehci.h | 3 |
3 files changed, 0 insertions, 50 deletions
diff --git a/arch/arm/plat-mxc/Makefile b/arch/arm/plat-mxc/Makefile index 5fd20e96876c..a1387875a491 100644 --- a/arch/arm/plat-mxc/Makefile +++ b/arch/arm/plat-mxc/Makefile | |||
@@ -13,7 +13,6 @@ obj-$(CONFIG_IMX_HAVE_IOMUX_V1) += iomux-v1.o | |||
13 | obj-$(CONFIG_ARCH_MXC_IOMUX_V3) += iomux-v3.o | 13 | obj-$(CONFIG_ARCH_MXC_IOMUX_V3) += iomux-v3.o |
14 | obj-$(CONFIG_IRAM_ALLOC) += iram_alloc.o | 14 | obj-$(CONFIG_IRAM_ALLOC) += iram_alloc.o |
15 | obj-$(CONFIG_MXC_PWM) += pwm.o | 15 | obj-$(CONFIG_MXC_PWM) += pwm.o |
16 | obj-$(CONFIG_USB_EHCI_MXC) += ehci.o | ||
17 | obj-$(CONFIG_MXC_ULPI) += ulpi.o | 16 | obj-$(CONFIG_MXC_ULPI) += ulpi.o |
18 | obj-$(CONFIG_MXC_USE_EPIT) += epit.o | 17 | obj-$(CONFIG_MXC_USE_EPIT) += epit.o |
19 | obj-$(CONFIG_ARCH_MXC_AUDMUX_V1) += audmux-v1.o | 18 | obj-$(CONFIG_ARCH_MXC_AUDMUX_V1) += audmux-v1.o |
diff --git a/arch/arm/plat-mxc/ehci.c b/arch/arm/plat-mxc/ehci.c deleted file mode 100644 index 06fb3a4d7c27..000000000000 --- a/arch/arm/plat-mxc/ehci.c +++ /dev/null | |||
@@ -1,46 +0,0 @@ | |||
1 | /* | ||
2 | * Copyright (c) 2009 Daniel Mack <daniel@caiaq.de> | ||
3 | * Copyright (C) 2010 Freescale Semiconductor, Inc. | ||
4 | * | ||
5 | * This program is free software; you can redistribute it and/or modify it | ||
6 | * under the terms of the GNU General Public License as published by the | ||
7 | * Free Software Foundation; either version 2 of the License, or (at your | ||
8 | * option) any later version. | ||
9 | * | ||
10 | * This program is distributed in the hope that it will be useful, but | ||
11 | * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY | ||
12 | * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | ||
13 | * for more details. | ||
14 | */ | ||
15 | |||
16 | #include <linux/platform_device.h> | ||
17 | |||
18 | #include <mach/hardware.h> | ||
19 | #include <mach/mxc_ehci.h> | ||
20 | |||
21 | int mxc_initialize_usb_hw(int port, unsigned int flags) | ||
22 | { | ||
23 | #if defined(CONFIG_SOC_IMX25) | ||
24 | if (cpu_is_mx25()) | ||
25 | return mx25_initialize_usb_hw(port, flags); | ||
26 | #endif /* if defined(CONFIG_SOC_IMX25) */ | ||
27 | #if defined(CONFIG_ARCH_MX3) | ||
28 | if (cpu_is_mx31()) | ||
29 | return mx31_initialize_usb_hw(port, flags); | ||
30 | if (cpu_is_mx35()) | ||
31 | return mx35_initialize_usb_hw(port, flags); | ||
32 | #endif /* CONFIG_ARCH_MX3 */ | ||
33 | #ifdef CONFIG_MACH_MX27 | ||
34 | if (cpu_is_mx27()) | ||
35 | return mx27_initialize_usb_hw(port, flags); | ||
36 | #endif /* CONFIG_MACH_MX27 */ | ||
37 | #ifdef CONFIG_SOC_IMX51 | ||
38 | if (cpu_is_mx51()) | ||
39 | return mx51_initialize_usb_hw(port, flags); | ||
40 | #endif | ||
41 | printk(KERN_WARNING | ||
42 | "%s() unable to setup USBCONTROL for this CPU\n", __func__); | ||
43 | return -EINVAL; | ||
44 | } | ||
45 | EXPORT_SYMBOL(mxc_initialize_usb_hw); | ||
46 | |||
diff --git a/arch/arm/plat-mxc/include/mach/mxc_ehci.h b/arch/arm/plat-mxc/include/mach/mxc_ehci.h index 7e555a1f4a4a..2c159dc2398b 100644 --- a/arch/arm/plat-mxc/include/mach/mxc_ehci.h +++ b/arch/arm/plat-mxc/include/mach/mxc_ehci.h | |||
@@ -44,12 +44,9 @@ struct mxc_usbh_platform_data { | |||
44 | int (*exit)(struct platform_device *pdev); | 44 | int (*exit)(struct platform_device *pdev); |
45 | 45 | ||
46 | unsigned int portsc; | 46 | unsigned int portsc; |
47 | unsigned int flags; | ||
48 | struct otg_transceiver *otg; | 47 | struct otg_transceiver *otg; |
49 | }; | 48 | }; |
50 | 49 | ||
51 | int mxc_initialize_usb_hw(int port, unsigned int flags); | ||
52 | |||
53 | int mx51_initialize_usb_hw(int port, unsigned int flags); | 50 | int mx51_initialize_usb_hw(int port, unsigned int flags); |
54 | int mx25_initialize_usb_hw(int port, unsigned int flags); | 51 | int mx25_initialize_usb_hw(int port, unsigned int flags); |
55 | int mx31_initialize_usb_hw(int port, unsigned int flags); | 52 | int mx31_initialize_usb_hw(int port, unsigned int flags); |