I got my Solitude AML-S905D3-CC Amlogic board set up with Fedora WS 42 and it generally works good. I been trying to get OTG gadget mode going though and has failed so far.
What I’m doing:
Using ConfigFS to create USB gadget at /sys/kernel/config/usb_gadget/scanner_proxy
Configuring device descriptors (VID:0x07B3, PID:0x1825, mass storage function)
Assigning UDC controller ff400000.usb to the gadget
Connecting USB-C port to host PC with OTG-compliant cable
Are there board-specific steps needed to enable OTG functionality?
Should I be using a different UDC controller or additional kernel modules?
Are there any jumpers/DIP switches that control USB mode?
Any other hints or tips?
UPDATE: Ok, fixed the issue. I needed hadn’t actually told it to switch mode: ARM switching from “host” to “device” mode via /sys/devices/platform/soc/*/usb_role/*/role
Ok, I am in no way an expert and just fumbled my way though this, but here are the steps I took:
I did 3 things.
First I uploaded the firmware to latest version (don’t know if this is needed, but I did it), did that directly to the board.
Instructions found on this page:
Also took me some searching and trial and error to realize the USB-c port is the OTG port on this board.
Install Fedora raw image using ‘dd’ onto a micro-ssd card as documented here, this and the bootload install was done on my main Fedora Workstation system. I even ran out and bought a USB-microssd card reader to do this step.
And then finally installed the bootloader using these instructions:
Inserted the micro-ssd card with Fedora and the bootloader into the micro-ssd slot on the bottom of the board. Then boot with the board powered using a USB-C connection and a HDMI screen connected, but no USB devices in the USB-A ports. Once booted into Fedora I can connect keyboard and mouse etc. to the USB-A ports fine.
Hope I remember all the steps I took correctly and that this is actually helpful.