* [PATCH v2] imx8mp-evk: Add USB0 OTG support
@ 2023-10-14 21:12 Fabio Estevam
2023-10-15 17:47 ` Marek Vasut
0 siblings, 1 reply; 2+ messages in thread
From: Fabio Estevam @ 2023-10-14 21:12 UTC (permalink / raw)
To: sbabic; +Cc: marex, peng.fan, u-boot, Fabio Estevam
From: Fabio Estevam <festevam@denx.de>
Add USB0 OTG support.
Currently, the USB0 OTG nodes are not enabled in the Linux kernel
devicetree.
For this reason, enable the USB0 OTG nodes inside imx8mp-evk-u-boot.dtsi
for now.
Also select several useful options such as USB gadget and fastboot.
Tested by running "ums 0 mmc 2".
Signed-off-by: Fabio Estevam <festevam@denx.de>
---
Changes since v1:
- Selected CONFIG_PHY=y and CONFIG_PHY_IMX8MQ_USB=y. Previously the ums
command was working only after booting via USB serial download mode.
Now it also works after booting from SD card.
arch/arm/dts/imx8mp-evk-u-boot.dtsi | 14 +++++++++++++
configs/imx8mp_evk_defconfig | 31 +++++++++++++++++++++++++++++
2 files changed, 45 insertions(+)
diff --git a/arch/arm/dts/imx8mp-evk-u-boot.dtsi b/arch/arm/dts/imx8mp-evk-u-boot.dtsi
index 6784ed2e7c92..43f13a9c22f7 100644
--- a/arch/arm/dts/imx8mp-evk-u-boot.dtsi
+++ b/arch/arm/dts/imx8mp-evk-u-boot.dtsi
@@ -111,6 +111,20 @@
bootph-pre-ram;
};
+&usb3_phy0 {
+ status = "okay";
+};
+
+&usb3_0 {
+ status = "okay";
+};
+
+&usb_dwc3_0 {
+ pinctrl-names = "default";
+ dr_mode = "peripheral";
+ status = "okay";
+};
+
&usdhc1 {
bootph-pre-ram;
};
diff --git a/configs/imx8mp_evk_defconfig b/configs/imx8mp_evk_defconfig
index da1f5d1ad2e0..c129170bf83d 100644
--- a/configs/imx8mp_evk_defconfig
+++ b/configs/imx8mp_evk_defconfig
@@ -59,6 +59,9 @@ CONFIG_CMD_FUSE=y
CONFIG_CMD_GPIO=y
CONFIG_CMD_I2C=y
CONFIG_CMD_MMC=y
+CONFIG_CMD_USB=y
+CONFIG_CMD_USB_SDP=y
+CONFIG_CMD_USB_MASS_STORAGE=y
CONFIG_CMD_CACHE=y
CONFIG_CMD_REGULATOR=y
CONFIG_CMD_EXT4_WRITE=y
@@ -74,6 +77,14 @@ CONFIG_ETHPRIME="eth1"
CONFIG_SPL_DM=y
CONFIG_CLK_COMPOSITE_CCF=y
CONFIG_CLK_IMX8MP=y
+CONFIG_USB_FUNCTION_FASTBOOT=y
+CONFIG_FASTBOOT_BUF_ADDR=0x42800000
+CONFIG_FASTBOOT_BUF_SIZE=0x20000000
+CONFIG_FASTBOOT_FLASH=y
+CONFIG_FASTBOOT_UUU_SUPPORT=y
+CONFIG_FASTBOOT_FLASH_MMC_DEV=2
+CONFIG_FASTBOOT_MMC_BOOT_SUPPORT=y
+CONFIG_FASTBOOT_MMC_USER_SUPPORT=y
CONFIG_MXC_GPIO=y
CONFIG_DM_PCA953X=y
CONFIG_DM_I2C=y
@@ -94,10 +105,15 @@ CONFIG_DWC_ETH_QOS=y
CONFIG_DWC_ETH_QOS_IMX=y
CONFIG_FEC_MXC=y
CONFIG_MII=y
+CONFIG_PHY=y
+CONFIG_PHY_IMX8MQ_USB=y
CONFIG_PINCTRL=y
CONFIG_SPL_PINCTRL=y
CONFIG_PINCTRL_IMX8M=y
CONFIG_SPL_POWER_LEGACY=y
+CONFIG_POWER_DOMAIN=y
+CONFIG_IMX8M_POWER_DOMAIN=y
+CONFIG_IMX8MP_HSIOMIX_BLKCTRL=y
CONFIG_POWER_PCA9450=y
CONFIG_DM_REGULATOR=y
CONFIG_DM_REGULATOR_FIXED=y
@@ -109,4 +125,19 @@ CONFIG_SYSRESET=y
CONFIG_SPL_SYSRESET=y
CONFIG_SYSRESET_PSCI=y
CONFIG_SYSRESET_WATCHDOG=y
+CONFIG_USB=y
+# CONFIG_SPL_DM_USB is not set
+CONFIG_DM_USB_GADGET=y
+CONFIG_USB_XHCI_HCD=y
+CONFIG_USB_XHCI_DWC3=y
+CONFIG_USB_XHCI_DWC3_OF_SIMPLE=y
+CONFIG_USB_EHCI_HCD=y
+# CONFIG_USB_EHCI_MX7 is not set
+CONFIG_USB_DWC3=y
+CONFIG_USB_DWC3_GENERIC=y
+CONFIG_USB_GADGET=y
+CONFIG_USB_GADGET_MANUFACTURER="FSL"
+CONFIG_USB_GADGET_VENDOR_NUM=0x0525
+CONFIG_USB_GADGET_PRODUCT_NUM=0xa4a5
+CONFIG_SDP_LOADADDR=0x0
CONFIG_IMX_WATCHDOG=y
--
2.34.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH v2] imx8mp-evk: Add USB0 OTG support
2023-10-14 21:12 [PATCH v2] imx8mp-evk: Add USB0 OTG support Fabio Estevam
@ 2023-10-15 17:47 ` Marek Vasut
0 siblings, 0 replies; 2+ messages in thread
From: Marek Vasut @ 2023-10-15 17:47 UTC (permalink / raw)
To: Fabio Estevam, sbabic; +Cc: peng.fan, u-boot, Fabio Estevam
On 10/14/23 23:12, Fabio Estevam wrote:
> From: Fabio Estevam <festevam@denx.de>
>
> Add USB0 OTG support.
>
> Currently, the USB0 OTG nodes are not enabled in the Linux kernel
> devicetree.
>
> For this reason, enable the USB0 OTG nodes inside imx8mp-evk-u-boot.dtsi
> for now.
>
> Also select several useful options such as USB gadget and fastboot.
>
> Tested by running "ums 0 mmc 2".
>
> Signed-off-by: Fabio Estevam <festevam@denx.de>
> ---
> Changes since v1:
> - Selected CONFIG_PHY=y and CONFIG_PHY_IMX8MQ_USB=y. Previously the ums
> command was working only after booting via USB serial download mode.
> Now it also works after booting from SD card.
>
> arch/arm/dts/imx8mp-evk-u-boot.dtsi | 14 +++++++++++++
> configs/imx8mp_evk_defconfig | 31 +++++++++++++++++++++++++++++
> 2 files changed, 45 insertions(+)
>
> diff --git a/arch/arm/dts/imx8mp-evk-u-boot.dtsi b/arch/arm/dts/imx8mp-evk-u-boot.dtsi
> index 6784ed2e7c92..43f13a9c22f7 100644
> --- a/arch/arm/dts/imx8mp-evk-u-boot.dtsi
> +++ b/arch/arm/dts/imx8mp-evk-u-boot.dtsi
> @@ -111,6 +111,20 @@
> bootph-pre-ram;
> };
>
> +&usb3_phy0 {
> + status = "okay";
> +};
Keep the list sorted, _0 goes before _phy0, doesn't it ?
> +&usb3_0 {
> + status = "okay";
> +};
> +
> +&usb_dwc3_0 {
> + pinctrl-names = "default";
Is this ^ pinctrl-names without pinctrl-0 property needed ?
> + dr_mode = "peripheral";
> + status = "okay";
> +};
> +
> &usdhc1 {
> bootph-pre-ram;
> };
With that fixed:
Reviewed-by: Marek Vasut <marex@denx.de>
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2023-10-15 17:47 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-10-14 21:12 [PATCH v2] imx8mp-evk: Add USB0 OTG support Fabio Estevam
2023-10-15 17:47 ` Marek Vasut
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox