User's Manual

www.openmoko.com
31
Setting up USB connection
It is possible (although not very straight forward, probably about the
complexity of tun-tap networking) to connect the virtual, emulated
Neo1973 to the Linux PC on which the emulator is running, and work with
it as if a real Neo1973 was plugged into the computer's USB port, but no
twiddling with cables is needed. If you're testing your applications on the
Neo, it may be worth setting up this kind of connection because it lets you
enable normal networking between the PC and the phone and ssh into it
(which is much more comfortable than typing commands into the
OpenMoko's terminal emulator via on-screen keyboard). Here's what you
will need in order to get this working:
A Linux host with a 2.6 series kernel. The following drivers compiled-in or
in modules: dummy_hcd, gadgetfs, usbnet, cdc_ether. A detailed guide to
building the necessary modules is available (primarily Ubuntu focused).
Generic instructions follow.
Note that you need root access to perform most actions described here.
Here's how to enable the drivers in menuconfig.
Find and enable Device Drivers -> USB support -> USB Gadget Support ->
Support for USB Gadgets
Find Device Drivers -> USB support -> USB Gadget Support -> USB
Peripheral Controller and set it to Dummy HCD (DEVELOPMENT)
Find and enable Device Drivers -> USB support -> USB Gadget Support ->
Gadget Filesystem (EXPERIMENTAL) (this one is good to have as a module)
Find and enable Device Drivers -> USB support -> USB Network Adapters
-> Multi-purpose USB Networking Framework
Find and enable Device Drivers -> USB support -> USB Network Adapters
-> Multi-purpose USB Networking Framework -> CDC Ethernet support
(smart devices such as cable modems)
These last two drivers are the same drivers that you need to work with a
real Neo over USB network. After you've built the drivers, make sure
that the copy of kernel headers in /usr/include/linux is up to date. In