[U-Boot] [PATCH 1/1] colibri_imx7: migrate usb to driver model
Marcel Ziswiler
marcel.ziswiler at toradex.com
Fri Apr 12 11:26:28 UTC 2019
Hi Igor
Just some minor nitpicks below.
On Thu, 2019-04-11 at 16:55 +0200, Igor Opaniuk wrote:
> Migrate USB to Driver Model (CONFIG_DM_USB=y).
>
> Signed-off-by: Igor Opaniuk <igor.opaniuk at toradex.com>
Tested-by: Marcel Ziswiler <marcel.ziswiler at toradex.com>
> ---
> arch/arm/dts/imx7-colibri-emmc.dts | 37 +++++++++++++++++++++++++
> arch/arm/dts/imx7-colibri-rawnand.dts | 40
> +++++++++++++++++++++++++++
> configs/colibri_imx7_defconfig | 1 +
> configs/colibri_imx7_emmc_defconfig | 1 +
> 4 files changed, 79 insertions(+)
>
> diff --git a/arch/arm/dts/imx7-colibri-emmc.dts b/arch/arm/dts/imx7-
> colibri-emmc.dts
> index efd600091d..a9f272a65e 100644
> --- a/arch/arm/dts/imx7-colibri-emmc.dts
> +++ b/arch/arm/dts/imx7-colibri-emmc.dts
> @@ -13,11 +13,30 @@
> aliases {
> mmc0 = &usdhc3;
> mmc1 = &usdhc1;
> + usb0 = &usbotg1; /* required for ums */
> };
>
> chosen {
> stdout-path = &uart1;
> };
> +
> + reg_5v0: regulator-5v0 {
> + compatible = "regulator-fixed";
> + regulator-name = "5V";
> + regulator-min-microvolt = <5000000>;
> + regulator-max-microvolt = <5000000>;
> + };
> +
> + reg_usbh_vbus: regulator-usbh-vbus {
> + compatible = "regulator-fixed";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_usbh_reg>;
> + regulator-name = "VCC_USB[1-4]";
> + regulator-min-microvolt = <5000000>;
> + regulator-max-microvolt = <5000000>;
> + gpio = <&gpio4 7 GPIO_ACTIVE_LOW>;
> + vin-supply = <®_5v0>;
> + };
> };
>
> &usdhc3 {
> @@ -44,4 +63,22 @@
> MX7D_PAD_SD3_STROBE__SD3_STROBE 0x19
> >;
> };
> +
> + pinctrl_usbh_reg: gpio-usbh-vbus {
> + fsl,pins = <
> + MX7D_PAD_UART3_CTS_B__GPIO4_IO7 0x14
> + >;
> + };
> +};
> +
> +&usbotg2 {
> + dr_mode = "host";
> + vbus-supply = <®_usbh_vbus>;
> + status = "okay";
> +};
> +
> +&usbotg1 {
> + dr_mode = "host";
> + vbus-supply = <®_usbh_vbus>;
That is actually not quite correct for Colibri. On Colibri the turning
on of the USB host power is actually done purely in hardware based on
the cable detect pin. You may also see this when looking at e.g. the
Colibri iMX6 device tree.
> + status = "okay";
> };
> diff --git a/arch/arm/dts/imx7-colibri-rawnand.dts
> b/arch/arm/dts/imx7-colibri-rawnand.dts
> index 4eb86fb011..e48e750a57 100644
> --- a/arch/arm/dts/imx7-colibri-rawnand.dts
> +++ b/arch/arm/dts/imx7-colibri-rawnand.dts
> @@ -13,6 +13,28 @@
> chosen {
> stdout-path = &uart1;
> };
> +
> + aliases {
> + usb0 = &usbotg1; /* required for ums */
> + };
> +
> + reg_5v0: regulator-5v0 {
> + compatible = "regulator-fixed";
> + regulator-name = "5V";
> + regulator-min-microvolt = <5000000>;
> + regulator-max-microvolt = <5000000>;
> + };
> +
> + reg_usbh_vbus: regulator-usbh-vbus {
> + compatible = "regulator-fixed";
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_usbh_reg>;
> + regulator-name = "VCC_USB[1-4]";
> + regulator-min-microvolt = <5000000>;
> + regulator-max-microvolt = <5000000>;
> + gpio = <&gpio4 7 GPIO_ACTIVE_LOW>;
> + vin-supply = <®_5v0>;
> + };
> };
>
> &gpmi {
> @@ -43,4 +65,22 @@
> MX7D_PAD_SD3_DATA7__NAND_DATA07 0x71
> >;
> };
> +
> + pinctrl_usbh_reg: gpio-usbh-vbus {
> + fsl,pins = <
> + MX7D_PAD_UART3_CTS_B__GPIO4_IO7 0x14
> + >;
> + };
> +};
> +
> +&usbotg2 {
> + dr_mode = "host";
> + vbus-supply = <®_usbh_vbus>;
> + status = "okay";
> +};
> +
> +&usbotg1 {
> + dr_mode = "host";
> + vbus-supply = <®_usbh_vbus>;
Also drop the above as previously mentioned.
> + status = "okay";
> };
> diff --git a/configs/colibri_imx7_defconfig
> b/configs/colibri_imx7_defconfig
> index 7a52361a2a..43af825d5c 100644
> --- a/configs/colibri_imx7_defconfig
> +++ b/configs/colibri_imx7_defconfig
> @@ -62,6 +62,7 @@ CONFIG_PINCTRL=y
> CONFIG_PINCTRL_IMX7=y
> CONFIG_DM_PMIC=y
> CONFIG_PMIC_RN5T567=y
> +CONFIG_DM_USB=y
> CONFIG_USB=y
> CONFIG_USB_EHCI_HCD=y
> CONFIG_USB_GADGET=y
> diff --git a/configs/colibri_imx7_emmc_defconfig
> b/configs/colibri_imx7_emmc_defconfig
> index 5e2a204a88..beec2704c5 100644
> --- a/configs/colibri_imx7_emmc_defconfig
> +++ b/configs/colibri_imx7_emmc_defconfig
> @@ -64,3 +64,4 @@ CONFIG_USB_GADGET_DOWNLOAD=y
> CONFIG_VIDEO=y
> CONFIG_FAT_WRITE=y
> CONFIG_OF_LIBFDT_OVERLAY=y
> +CONFIG_DM_USB=y
Cheers
Marcel
More information about the U-Boot
mailing list