Open neagix opened 7 years ago
I verified that with v2.6.32 you can plugin USB devices later on (keyboard, mass storage) without issues
@neagix
You have different settings on the Wii-Linux Kernel variables (defconfig files) within this repo...
"CONFIG_SLAB=y" "# CONFIG_SLOB is not set" "# CONFIG_SLUB is not set"
Setting these in the defconfig files as shown above makes USB work properly ALL the time.
BTW:
The problem with the Gamecube SI driver crashing with a plugged in controller while booting Linux on the Wii is, because the updated version of the driver itself doesn't allocate memory to the controller struct "input_dev" sub-member "absinfo".
Have a look at the function "si_setup_pad":
"absinfo" members of the "idev" variable are tried to be set BEFORE the call to the function "input_set_abs_params" is being made.
The function "input_set_abs_params" itself allocates the memory for "absinfo" but RETURNS if it fails with that. So trying to set variables of "absinfo" while there is no memory allocated, fails horribly...
Sometimes the USB keyboard gets never detected if I plug it in after the kernel boots.
The workaround is to boot with the keyboard plugged-in, then everything works fine
The kernel messages that document this problem are:
It has to be verified if this is a regression from v2.6 kernels; v3.14.x and v3.15.x both have this issue.
Cc @DeltaResero that also experienced this issue.