USB Mass Storage not working on custom i.MX8ULP board

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

USB Mass Storage not working on custom i.MX8ULP board

跳至解决方案
452 次查看
YashParekh
Contributor III

Hello,

I'm working with a custom board based on the i.MX8ULP, and I'm trying to use the eMMC as a USB mass storage device. I followed the same steps that worked on the IMX8ULP EVK9 board, where the USB mass storage shows up correctly on my PC.

However, when I do the same on my custom board, the PC doesn’t detect the USB storage.

After comparing the schematics of the EVK9 and my custom board, I noticed that the EVK uses the USB_VBUS_DETECT and USB_OC pins, but in my board, these pins are left floating and are not connected.

So my question is:
Do I need to change the Yocto Device Tree (DTS) to ignore or disable the USB_VBUS_DETECT and USB_OC pins?

Here's the current USB node from my device tree:

&usbotg1 {
    pinctrl-names = "default", "sleep";
    pinctrl-0 = <&pinctrl_otgid1>;
    pinctrl-1 = <&pinctrl_otgid1>;
    dr_mode = "otg";
    hnp-disable;
    srp-disable;
    adp-disable;
    over-current-active-low;
    status = "okay";
};

 

Do I need to update anything else in the DTS or kernel to get USB mass storage working on my custom board?

Best regards,
Yash Parekh

标签 (1)
0 项奖励
回复
1 解答
417 次查看
Zhiming_Liu
NXP TechSupport
NXP TechSupport

Hello,

For OTG mode, the USB_VBUS_DETECT is necessary. You could try to set dr_mode to peripheral in dts.

dr_mode = "peripheral";
disable-over-current;

Or if you don't want to modify dr_mode , you can pull up the USB_VBUS_DETECT on board.

Best Regards,
Zhiming

在原帖中查看解决方案

0 项奖励
回复
1 回复
418 次查看
Zhiming_Liu
NXP TechSupport
NXP TechSupport

Hello,

For OTG mode, the USB_VBUS_DETECT is necessary. You could try to set dr_mode to peripheral in dts.

dr_mode = "peripheral";
disable-over-current;

Or if you don't want to modify dr_mode , you can pull up the USB_VBUS_DETECT on board.

Best Regards,
Zhiming

0 项奖励
回复