Kernel / Linux / 软件积累 · 2024年7月3日

OTG配置

4线的USB2.0,无USB_ID的PIN脚,需要C口的USB

        usb3_0_otg: usb3-0-otg {
            pinctrl-names = "default","sleep";
            pinctrl-0 = <&usb_id_pinmux &usb_host_pinmux>;
            pinctrl-1 = <&usb_id_pinmux_slp &usb_host_pinmux>;
            usbid_gpio = <65>;  //usb_id
            edge_detect_gpio = <99>;            
            otg,use-gpio-vbus;
            gpio-num = <122>;   //VBUS_DRV
            status = "okay";
        };

USB_ID 此PIN脚用于判断主从,

内核配置就打开—主要用于U盘存储支持,及OTG相应的USB支持

CONFIG_BLK_SCSI_REQUEST=y

CONFIG_BLK_DEV_SD=y

CONFIG_SCSI=y

CONFIG_SG_POOL=y

CONFIG_USB_STORAGE=y

CONFIG_USB_XHCI_HCD=y
CONFIG_USB_XHCI_PLATFORM=y ————-为USB3.0

CONFIG_USB_OTG=y

CONFIG_USB_DWC3_ASR_OTG=y —不同的厂商或许有不同的配置,或者没有
CONFIG_USB_DWC3_DUAL_ROLE=y

CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
CONFIG_USB=y

打赏作者