iofs-usb-ipod.so

The USB transport mechanism for connecting to iPods

Syntax:

io-fs-media -dipod,transport=usb

Runs on:

ARM, PowerPC, SH, x86

Options:

Options for iofs-usb-ipod.so are separated by colons (:). These options are:

audio=devicepath
Set the path to the location from where io-media should read in the audio. See Setting the audio path below.
busno
The USB bus or chip to which the iPod device is connected.
config
Configuration value of the iPod HID interface (iAP).
devno
The USB device address, as assigned by io-usb.
iface
Interface value of the iPod HID interface (iAP).
normal_mA=amps
Specify, in milliamperes, the amount of current over the default that an iPod device may draw when in normal state. Typical values are -500 and 500. See Specifying current below.
sconfig
Select the iPod HID configuration. This option is only required if no other entity selects the configuration. See Selecting the iPod configuration below.
suspend_mA=amps
Specify, in milliamperes, the amount of current over the default that an iPod device may draw when in suspended state. Typical values are 0, 100 and 500. See Specifying current below.
use
Print out a usage message to stdout and exit.

Description:

The utility iofs-usb-ipod.so provides the transport mechanism for connection to iPod devices on a USB bus. It is loaded by iofs-ipod when it is started with the transport mechanism set to usb (for USB devices).


Note:
  • Authentication is required to use USB transport to control an iPod.
  • To support USB transport connections to iPods, you need the following patch: deva-ctrl-ipod.so sound driver for iPod digital audio devices (Patch ID 1154).

Selecting the iPod configuration

You can select the iPod HID configuration through the enum-usb configuration file, or use the sconfig option to tell iofs-usb-ipod.so to select the iPod HID interface. This option is applied only if no other entity selects the iPod device configuration to use.


Note: iPods, such as Shuffles, that present themselves as only USB mass storage devices have only one configuration.

Directed iPod device startup

The iPod driver using the USB transport mechanism can be instructed to manage a specific device. This feature is designed to be used in an environment that has a driver launcher application that starts and stops services for removable devices: when running for a specified device, the iPod driver ignores device insertion and removal notifications from io-usb.

To start the iofs-ipod module to support a specific iPod device, specify the paths for the bus and the device, and the iPod HID configuration and interface. For example:

# io-fs-media -dipod,transport=usb:busno=0:devno=1:config=2:iface=2

Note: Bus, device, configuration and interface numbers are hexadecimal values.

Setting the audio path

The audio option sets the path to the location from where io-media should read in the audio. This option can be used for when iPod accessed through serial transport (iofs-ser-ipod.so) and for iPods accessed through USB transport (iofs-usb-ipod.so).

If you specify a path for the audio option, io-media reads the audio from the location specified by this path. For example, with USB audio, you can specify the audio path to the location of the USB iPod audio driver's capture device as follows:

# io-fs-media -dipod,transport=usb,acp=i2c,audio=/dev/snd/ipod-0-0

When io-media needs to read in audio data (to push it out to the sound card output), it will read from this audio string.

Specifying current

The values for the normal_mA and suspend_mA options specify in milliamperes the maximum current an iPod device may draw to recharge in, respectively, normal mode and suspended mode.

The extra current an iPod may draw in any state is set at a default of 500 milliamperes (normal_mA or suspend_mA set to 0). To allow an iPod to draw 1A of extra current when in, for example, normal state, set normal_mA=500 (500 default + 500 configured = 1000). To prevent an iPod from drawing any extra current, set the option to -500 (500 default -500 configure= 0).

Please refer to the iPod specifications for more details about charging iPod devices.

Examples:

Start the iPod filesystem for an iPod with a USB connection:

# io-fs-media -dipod,transport=usb,acp=i2c

This command is equivalent to:

# io-fs-media -dipod,transport=usb: \
    acp=i2c:addr=0x10:path=/dev/i2c0

See also:

io-fs-media, iofs-i2c-ipod.so, iofs-ipod.so, iofs-pfs.so, iofs-usb-ipod.so, mme