[PATCH v4 0/2] ARM: sun8i-r40: Enable usb otg support
qianfan
qianfanguijin at 163.com
Thu May 19 03:04:33 PDT 2022
在 2022/5/18 18:17, qianfanguijin at 163.com 写道:
> From: qianfan Zhao <qianfanguijin at 163.com>
>
> History:
> =======
>
> v4(2022-05-18):
> - Enable both musb and OHCI/EHCI support
>
> Tests:
> ======
>
> All test cases were tested on bananapi-m2-ultra.
>
> 1. USB DEVICE(ping test)
>
> Enable usb gadget rndis network, ping m2u on ubuntu host:
>
> ➜ ~ ping 192.168.200.2
> PING 192.168.200.2 (192.168.200.2) 56(84) bytes of data.
> 64 bytes from 192.168.200.2: icmp_seq=1 ttl=64 time=0.544 ms
> 64 bytes from 192.168.200.2: icmp_seq=2 ttl=64 time=0.269 ms
> 64 bytes from 192.168.200.2: icmp_seq=3 ttl=64 time=0.300 ms
> 64 bytes from 192.168.200.2: icmp_seq=4 ttl=64 time=0.295 ms
> 64 bytes from 192.168.200.2: icmp_seq=5 ttl=64 time=0.283 ms
> 64 bytes from 192.168.200.2: icmp_seq=6 ttl=64 time=0.226 ms
> 64 bytes from 192.168.200.2: icmp_seq=7 ttl=64 time=0.246 ms
> 64 bytes from 192.168.200.2: icmp_seq=8 ttl=64 time=0.204 ms
> 64 bytes from 192.168.200.2: icmp_seq=9 ttl=64 time=0.302 ms
> 64 bytes from 192.168.200.2: icmp_seq=10 ttl=64 time=0.249 ms
> 64 bytes from 192.168.200.2: icmp_seq=11 ttl=64 time=0.459 ms
> 64 bytes from 192.168.200.2: icmp_seq=12 ttl=64 time=0.232 ms
> 64 bytes from 192.168.200.2: icmp_seq=13 ttl=64 time=0.275 ms
> 64 bytes from 192.168.200.2: icmp_seq=14 ttl=64 time=0.243 ms
>
> 2. USB HOST(OHCI)
>
> Connect an usb serial port on OTG port, nex t is the kernel log:
>
> [ 27.824137] usb 2-1: new full-speed USB device number 2 using ohci-platform
> [ 28.865504] cdc_acm 2-1:1.0: ttyACM0: USB ACM device
> [ 29.565509] cdc_acm 2-1:1.2: ttyACM1: USB ACM device
>
> 3. USB HOST(EHCI)
>
> Connect an usb storage on OTG port, next is the kernel log:
>
> [ 17.754147] usb 1-1: new high-speed USB device number 2 using ehci-platform
> [ 17.955995] usb-storage 1-1:1.0: USB Mass Storage device detected
> [ 18.024497] scsi host1: usb-storage 1-1:1.0
> [ 19.035091] scsi 1:0:0:0: Direct-Access General USB Flash Disk 1.0 PQ: 0 ANSI: 2
> [ 19.049717] sd 1:0:0:0: [sda] 7831552 512-byte logical blocks: (4.01 GB/3.73 GiB)
> [ 19.060873] sd 1:0:0:0: [sda] Write Protect is off
> [ 19.071018] sd 1:0:0:0: [sda] No Caching mode page found
> [ 19.076437] sd 1:0:0:0: [sda] Assuming drive cache: write through
> [ 19.093566] sda: sda1
> [ 19.103492] sd 1:0:0:0: [sda] Attached SCSI removable disk
>
> issues:
> =======
>
> The system power often turned off when I plugged an usb device into the OTG port.
> It's not clear why.
It is not caused by software.
According to the schematic of M2U, there is a 100uF capacitor on the
USBVBUS,
but noting on ACIN. The board is powered by ACIN when I test usb otg,
plugged an usb storage into the otg port, USB0 enter host mode and will
enable the USBVBUS power supply through N_VBUSEN. At this time due to the
limits of ACIN, the input voltage dropped and AXP enter shutdown protection
state.
This problem was sloved when I mounted a large capacitor on ACIN.
Both usb device and host stack can work fine now.
>
> qianfan Zhao (2):
> ARM: dts: sun8i-r40: Add USB0_OTG/HOST support
> ARM: dts: bananapi-m2-ultra: Enable USB0_OTG and HOST support
>
> .../boot/dts/sun8i-r40-bananapi-m2-ultra.dts | 39 +++++++++++++++++++
> arch/arm/boot/dts/sun8i-r40.dtsi | 34 ++++++++++++++++
> 2 files changed, 73 insertions(+)
>
More information about the linux-arm-kernel
mailing list