Installation Instructions Digi AccelePort USB 4 5/15/2000 This note explains how to install the Digi AccelePort USB 4 driver. If you have questions please contact Peter Berger pberger@brimson.com or Al Borchers alborchers@steinerpoint.com. Setting Up a Test System * You should install this driver on a test system, not a production system. The kernel USB subsystem and our driver are experimental and might well have unexpected problems that could crash your system and cause a loss of data. * The test system should have a recent version of Linux installed. We have been using Red Hat 6.1 and 6.2 for our tests. * You will need a Digi AccelePort USB 4 attached to a USB port on the system. Files You Need * From www.kernel.org get pub/linux/kernel/v2.2/linux-2.2.14.tar.gz. * Get linux-2.2.14-digi-usb-3.diff.gz, which should have been included with this note. * Copy both of these files to /usr/src. Installing and Patching the Kernel Sources * Login or su to root, cd to /usr/src, and run these commands. mv linux linux.save tar xvzf linux-2.2.14.tar.gz cd linux zcat ../linux-2.2.14-digi-usb-3.diff.gz | patch -p1 make mrproper Configuring and Building the Kernel * You should be logged in as root and in the /usr/src/linux directory. * You might be able to copy your current configuration. In Red Hat systems this will be in /usr/src/linux.save/configs. There will probably be several configs here; choose the most appropriate and copy it to /usr/scr/linux/.config. * If you are running X, run "make xconfig"; if not, run "make menuconfig". * Use the config program to configure the kernel for your system. In order to get the Digi AccelePort USB driver installed you must choose these options in addition to any others needed for your system: Processor type and features n -- Symmetric multi-processing support (we haven't tested the driver on an SMP kernel yet) USB support m -- Support for USB n -- USB verbose debug messages m -- UHCI (Intel PIIX4, VIA, ...) support m -- UHCI Alternate Driver (JE) support m -- OHCI (Compaq, iMacs, OPTi, SiS, ALi, ...) support m -- USB Serial Converter support y -- USB Digi International AccelePort USB Serial Driver (EXPERIMENTAL) n -- USB Serial Converter verbose debug * Note that this configures USB support as loadable modules. You can also link them into the kernel directly by choosing y instead of m. The advantage to modules is that you can load and unload them when you choose, in case they cause problems. We have NOT tested linking the driver directly into the kernel. * Save the configuration and exit the config program. * Run these commands. Note these commands take a while to run, depending on your system and the kernel options you selected. For example, "make bzImage" takes over 6 minutes on my PII400. make dep make bzImage make modules make modules_install * Run these commands to create the device nodes. mknod /dev/ttyUSB0 c 188 0 mknod /dev/ttyUSB1 c 188 1 mknod /dev/ttyUSB2 c 188 2 mknod /dev/ttyUSB3 c 188 3 chmod 666 /dev/ttyUSB[0-3] Booting the New Kernel * Assuming you are using LILO, edit /etc/lilo.conf. Change the default= line to read default=linux-test Add the linux-test configuration like this image=/boot/vmlinuz-test label=linux-test read-only root=/dev/XXX The XXX will be replaced by the disk name that holds your root (/) partition. You can find this in the root= line for your old default configuration in /etc/lilo.conf. It might be something like hda6 or sda1. * As root in /usr/src/linux run these commands. cp arch/i386/boot/bzImage /boot/vmlinuz-test cp System.map /boot/System.map-test rm /boot/System.map ln -s /boot/System.map-test /boot/System.map /sbin/lilo * Run "shutdown -r now" to reboot the system. Starting the USB driver * Your machine has either the UHCI or OHCI USB controller. The UHCI controller is more common on Intel systems. If you have the OHCI controller you should change "usb-uhci" to "usb-ohci" in the commands below. If you don't know, try usb-uhci first; if it doesn't work try usb-ohci. You can also try just uhci in place of usb-uhci; they both support the UHCI controller, but one might work better for you. * As root run these commands depmod -a sync sync modprobe usbcore modprobe usb-uhci /* if you have the UHCI controller */ modprobe usb-serial For convenience you might want to put these commands in a shell file. The "depmod -a" command only needs to be run the first time after installing the driver. * The Digi AccelePort USB 4 should be working. To test it out, connect a null modem cable between ports 1 and 3 and run these commands in two separate windows. In the first window: cu -l /dev/ttyUSB0 In the second window cu -l /dev/ttyUSB2 Whatever you type in one window should be sent through the USB AccelePort and over to the other window. To exit the cu sessions, type return, tilde, and a period. * To stop the USB driver, run these commands sync sync rmmod usb-uhci rmmod usb-serial rmmod usbcore For convenience, you might want to put these commands in a shell file. Known Bugs * Some systems have trouble transfering large amounts of data at baud rates above 38400 bps; other systems work fine up to 115200 bps. * Do not unplug the Digi AccelePort 4 while the usb modules are loaded-- the system will crash. * Do not try to unload the usb modules while a USB port is open--the system will be left in an unstable state and you must reboot.