Originally Posted by h1uke
looks like the following command
echo /dev/mmcblk0p4 > /sys/devices/platform/arc_udc/gadget/gadget-lun0/file
solves the problem. It also looks like that it should be issued only once after the arc_udc gets loaded.
Thanks. I've just remembered, this error is very similar to the last (battery). The kindle reads most of it's paramaters from something they call KDB (Kindle data base)? It's found in /etc/kdb/ which links to /etc/kdb.src/mario (which I've created based on tested values). I got busy, so I didn't complete the database, hence why it couldn't find the battery. Now I've remembered that /etc/kdb/mario/system/driver/usb/gadget has all the paramaters point to /dev/null. I'll try to find the correct values when I have time, but just a heads up to anyone with any kind of errors. Look in the kdb. If you want to see working values, compare to the luigi folder (that's for the Kindle 3).
EDIT: A temporary fix I think would be placing "/sys/devices/platform/arc_udc/gadget/gadget-lun0/file" into /var/local/system/drivemode_online. A more permanent fix would be placing it into /etc/kdb.src/mario/system/driver/usb/gadget/SYS_GADGET_ONLINE before installing. If someone can find the values for ALL the paramaters listed in the gadget folder, that would be awesome, though.
EDIT: Nvm, found them. The problem was I was searching with usbnetwork ssh. That disabled the filesystem gadget, so I didn't see anything.
If you have USB problems, these are the values (in /etc/kdb.src/mario/system/driver/usb/gadget/ open the file and paste it after "<DATA>" make sure you do not have ANYTHING else after, including whitespace or invisible characters inserted by*most text editors. Use a hex editor):
Also see if this fixes any sound problems.
While I'm here, I might as well try to fix 3G. Here's a possible fix, I can't try because my Kindle's 3G modem is broken.
1) Delete the folder /etc/kdb/system/daemon/pmond/wifid (this stops wifid from try to init every 20 seconds eating up battery & also removes wifi settings from the settings page)
2) Edit /etc/kdb/system/daemon/cmd/interfaces/interface1/priority and under <DATA> change the "2" to "1". (I think the problem was that wifi was first priority, so you can see the 3G icon, but the framework tried to use Wifi)