ufoma
— USB mobile
phone support
To compile this driver into the kernel, place the following lines
in your kernel configuration file:
device usb
device ucom
device ufoma
Alternatively, to load the driver as a module at boot time, place
the following line in
loader.conf(5):
The ufoma
driver provides support for USB
mobile phone terminals in the subset of the Mobile Computing Promotion
Consortium USB Implementation Guideline, which is adopted by FOMA, the NTT
DoCoMo 3G system, terminal. These are partly like CDC ACM model based
modems, which are supported by
umodem(4),
but the ufoma
driver recognizes a specific USB
descriptor that describes its role and interface structure, and it will
negotiate its role when the device is open. They support a regular AT
command set and the commands can either be multiplexed with the data stream
or handled through separate pipes. In the latter case the AT commands have
to be given on a device separate from the data device.
The device is accessed through the
ucom(4)
driver which makes it behave like a
tty(4).
These devices often have a few interface sets and these interfaces
have their role, sometimes multiplexed. These roles are identified with the
following sysctl MIBs:
- dev.ucom.%d.supportmode
- The modes which are supported by the interface.
- dev.ucom.%d.currentmode
- Current mode of the interface.
- dev.ucom.%d.openmode
- Mode to transit when the device is open next.
The modes are as follows:
modem
- Accepts AT commands and go and pass packet communication data.
handsfree
- Accepts AT commands but it does not pass data.
obex
- Accepts OBEX frame which is used to exchange telephone book, etc.
vendor1
,
vendor2
- Vendor specific data may be passed.
deactivated
- When an interface is recognized by the system but not used, the interface
will be set to this mode.
unlinked
- When an interface is not yet negotiated, the interface is in this
mode.
Devices supported by the ufoma
driver
include:
- SHARP FOMA SH902i
- KYOCERA PHS AH-K3001V (a.k.a Kyopon)
- SANYO Vodafone3G V801SA
Specification can be found at:
- http://www.nttdocomo.co.jp/corporate/technology/document/foma/index.html
- http://www.mcpc-jp.org/doclist.htm
tty(4),
ucom(4),
umodem(4),
usb(4)
The ufoma
driver appeared in
FreeBSD 7.0, partly derived from the
umodem(4)
code.
Interfaces with multiplexed commands and data and interfaces with
commands only are supported.