Skip to main content
The Universal Serial Bus (USB) supports data exchange and power supply between electronic devices at speeds from 1.5 Mbps (low speed) up to 10 Gbps (SuperSpeed Plus). The IQ-8275 uses the Synopsys DesignWare Core SuperSpeed USB 3.x controller connected to USB2 PHY (UTMI) and USB3 PHY (PIPE) interfaces. The board features three USB connectors: two Type-C (USB0, USB1) and one micro-USB (USB2).

Controllers

ControllerAddressMax Speed
USB00xa600000USB 3.x SuperSpeed
USB10xa800000USB 3.x SuperSpeed
USB20xa400000USB 2.0 High Speed

Features

Hardware Features

FeatureDescription
Dual-Role Device (DRD)Host and device modes with dynamic role detection
USB 3.1 Gen1SuperSpeed 5 Gbps on USB0 and USB1
USB 2.0 High Speed480 Mbps on all controllers
xHCIeXtensible Host Controller Interface compliance
Transfer typesControl, bulk, interrupt, isochronous

Software Features

Peripheral mode: Mass Storage, Diagnostics (FunctionFS), RNDIS, NCM Host mode: xHCI, HID/MS/Hub class drivers, UVC (USB camera), Link Power Management

Configuration

Runtime Power Management

echo auto > /sys/bus/platform/devices/a600000.usb/power/control
echo 2000 > /sys/bus/platform/devices/a600000.usb/power/autosuspend_delay_ms
cat /sys/bus/platform/devices/a600000.usb/power/runtime_status

Prevent Suspend During Composition Switch

echo on > /sys/bus/platform/devices/a600000.usb/power/control
# Perform composition switch
echo auto > /sys/bus/platform/devices/a600000.usb/power/control

USB Camera

The IQ-8275 supports USB cameras that comply with the USB Video Class (UVC) standard via the uvcvideo kernel driver, exposing devices as /dev/videoX.
1

Detect the camera

lsusb
v4l2-ctl --list-devices
ls -l /dev/v4l/by-id/
2

Check supported formats

yavta /dev/video2 --enum-formats
3

Stream video

yavta -f MJPEG -s 1280x720 -t 1/30 -c10 -F/home/ubuntu/test.jpeg /dev/video2

Verification

lsusb                              # List connected USB devices
cat /sys/kernel/debug/usb/devices  # Detailed device info
cat /sys/kernel/debug/usb/a600000.usb/mode        # Check USB mode
cat /sys/kernel/debug/usb/a600000.usb/link_state  # Check link state

Debugging

mount -t debugfs none /sys/kernel/debug
echo 1 > /sys/kernel/debug/tracing/events/dwc3/enable
echo 1 > /sys/kernel/debug/tracing/events/xhci-hcd/enable
cat /sys/kernel/debug/tracing/trace

Troubleshooting

cat /sys/kernel/debug/usb/a600000.usb/mode
cat /sys/kernel/debug/usb/a600000.usb/link_state
dmesg | grep -i usb
  • Check cable connection and power rails
lsusb
ls /dev/video*
dmesg | grep -i uvc
lsmod | grep uvcvideo

Resources