RK3308: ACM serial over USB sporadically not started
Oliver Neukum
oneukum at suse.com
Tue Nov 22 01:25:18 PST 2022
On 22.11.22 09:45, Luca Ceresoli wrote:
> Hello,
>
> I have set up Serial over USB gadget (ACM CDC) on a RK3308, which works
> fine most times but sporadically (10~20% of the times) does not work,
> failing to set up ttyACM0 on the host side.
>
> Target hardware: Rock Pi S (RK3308).
> Software used on target: Linux v6.1-rc6 (eb7081409f94a9a8608).
> Device tree: rk3308-rock-pi-s.dtb from mainline, unmodified.
>
> Relevant Kconfig options:
>
> CONFIG_USB=y
> CONFIG_USB_EHCI_HCD=y
> CONFIG_USB_EHCI_HCD_PLATFORM=y
> CONFIG_USB_OHCI_HCD=y
> CONFIG_USB_OHCI_HCD_PLATFORM=y
> CONFIG_USB_DWC2=y
> CONFIG_USB_DWC2_PERIPHERAL=y
> CONFIG_USB_DWC2_DEBUG=y
> CONFIG_USB_DWC2_TRACK_MISSED_SOFS=y
> CONFIG_USB_GADGET=y
> CONFIG_USB_GADGET_DEBUG=y
> CONFIG_USB_GADGET_DEBUG_FILES=y
> CONFIG_USB_GADGET_DEBUG_FS=y
> CONFIG_USB_G_SERIAL=y
>
> CONFIG_USB_LIBCOMPOSITE=y
> CONFIG_USB_F_ACM=y
> CONFIG_USB_U_SERIAL=y
> CONFIG_USB_F_SERIAL=y
> CONFIG_USB_F_OBEX=y
> # CONFIG_USB_CONFIGFS is not set
>
> CONFIG_EXTCON=y
> CONFIG_PHY_ROCKCHIP_INNO_USB2=y
> CONFIG_PHY_ROCKCHIP_USB=y
>
> Connections:
> - USB-C to USB-C cable connecting PC and target for both USB
> gadget and target power
> - Ethernet cable
> - UART TX pin (GND not connected, adds booting troubles)
>
> [ 0.598921] dwc2 ff400000.usb: gintsts=04008820 gintmsk=d88c3cc4
> [ 0.601050] dwc2 ff400000.usb: dwc2_handle_usb_suspend_intr: DSTS=0x400003
> [ 0.602415] dwc2 ff400000.usb: DSTS.Suspend Status=1 HWCFG4.Power Optimize=1 HWCFG4.Hibernation=0
> [ 0.602431] dwc2 ff400000.usb: ignore suspend request before enumeration
Oddity
> [ 0.602445] dwc2 ff400000.usb: dwc2_hsotg_irq: 04008020 00000000 (d88c3cc4) retry 8
> I suspect a concurrency issue during initialization, but I don't know
> where to investigate further.
Try booting with "usbcore.autosuspend=-1" on the host side.
Regards
Oliver
More information about the Linux-rockchip
mailing list