I am having trouble with mounting usbfs on my BeagleBoard xM running
Android 2.2 kernel 2.6.32.
My USB devices are working normally (keyboard, mouse, and adb via mini
USB from Ubuntu 10.04).
It appears that the usbfs driver is registered normally during
startup, as shown by dmesg output:
...
<6>OMAP DMA hardware revision 5.0
<4>bio: create slab <bio-0> at 0
<5>SCSI subsystem initialized
<6>usbcore: registered new interface driver usbfs
<6>usbcore: registered new interface driver hub
<6>usbcore: registered new device driver usb
...
However, usbfs is not listed in /proc/mounts, after startup:
tmpfs /dev tmpfs rw,relatime,mode=755 0 0
devpts /dev/pts devpts rw,relatime,mode=600 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,relatime 0 0
tmpfs /mnt/asec tmpfs rw,relatime,mode=755,gid=1000 0 0
/dev/block/vold/179:3 /mnt/sdcard vfat
rw,dirsync,nosuid,nodev,noexec,relatime,uid=1000,gid=1015,fmask=0702,dmask=0702,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-
ro 0 0
/dev/block/vold/179:3 /mnt/secure/asec vfat
rw,dirsync,nosuid,nodev,noexec,relatime,uid=1000,gid=1015,fmask=0702,dmask=0702,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-
ro 0 0
tmpfs /mnt/sdcard/.android_secure tmpfs ro,relatime,size=0k,mode=000
0 0
I had expected to see something like "usbfs on /proc/bus/usb type
usbfs (rw)" in there. Also, the usbfs device doesn't show up in df
output:
/: 1897452K total, 140748K used, 1756704K available (block size 4096)
/: 1897452K total, 140748K used, 1756704K available (block size 4096)
/dev: 251140K total, 12K used, 251128K available (block size 4096)
/mnt/asec: 251140K total, 0K used, 251140K available (block size 4096)
/mnt/sdcard: 1859888K total, 12K used, 1859876K available (block size
4096)
/mnt/secure/asec: 1859888K total, 12K used, 1859876K available (block
size 4096)
I attempted to mount usbfs during startup by adding to the init.rc, in
the "on boot" section, to no avail (based on advice from numerous
sources):
mount -t usbfs -o devmode=0666 none /proc/bus/usb
If I try to use this command after startup is complete, I get "mount:
No such file or directory". My /proc/bus folder exists on the device,
its only content is the folder "input". I can't seem to find any
references in the various groups, about this problem when mounting
usbfs.
In addition to the failure to mount, a program I wrote to use usbfs
(via libusb) fails when it tries to initialize the usbfs backend. I
assume this is because the usbfs isn't mounted. (In particular, the
libusb source module core.c fails in its method libusb_init at the
call to usbi_backend->init(), which returns "-99" - usbi_backend in
this case is linux_usbfs_backend).
Any help would be much appreciated.