aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-mx25/mach-cpuimx25.c
diff options
context:
space:
mode:
authorUwe Kleine-König <u.kleine-koenig@pengutronix.de>2010-11-10 15:27:55 -0500
committerUwe Kleine-König <u.kleine-koenig@pengutronix.de>2010-11-17 04:01:36 -0500
commit2c20b9f19add2248dc867f1f78dcef1eb0944543 (patch)
treec7b6861e16bc9fb9d4d25cb4c5730e4509af5033 /arch/arm/mach-mx25/mach-cpuimx25.c
parente9f0bafb4f3d32d0bc0ea7e946d667a68bae59ce (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.c9
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
90static struct mxc_usbh_platform_data otg_pdata = { 89static 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
95static struct mxc_usbh_platform_data usbh2_pdata = { 94static 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();