ARM: mx3/mx35_3ds: add usb host2 support

we still have to toggle two pins on the mc9sdz60:

/* MUX3_CTR to be low for USB Host2 DP&DM */
pmic_gpio_set_bit_val(MCU_GPIO_REG_GPIO_CONTROL_2, 6, 0);

/* CAN_PWDN to be high for USB Host2 Power&OC */
pmic_gpio_set_bit_val(MCU_GPIO_REG_GPIO_CONTROL_2, 1, 1);

until we've a proper driver for the mx9sdz60 in linux we'll do this in
barebox (a.k.a. u-boot-v2)

Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Michael Grzeschik <m.grzeschik@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
This commit is contained in:
Marc Kleine-Budde 2010-08-18 18:26:42 +02:00 committed by Uwe Kleine-König
parent 79a11b0ba4
commit ab3d8b5859

View File

@ -38,6 +38,7 @@
#include <mach/hardware.h> #include <mach/hardware.h>
#include <mach/common.h> #include <mach/common.h>
#include <mach/iomux-mx35.h> #include <mach/iomux-mx35.h>
#include <mach/mxc_ehci.h>
#include "devices-imx35.h" #include "devices-imx35.h"
#include "devices.h" #include "devices.h"
@ -105,6 +106,9 @@ static struct pad_desc mx35pdk_pads[] = {
/* USBOTG */ /* USBOTG */
MX35_PAD_USBOTG_PWR__USB_TOP_USBOTG_PWR, MX35_PAD_USBOTG_PWR__USB_TOP_USBOTG_PWR,
MX35_PAD_USBOTG_OC__USB_TOP_USBOTG_OC, MX35_PAD_USBOTG_OC__USB_TOP_USBOTG_OC,
/* USBH1 */
MX35_PAD_I2C2_CLK__USB_TOP_USBH2_PWR,
MX35_PAD_I2C2_DAT__USB_TOP_USBH2_OC,
}; };
/* OTG config */ /* OTG config */
@ -113,6 +117,13 @@ static struct fsl_usb2_platform_data usb_otg_pdata = {
.phy_mode = FSL_USB2_PHY_UTMI_WIDE, .phy_mode = FSL_USB2_PHY_UTMI_WIDE,
}; };
/* USB HOST config */
static struct mxc_usbh_platform_data usb_host_pdata = {
.portsc = MXC_EHCI_MODE_SERIAL,
.flags = MXC_EHCI_INTERFACE_SINGLE_UNI |
MXC_EHCI_INTERNAL_PHY,
};
/* /*
* Board specific initialization. * Board specific initialization.
*/ */
@ -126,6 +137,8 @@ static void __init mxc_board_init(void)
mxc_register_device(&mxc_otg_udc_device, &usb_otg_pdata); mxc_register_device(&mxc_otg_udc_device, &usb_otg_pdata);
mxc_register_device(&mxc_usbh1, &usb_host_pdata);
imx35_add_mxc_nand(&mx35pdk_nand_board_info); imx35_add_mxc_nand(&mx35pdk_nand_board_info);
} }