From a88aa22b8cae4b407eb08eb5faaf7ec1d08155ec Mon Sep 17 00:00:00 2001 From: Sascha Hauer Date: Wed, 3 Feb 2010 17:13:41 +0100 Subject: [PATCH] --- yaml --- r: 187575 b: refs/heads/master c: 773f206b2f3745bde8ee17ec0f884c19db3917a5 h: refs/heads/master i: 187573: 3220d533ef05ac15d235b0e6755591078bdd4c4f 187571: cf1b9b419cef75ed47f7dcc4317d4f498f2a6013 187567: eece698c1f98ed6aff8d437779dfaa99c680384c v: v3 --- [refs] | 2 +- trunk/arch/arm/mach-mx2/Kconfig | 1 + trunk/arch/arm/mach-mx2/mach-pcm038.c | 22 ++++++++++++++++++++++ 3 files changed, 24 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 1d395e0ba900..bb3a8c681b25 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: eee7c497d250bbb2bfd0fdc2b41b9b6ff02148a2 +refs/heads/master: 773f206b2f3745bde8ee17ec0f884c19db3917a5 diff --git a/trunk/arch/arm/mach-mx2/Kconfig b/trunk/arch/arm/mach-mx2/Kconfig index ca1278d5c845..742fd4e6dcb9 100644 --- a/trunk/arch/arm/mach-mx2/Kconfig +++ b/trunk/arch/arm/mach-mx2/Kconfig @@ -37,6 +37,7 @@ config MACH_MX27ADS config MACH_PCM038 bool "Phytec phyCORE-i.MX27 CPU module (pcm038)" depends on MACH_MX27 + select MXC_ULPI if USB_ULPI help Include support for phyCORE-i.MX27 (aka pcm038) platform. This includes specific configurations for the module and its peripherals. diff --git a/trunk/arch/arm/mach-mx2/mach-pcm038.c b/trunk/arch/arm/mach-mx2/mach-pcm038.c index e055d9dd6101..5a0169cff20f 100644 --- a/trunk/arch/arm/mach-mx2/mach-pcm038.c +++ b/trunk/arch/arm/mach-mx2/mach-pcm038.c @@ -40,6 +40,8 @@ #include #include #include +#include +#include #include "devices.h" @@ -96,6 +98,19 @@ static int pcm038_pins[] = { PC17_PF_SSI4_RXD, PC18_PF_SSI4_TXD, PC19_PF_SSI4_CLK, + /* USB host */ + PA0_PF_USBH2_CLK, + PA1_PF_USBH2_DIR, + PA2_PF_USBH2_DATA7, + PA3_PF_USBH2_NXT, + PA4_PF_USBH2_STP, + PD19_AF_USBH2_DATA4, + PD20_AF_USBH2_DATA3, + PD21_AF_USBH2_DATA6, + PD22_AF_USBH2_DATA0, + PD23_AF_USBH2_DATA2, + PD24_AF_USBH2_DATA1, + PD26_AF_USBH2_DATA5, }; /* @@ -277,6 +292,11 @@ static struct spi_board_info pcm038_spi_board_info[] __initdata = { } }; +static struct mxc_usbh_platform_data usbh2_pdata = { + .portsc = MXC_EHCI_MODE_ULPI, + .flags = MXC_EHCI_POWER_PINS_ENABLED | MXC_EHCI_INTERFACE_DIFF_UNI, +}; + static void __init pcm038_init(void) { mxc_gpio_setup_multiple_pins(pcm038_pins, ARRAY_SIZE(pcm038_pins), @@ -309,6 +329,8 @@ static void __init pcm038_init(void) spi_register_board_info(pcm038_spi_board_info, ARRAY_SIZE(pcm038_spi_board_info)); + mxc_register_device(&mxc_usbh2, &usbh2_pdata); + platform_add_devices(platform_devices, ARRAY_SIZE(platform_devices)); #ifdef CONFIG_MACH_PCM970_BASEBOARD