[U-Boot] [PATCH 3/3] imx: mx6sllevk: add usb support
Jagan Teki
jagan at openedev.com
Wed Dec 21 15:01:36 CET 2016
On Wed, Dec 21, 2016 at 9:14 AM, Peng Fan <peng.fan at nxp.com> wrote:
> Add usb support for mx6sllevk board.
>
> Signed-off-by: Peng Fan <peng.fan at nxp.com>
> Cc: Stefano Babic <sbabic at denx.de>
> ---
> board/freescale/mx6sllevk/mx6sllevk.c | 18 ++++++++++++++++++
> configs/mx6sllevk_defconfig | 5 +++++
> configs/mx6sllevk_plugin_defconfig | 5 +++++
> include/configs/mx6sllevk.h | 9 +++++++++
> 4 files changed, 37 insertions(+)
>
> diff --git a/board/freescale/mx6sllevk/mx6sllevk.c b/board/freescale/mx6sllevk/mx6sllevk.c
> index 74a27a3..e6679fd 100644
> --- a/board/freescale/mx6sllevk/mx6sllevk.c
> +++ b/board/freescale/mx6sllevk/mx6sllevk.c
> @@ -129,3 +129,21 @@ int mmc_map_to_kernel_blk(int devno)
> {
> return devno;
> }
> +
> +#define USB_OTHERREGS_OFFSET 0x800
> +#define UCTRL_PWR_POL (1 << 9)
> +
> +int board_ehci_hcd_init(int port)
Can't we do this from driver itself, .probe or somewhere?
> +{
> + u32 *usbnc_usb_ctrl;
> +
> + if (port > 1)
> + return -EINVAL;
> +
> + usbnc_usb_ctrl = (u32 *)(USB_BASE_ADDR + USB_OTHERREGS_OFFSET +
> + port * 4);
> +
> + /* Set Power polarity */
> + setbits_le32(usbnc_usb_ctrl, UCTRL_PWR_POL);
> + return 0;
> +}
> diff --git a/configs/mx6sllevk_defconfig b/configs/mx6sllevk_defconfig
> index 8ae049e..267cdc6 100644
> --- a/configs/mx6sllevk_defconfig
> +++ b/configs/mx6sllevk_defconfig
> @@ -10,6 +10,7 @@ CONFIG_CMD_BOOTZ=y
> CONFIG_CMD_MEMTEST=y
> CONFIG_CMD_MMC=y
> CONFIG_CMD_I2C=y
> +CONFIG_CMD_USB=y
> CONFIG_CMD_GPIO=y
> CONFIG_CMD_DHCP=y
> CONFIG_CMD_PING=y
> @@ -34,3 +35,7 @@ CONFIG_DM_REGULATOR=y
> CONFIG_DM_REGULATOR_PFUZE100=y
> CONFIG_DM_REGULATOR_FIXED=y
> CONFIG_DM_REGULATOR_GPIO=y
> +CONFIG_USB=y
> +CONFIG_DM_USB=y
> +CONFIG_USB_EHCI_HCD=y
> +CONFIG_USB_STORAGE=y
> diff --git a/configs/mx6sllevk_plugin_defconfig b/configs/mx6sllevk_plugin_defconfig
> index e6be979..63d5bbc 100644
> --- a/configs/mx6sllevk_plugin_defconfig
> +++ b/configs/mx6sllevk_plugin_defconfig
> @@ -11,6 +11,7 @@ CONFIG_CMD_BOOTZ=y
> CONFIG_CMD_MEMTEST=y
> CONFIG_CMD_MMC=y
> CONFIG_CMD_I2C=y
> +CONFIG_CMD_USB=y
> CONFIG_CMD_GPIO=y
> CONFIG_CMD_DHCP=y
> CONFIG_CMD_PING=y
> @@ -35,3 +36,7 @@ CONFIG_DM_REGULATOR=y
> CONFIG_DM_REGULATOR_PFUZE100=y
> CONFIG_DM_REGULATOR_FIXED=y
> CONFIG_DM_REGULATOR_GPIO=y
> +CONFIG_USB=y
> +CONFIG_DM_USB=y
> +CONFIG_USB_EHCI_HCD=y
> +CONFIG_USB_STORAGE=y
> diff --git a/include/configs/mx6sllevk.h b/include/configs/mx6sllevk.h
> index b9f25cf..3f665a3 100644
> --- a/include/configs/mx6sllevk.h
> +++ b/include/configs/mx6sllevk.h
> @@ -149,4 +149,13 @@
>
> #define CONFIG_IOMUX_LPSR
>
> +/* USB Configs */
> +#ifdef CONFIG_CMD_USB
> +#define CONFIG_USB_HOST_ETHER
> +#define CONFIG_USB_ETHER_ASIX
> +#define CONFIG_USB_ETHER_RTL8152
> +#define CONFIG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW)
> +#define CONFIG_USB_MAX_CONTROLLER_COUNT 2
I think this is even should managed from driver isn't it?
thanks!
--
Jagan Teki
Free Software Engineer | www.openedev.com
U-Boot, Linux | Upstream Maintainer
Hyderabad, India.
More information about the U-Boot
mailing list