aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-mx3/mach-mx31lilly.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-mx3/mach-mx31lilly.c')
-rw-r--r--arch/arm/mach-mx3/mach-mx31lilly.c33
1 files changed, 22 insertions, 11 deletions
diff --git a/arch/arm/mach-mx3/mach-mx31lilly.c b/arch/arm/mach-mx3/mach-mx31lilly.c
index d3d5877c750e..b2c7f512070f 100644
--- a/arch/arm/mach-mx3/mach-mx31lilly.c
+++ b/arch/arm/mach-mx3/mach-mx31lilly.c
@@ -115,6 +115,8 @@ static struct platform_device physmap_flash_device = {
115 115
116/* USB */ 116/* USB */
117 117
118#if defined(CONFIG_USB_ULPI)
119
118#define USB_PAD_CFG (PAD_CTL_DRV_MAX | PAD_CTL_SRE_FAST | PAD_CTL_HYS_CMOS | \ 120#define USB_PAD_CFG (PAD_CTL_DRV_MAX | PAD_CTL_SRE_FAST | PAD_CTL_HYS_CMOS | \
119 PAD_CTL_ODE_CMOS | PAD_CTL_100K_PU) 121 PAD_CTL_ODE_CMOS | PAD_CTL_100K_PU)
120 122
@@ -244,10 +246,20 @@ static struct mxc_usbh_platform_data usbh2_pdata = {
244 .flags = MXC_EHCI_POWER_PINS_ENABLED, 246 .flags = MXC_EHCI_POWER_PINS_ENABLED,
245}; 247};
246 248
247static struct platform_device *devices[] __initdata = { 249static void lilly1131_usb_init(void)
248 &smsc91x_device, 250{
249 &physmap_flash_device, 251 usbotg_pdata.otg = otg_ulpi_create(&mxc_ulpi_access_ops,
250}; 252 USB_OTG_DRV_VBUS | USB_OTG_DRV_VBUS_EXT);
253 usbh2_pdata.otg = otg_ulpi_create(&mxc_ulpi_access_ops,
254 USB_OTG_DRV_VBUS | USB_OTG_DRV_VBUS_EXT);
255
256 mxc_register_device(&mxc_usbh1, &usbh1_pdata);
257 mxc_register_device(&mxc_usbh2, &usbh2_pdata);
258}
259
260#else
261static inline void lilly1131_usb_init(void) {}
262#endif /* CONFIG_USB_ULPI */
251 263
252/* SPI */ 264/* SPI */
253 265
@@ -279,6 +291,11 @@ static struct spi_board_info mc13783_dev __initdata = {
279 .platform_data = &mc13783_pdata, 291 .platform_data = &mc13783_pdata,
280}; 292};
281 293
294static struct platform_device *devices[] __initdata = {
295 &smsc91x_device,
296 &physmap_flash_device,
297};
298
282static int mx31lilly_baseboard; 299static int mx31lilly_baseboard;
283core_param(mx31lilly_baseboard, mx31lilly_baseboard, int, 0444); 300core_param(mx31lilly_baseboard, mx31lilly_baseboard, int, 0444);
284 301
@@ -321,13 +338,7 @@ static void __init mx31lilly_board_init(void)
321 platform_add_devices(devices, ARRAY_SIZE(devices)); 338 platform_add_devices(devices, ARRAY_SIZE(devices));
322 339
323 /* USB */ 340 /* USB */
324 usbotg_pdata.otg = otg_ulpi_create(&mxc_ulpi_access_ops, 341 lilly1131_usb_init();
325 USB_OTG_DRV_VBUS | USB_OTG_DRV_VBUS_EXT);
326 usbh2_pdata.otg = otg_ulpi_create(&mxc_ulpi_access_ops,
327 USB_OTG_DRV_VBUS | USB_OTG_DRV_VBUS_EXT);
328
329 mxc_register_device(&mxc_usbh1, &usbh1_pdata);
330 mxc_register_device(&mxc_usbh2, &usbh2_pdata);
331} 342}
332 343
333static void __init mx31lilly_timer_init(void) 344static void __init mx31lilly_timer_init(void)