Project Home
Project Home
Discussion Forums
Project Information
Project Info
wiki4445: InstallationNotesForUSBStack

Installation and Release notes for USB stack.#

The QNX 4 USB 2.0 stack is a backport of the QNX 6.5.0 USB stack. It updates support for OHCI, UHCI and EHCI chipsets and provides extended hardware support.

Last Update Archive Version Release Notes Checksum
01-03-2013 QNX425-USB-20130301.tar.gz 2.00L EXPERIMENTAL txt 3430510871
14-02-2012 QNX425-USB-20120214.tar.gz 2.00K txt 4042368701

Changes in version 2.00L#

The latest build (01-03-2013) contains а fix of 2.00L version synchronization error which could cause io-usb crash by SIGSEGV.

- updated interrupt handling algorithm;
- default io-usb manager priority changed to 23;
- fixed an error that could lead the host controller into the halted state if during data transfer from/to USB flash a usb utility is called;
- fixed a synchronization problem that could cause Input/output error if during the data transfer from/to USB flash, another usb device is inserted;
- with the verbosity level 6 and above the io-usb manager redirects the debug output to the console;
- added option -a to the devu-mouse driver; with this option driver provides proper support for USB to PS/2 adapters.

Changes in version 2.00K#

- fixed error with the release of global memory segments (gdts). This error could lead to a gdts leak and depletion of this resource after ~10-15 restarts of the Fsys.umass;
- fixed problem with system freeze after io-usb start on several OHCI controllers;
- fixed problem (on most systems) with USB keyboards or USB mice freeze if the USB keyboard and USB mouse are used at the same time and Net and io-usb are sharing one interrupt line.

Archive content#

The USB 2.0 driver archive for the QNX 4 contains:

File Description
/bin/io-usb USB stack; includes support for OHCI, UHCI and EHCI chipsets
/bin/io-usb-ehci tiny USB stack; includes only support for EHCI chipsets
/bin/devu-kbd USB keyboard class driver
/bin/devu-mouse USB mouse class driver
/bin/devu-prn USB printer class driver
/bin/Fsys.umass USB mass storage class driver
/bin/usb USB status utility; displays USB device information

Installation notes#

To install USB stack driver:

1. Download the archive with USB stack and drivers.

2. Unpack the driver: # zcat QNX425-USB-20130301.tar.gz | tar x

3. Compare the cksum results with the checksum on patch/QNX425-USB-20130301/cksum.txt file.

# cksum patches/QNX425-USB-20130301/bin/*

4. Backup the existing USB stack components.

If you wish to keep a copy of the existing driver, you'll need to save them to a safe location first, to prevent them from being overwritten during installation.

# cp -v /bin/io-usb /bin/io-usb.`date +"%y%m%d_%H%M%S"`
# cp -v /bin/devu-kbd /bin/devu-kbd.`date +"%y%m%d_%H%M%S"`
# cp -v /bin/devu-mouse /bin/devu-mouse.`date +"%y%m%d_%H%M%S"`
# cp -v /bin/devu-prn /bin/devu-prn.`date +"%y%m%d_%H%M%S"`
# cp -v /bin/Fsys.umass /bin/Fsys.umass.`date +"%y%m%d_%H%M%S"`
# cp -v /bin/usb /bin/usb.`date +"%y%m%d_%H%M%S"`

5. Copy the updated usb stack components to the /bin directory:

# cp -v patches/QNX425-USB-20130301/bin/* /bin

6. Make sure that the binaries are executable and that the file's owner and group are correct:

# chmod 775 /bin/io-usb
# chown root:root /bin/io-usb