Merge branch 'for-rmk' of git://git.pengutronix.de/git/imx/linux-2.6 into devel-stable
[linux-drm-fsl-dcu.git] / arch / arm / mach-mx3 / mach-mx31lilly.c
index 84942cf41b63c13f493e5e2789e1b599029d7150..8f66f65e80e2079a3dae7e70ddb2a530960d8f98 100644 (file)
@@ -111,6 +111,8 @@ static struct platform_device physmap_flash_device = {
 
 /* USB */
 
+#if defined(CONFIG_USB_ULPI)
+
 #define USB_PAD_CFG (PAD_CTL_DRV_MAX | PAD_CTL_SRE_FAST | PAD_CTL_HYS_CMOS | \
                        PAD_CTL_ODE_CMOS | PAD_CTL_100K_PU)
 
@@ -240,10 +242,20 @@ static struct mxc_usbh_platform_data usbh2_pdata = {
        .flags  = MXC_EHCI_POWER_PINS_ENABLED,
 };
 
-static struct platform_device *devices[] __initdata = {
-       &smsc91x_device,
-       &physmap_flash_device,
-};
+static void lilly1131_usb_init(void)
+{
+       usbotg_pdata.otg = otg_ulpi_create(&mxc_ulpi_access_ops,
+                               USB_OTG_DRV_VBUS | USB_OTG_DRV_VBUS_EXT);
+       usbh2_pdata.otg = otg_ulpi_create(&mxc_ulpi_access_ops,
+                               USB_OTG_DRV_VBUS | USB_OTG_DRV_VBUS_EXT);
+
+       mxc_register_device(&mxc_usbh1, &usbh1_pdata);
+       mxc_register_device(&mxc_usbh2, &usbh2_pdata);
+}
+
+#else
+static inline void lilly1131_usb_init(void) {}
+#endif /* CONFIG_USB_ULPI */
 
 /* SPI */
 
@@ -276,6 +288,11 @@ static struct spi_board_info mc13783_dev __initdata = {
        .irq            = IOMUX_TO_IRQ(MX31_PIN_GPIO1_3),
 };
 
+static struct platform_device *devices[] __initdata = {
+       &smsc91x_device,
+       &physmap_flash_device,
+};
+
 static int mx31lilly_baseboard;
 core_param(mx31lilly_baseboard, mx31lilly_baseboard, int, 0444);
 
@@ -318,13 +335,7 @@ static void __init mx31lilly_board_init(void)
        platform_add_devices(devices, ARRAY_SIZE(devices));
 
        /* USB */
-       usbotg_pdata.otg = otg_ulpi_create(&mxc_ulpi_access_ops,
-                               USB_OTG_DRV_VBUS | USB_OTG_DRV_VBUS_EXT);
-       usbh2_pdata.otg = otg_ulpi_create(&mxc_ulpi_access_ops,
-                               USB_OTG_DRV_VBUS | USB_OTG_DRV_VBUS_EXT);
-
-       mxc_register_device(&mxc_usbh1, &usbh1_pdata);
-       mxc_register_device(&mxc_usbh2, &usbh2_pdata);
+       lilly1131_usb_init();
 }
 
 static void __init mx31lilly_timer_init(void)