[U-Boot] [PATCH 1/5] imx:mx6sxsabresd add usb support

Li Ye-B37916 b37916 at freescale.com
Sat Nov 1 08:45:59 CET 2014


Hi Peng,

On 11/1/2014 10:19 AM, Peng Fan wrote:
> Add usb support for mx6sxsabresd board.
>
> Signed-off-by: Peng Fan <Peng.Fan at freescale.com>
> Signed-off-by: Ye.Li <B37916 at freescale.com>
> ---
>  board/freescale/mx6sxsabresd/mx6sxsabresd.c | 29 +++++++++++++++++++++++++++++
>  include/configs/mx6sxsabresd.h              | 14 ++++++++++++++
>  2 files changed, 43 insertions(+)
>
> diff --git a/board/freescale/mx6sxsabresd/mx6sxsabresd.c b/board/freescale/mx6sxsabresd/mx6sxsabresd.c
> index 256ea29..016b8e8 100644
> --- a/board/freescale/mx6sxsabresd/mx6sxsabresd.c
> +++ b/board/freescale/mx6sxsabresd/mx6sxsabresd.c
> @@ -296,3 +296,32 @@ int checkboard(void)
>  
>  	return 0;
>  }
> +
> +#ifdef CONFIG_USB_EHCI_MX6
> +iomux_v3_cfg_t const usb_otg1_pads[] = {
> +	MX6_PAD_GPIO1_IO09__USB_OTG1_PWR | MUX_PAD_CTRL(NO_PAD_CTRL),
> +	MX6_PAD_GPIO1_IO10__ANATOP_OTG1_ID | MUX_PAD_CTRL(NO_PAD_CTRL)
> +};
> +
> +iomux_v3_cfg_t const usb_otg2_pads[] = {
> +	MX6_PAD_GPIO1_IO12__USB_OTG2_PWR | MUX_PAD_CTRL(NO_PAD_CTRL),
> +};
> +
> +int board_ehci_hcd_init(int port)
> +{
> +	switch (port) {
> +	case 0:
> +		imx_iomux_v3_setup_multiple_pads(usb_otg1_pads,
> +						 ARRAY_SIZE(usb_otg1_pads));
> +		break;
> +	case 1:
> +		imx_iomux_v3_setup_multiple_pads(usb_otg2_pads,
> +						 ARRAY_SIZE(usb_otg2_pads));
> +		break;
> +	default:
> +		printf("MXC USB port %d not yet supported\n", port);
> +		return 1;
> +	}
> +	return 0;
> +}
> +#endif
> diff --git a/include/configs/mx6sxsabresd.h b/include/configs/mx6sxsabresd.h
> index e02ea18..8edf187 100644
> --- a/include/configs/mx6sxsabresd.h
> +++ b/include/configs/mx6sxsabresd.h
> @@ -198,6 +198,20 @@
>  #define CONFIG_PHYLIB
>  #define CONFIG_PHY_ATHEROS
>  
> +
> +#define CONFIG_CMD_USB
> +#ifdef CONFIG_CMD_USB
> +#define CONFIG_USB_EHCI
> +#define CONFIG_USB_EHCI_MX6
> +#define CONFIG_USB_STORAGE
> +#define CONFIG_EHCI_HCD_INIT_AFTER_RESET
> +#define CONFIG_USB_HOST_ETHER
> +#define CONFIG_USB_ETHER_ASIX
> +#define CONFIG_MXC_USB_PORTSC  (PORT_PTS_UTMI | PORT_PTS_PTW)
> +#define CONFIG_MXC_USB_FLAGS   0
> +#define CONFIG_USB_MAX_CONTROLLER_COUNT 2
> +#endif
> +
>  #define CONFIG_CMD_PCI
>  #ifdef CONFIG_CMD_PCI
>  #define CONFIG_PCI
The OTG power polarity setting in ehci-imx6 driver is opposed with the board design. So without changing the polarity setting, we have to use GPIO to control the power switch.

Best regards,
Ye Li


More information about the U-Boot mailing list