Armbian

usbcore

Note in some cases usbcore is built into the kernel (rather than a loadable module), so needs to use a different way to modify its parameters.

Check if usbcore is Built-In

Run:

grep -i usbcore /lib/modules/$(uname -r)/modules.builtin

If you see an entry, it means usbcore is built into the kernel.

Modify usbcore Parameters in cmdline.txt or armbianEnv.txt

Since usbcore is compiled into the kernel, you need to pass its parameters via the bootloader:

For Armbian on SBCs using armbianEnv.txt

  1. Open the file:
    sudo nano /boot/armbianEnv.txt
    
  2. Add this line (or update it if already exists):
    extraargs=usbcore.autosuspend=-1
    

For Devices Using /boot/cmdline.txt (e.g., Raspberry Pi-based Armbian)

  1. Edit the kernel boot parameters:
    sudo nano /boot/cmdline.txt
    
  2. Add this at the end of the line (without a newline):
    usbcore.autosuspend=-1
    

Verify the Change After Reboot

After rebooting, check if the autosuspend value has been updated:

cat /sys/module/usbcore/parameters/autosuspend

It should now show -1.