FXLOADSection: Linux Programmer's Manual (8)
Updated: December 2001
Return to Main Contents
NAMEfxload - Firmware download to EZ-USB FX and FX2 devices
SYNOPSISfxload [ -2 ] [ -v ] [ -D devpath ] [ -I hexfile ] [ -L link ] [ -m mode ]
DESCRIPTIONfxload is a program which downloads firmware to USB devices based on the Cypress EZ-USB FX or FX2 microcontrollers. These have 8-bit 8051 cores with special extensions for USB I/O. The FX2 supports high speed USB 2.0 transfers (480 MBit/sec) as well as full speed USB 1.1 transfers (12 MBit/sec), while the original FX part supports only full speed transfers. These controllers have several package options, and can be set up with external memory (on-chip memory is usually about 8K) and ROMs when device costs allow. Note that the original design was from AnchorChips, so you may find references to that vendor (which was later merged into Cypress).
This uses "usbfs" (older name: "usbdevfs") to access devices, and issues vendor specific control requests to download and reset the EZ-USB devices. Normally, firmware will then "renumerate" by disconnecting from USB and then reconnecting as a new device. It then appears with new device descriptors and functionality, as provided by the firmware which has been downloaded.
To support some non-firmware applications, this can also set up symbolic links for those usbfs names. It can also change their access modes. Both of these can help simplify software applications that need to talk to USB devices using user mode drivers, don't want to run with privileges or to examine all of the existing USB devices, and which don't need kernel more drivers.
See the Linux-Hotplug web site for information about how to use fxload to download device firmware when hotplugging USB devices, using driver-specific scripts stored in the /etc/hotplug/usb directory.
FUNCTION LETTERSAt least one of the following options must be specified.
OPTIONSBy default, fxload assumes the device uses an EZ-USB FX. It also assumes that the device in question has been specified by USB kernel hotplugging conventions, using the DEVICE environment variable to name a "usbfs" file that can be used to talk to the device.
ENVIRONMENT VARIABLESDEVICE normally names a "usbfs" file that will be used to talk to the device. This is provided by the Linux kernel as part of USB hotplugging.
AUTHORSfxload is developed by Linux Hotplugging Project http://linux-hotplug.sourceforge.net/
This document was created by man2html, using the manual pages.
Time: 00:28:39 GMT, March 05, 2024