diff options
author | Uwe Kleine-König <u.kleine-koenig@pengutronix.de> | 2010-11-10 15:27:55 -0500 |
---|---|---|
committer | Uwe Kleine-König <u.kleine-koenig@pengutronix.de> | 2010-11-17 04:01:36 -0500 |
commit | 2c20b9f19add2248dc867f1f78dcef1eb0944543 (patch) | |
tree | c7b6861e16bc9fb9d4d25cb4c5730e4509af5033 /arch/arm/mach-mx25/mach-cpuimx25.c | |
parent | e9f0bafb4f3d32d0bc0ea7e946d667a68bae59ce (diff) |
ARM: mx25: dynamically allocate mxc-ehci devices
According to the reference manual of the i.MX25 the host controller uses an
offset of 0x200 not 0x400 as was specified in the resources for mxc_usbh2.
Needs-Testing: yes
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Diffstat (limited to 'arch/arm/mach-mx25/mach-cpuimx25.c')
-rw-r--r-- | arch/arm/mach-mx25/mach-cpuimx25.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/arch/arm/mach-mx25/mach-cpuimx25.c b/arch/arm/mach-mx25/mach-cpuimx25.c index f6f9ad60c25e..0ee0fe73952d 100644 --- a/arch/arm/mach-mx25/mach-cpuimx25.c +++ b/arch/arm/mach-mx25/mach-cpuimx25.c | |||
@@ -39,7 +39,6 @@ | |||
39 | #include <mach/mx25.h> | 39 | #include <mach/mx25.h> |
40 | #include <mach/mxc_nand.h> | 40 | #include <mach/mxc_nand.h> |
41 | #include <mach/imxfb.h> | 41 | #include <mach/imxfb.h> |
42 | #include <mach/mxc_ehci.h> | ||
43 | #include <mach/iomux-mx25.h> | 42 | #include <mach/iomux-mx25.h> |
44 | 43 | ||
45 | #include "devices-imx25.h" | 44 | #include "devices-imx25.h" |
@@ -87,12 +86,12 @@ static struct i2c_board_info eukrea_cpuimx25_i2c_devices[] = { | |||
87 | }, | 86 | }, |
88 | }; | 87 | }; |
89 | 88 | ||
90 | static struct mxc_usbh_platform_data otg_pdata = { | 89 | static const struct mxc_usbh_platform_data otg_pdata __initconst = { |
91 | .portsc = MXC_EHCI_MODE_UTMI, | 90 | .portsc = MXC_EHCI_MODE_UTMI, |
92 | .flags = MXC_EHCI_INTERFACE_DIFF_UNI, | 91 | .flags = MXC_EHCI_INTERFACE_DIFF_UNI, |
93 | }; | 92 | }; |
94 | 93 | ||
95 | static struct mxc_usbh_platform_data usbh2_pdata = { | 94 | static const struct mxc_usbh_platform_data usbh2_pdata __initconst = { |
96 | .portsc = MXC_EHCI_MODE_SERIAL, | 95 | .portsc = MXC_EHCI_MODE_SERIAL, |
97 | .flags = MXC_EHCI_INTERFACE_SINGLE_UNI | MXC_EHCI_INTERNAL_PHY | | 96 | .flags = MXC_EHCI_INTERFACE_SINGLE_UNI | MXC_EHCI_INTERNAL_PHY | |
98 | MXC_EHCI_IPPUE_DOWN, | 97 | MXC_EHCI_IPPUE_DOWN, |
@@ -134,11 +133,11 @@ static void __init eukrea_cpuimx25_init(void) | |||
134 | imx25_add_imx_i2c0(&eukrea_cpuimx25_i2c0_data); | 133 | imx25_add_imx_i2c0(&eukrea_cpuimx25_i2c0_data); |
135 | 134 | ||
136 | if (otg_mode_host) | 135 | if (otg_mode_host) |
137 | mxc_register_device(&mxc_otg, &otg_pdata); | 136 | imx25_add_mxc_ehci_otg(&otg_pdata); |
138 | else | 137 | else |
139 | mxc_register_device(&otg_udc_device, &otg_device_pdata); | 138 | mxc_register_device(&otg_udc_device, &otg_device_pdata); |
140 | 139 | ||
141 | mxc_register_device(&mxc_usbh2, &usbh2_pdata); | 140 | imx25_add_mxc_ehci_hs(&usbh2_pdata); |
142 | 141 | ||
143 | #ifdef CONFIG_MACH_EUKREA_MBIMXSD25_BASEBOARD | 142 | #ifdef CONFIG_MACH_EUKREA_MBIMXSD25_BASEBOARD |
144 | eukrea_mbimxsd25_baseboard_init(); | 143 | eukrea_mbimxsd25_baseboard_init(); |