aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-mx25/mach-cpuimx25.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-mx25/mach-cpuimx25.c')
-rw-r--r--arch/arm/mach-mx25/mach-cpuimx25.c21
1 files changed, 6 insertions, 15 deletions
diff --git a/arch/arm/mach-mx25/mach-cpuimx25.c b/arch/arm/mach-mx25/mach-cpuimx25.c
index e064bb3d6919..f6f9ad60c25e 100644
--- a/arch/arm/mach-mx25/mach-cpuimx25.c
+++ b/arch/arm/mach-mx25/mach-cpuimx25.c
@@ -23,7 +23,6 @@
23#include <linux/clk.h> 23#include <linux/clk.h>
24#include <linux/irq.h> 24#include <linux/irq.h>
25#include <linux/gpio.h> 25#include <linux/gpio.h>
26#include <linux/fec.h>
27#include <linux/platform_device.h> 26#include <linux/platform_device.h>
28#include <linux/usb/otg.h> 27#include <linux/usb/otg.h>
29#include <linux/usb/ulpi.h> 28#include <linux/usb/ulpi.h>
@@ -41,7 +40,6 @@
41#include <mach/mxc_nand.h> 40#include <mach/mxc_nand.h>
42#include <mach/imxfb.h> 41#include <mach/imxfb.h>
43#include <mach/mxc_ehci.h> 42#include <mach/mxc_ehci.h>
44#include <mach/ulpi.h>
45#include <mach/iomux-mx25.h> 43#include <mach/iomux-mx25.h>
46 44
47#include "devices-imx25.h" 45#include "devices-imx25.h"
@@ -67,7 +65,7 @@ static struct pad_desc eukrea_cpuimx25_pads[] = {
67 MX25_PAD_I2C1_DAT__I2C1_DAT, 65 MX25_PAD_I2C1_DAT__I2C1_DAT,
68}; 66};
69 67
70static struct fec_platform_data mx25_fec_pdata = { 68static const struct fec_platform_data mx25_fec_pdata __initconst = {
71 .phy = PHY_INTERFACE_MODE_RMII, 69 .phy = PHY_INTERFACE_MODE_RMII,
72}; 70};
73 71
@@ -129,24 +127,19 @@ static void __init eukrea_cpuimx25_init(void)
129 imx25_add_imx_uart0(&uart_pdata); 127 imx25_add_imx_uart0(&uart_pdata);
130 imx25_add_mxc_nand(&eukrea_cpuimx25_nand_board_info); 128 imx25_add_mxc_nand(&eukrea_cpuimx25_nand_board_info);
131 mxc_register_device(&mx25_rtc_device, NULL); 129 mxc_register_device(&mx25_rtc_device, NULL);
132 mxc_register_device(&mx25_fec_device, &mx25_fec_pdata); 130 imx25_add_fec(&mx25_fec_pdata);
133 131
134 i2c_register_board_info(0, eukrea_cpuimx25_i2c_devices, 132 i2c_register_board_info(0, eukrea_cpuimx25_i2c_devices,
135 ARRAY_SIZE(eukrea_cpuimx25_i2c_devices)); 133 ARRAY_SIZE(eukrea_cpuimx25_i2c_devices));
136 imx25_add_imx_i2c0(&eukrea_cpuimx25_i2c0_data); 134 imx25_add_imx_i2c0(&eukrea_cpuimx25_i2c0_data);
137 135
138#if defined(CONFIG_USB_ULPI) 136 if (otg_mode_host)
139 if (otg_mode_host) {
140 otg_pdata.otg = otg_ulpi_create(&mxc_ulpi_access_ops,
141 ULPI_OTG_DRVVBUS | ULPI_OTG_DRVVBUS_EXT);
142
143 mxc_register_device(&mxc_otg, &otg_pdata); 137 mxc_register_device(&mxc_otg, &otg_pdata);
144 } 138 else
145 mxc_register_device(&mxc_usbh2, &usbh2_pdata);
146#endif
147 if (!otg_mode_host)
148 mxc_register_device(&otg_udc_device, &otg_device_pdata); 139 mxc_register_device(&otg_udc_device, &otg_device_pdata);
149 140
141 mxc_register_device(&mxc_usbh2, &usbh2_pdata);
142
150#ifdef CONFIG_MACH_EUKREA_MBIMXSD25_BASEBOARD 143#ifdef CONFIG_MACH_EUKREA_MBIMXSD25_BASEBOARD
151 eukrea_mbimxsd25_baseboard_init(); 144 eukrea_mbimxsd25_baseboard_init();
152#endif 145#endif
@@ -163,8 +156,6 @@ static struct sys_timer eukrea_cpuimx25_timer = {
163 156
164MACHINE_START(EUKREA_CPUIMX25, "Eukrea CPUIMX25") 157MACHINE_START(EUKREA_CPUIMX25, "Eukrea CPUIMX25")
165 /* Maintainer: Eukrea Electromatique */ 158 /* Maintainer: Eukrea Electromatique */
166 .phys_io = MX25_AIPS1_BASE_ADDR,
167 .io_pg_offst = ((MX25_AIPS1_BASE_ADDR_VIRT) >> 18) & 0xfffc,
168 .boot_params = MX25_PHYS_OFFSET + 0x100, 159 .boot_params = MX25_PHYS_OFFSET + 0x100,
169 .map_io = mx25_map_io, 160 .map_io = mx25_map_io,
170 .init_irq = mx25_init_irq, 161 .init_irq = mx25_init_irq,