UDI Supplement for SCO OpenServer Overview The UDI Supplement provides Uniform Driver Interface (UDI) support for SCO OpenServerTM systems. If you have questions regarding this supplement or the product on which it is installed please contact your software supplier. This document covers the following topics: o Highlights of this supplement o System requirements o Installing the supplement o Removing the supplement o UDI Overview o The udisetup utility o Installing UDI drivers o Removing UDI drivers o Known limitations Highlights of this supplement This UDI Supplement release provides support for the UDI runtime environment. The runtime environment consists of the tools necessary to install (udisetup) driver packages, as well as the software modules necessary to configure and execute UDI drivers. For more information, see UDI Overview. NOTE: This release of the UDI Supplement does not provide UDI drivers; it provides UDI runtime environment support only. UDI is new technology. As drivers are developed, they will be made available by: Project UDI http://www.project-udi.org UDI Home Page on Sourceforge http://projectudi.sourceforge.net/ We recommend that you consult these sites regularly for new and updated drivers. If you are interested in UDI development, the UDI 1.01 Feature Supplement provides the runtime and development features necessary to code, build, package, install, and configure UDI drivers on UnixWare 7 Release 7.1.1. This supplement is available for download at http://www.caldera.com/support/download.html under "Free, Evaluation & Pre-Release" products. You can review the UDI developer documentation online at http://uw7doc.sco.com/ under "Hardware and Driver Development". System requirements This supplement can be installed on the following SCO OpenServer releases: o SCO OpenServer Release 5.0.6 or later You do not need to remove any supplements before installing the UDI Supplement. Installing the supplement The UDI Supplement consists of a single package, UDI, which must be installed using the pkgadd(ADM) utility. You can install the UDI Supplement from distribution media (such as a CD-ROM) or from media images on a software server or web site. To install the supplement: 1 Log in as root. 2 If you are installing from media, mount the CD-ROM. If you are installing from downloaded files, copy them to the local directory of your choice. 3 Install the supplement by entering: pkgadd -d location UDI where location is the name of the directory or mount point containing the UDI package. 4 Relink the kernel by entering: cd /etc/conf/cf.d ./link_unix -y 5 Reboot the system. Removing the supplement Use the pkgrm(ADM) command to remove the UDI Supplement: 1 Login as root. 2 Remove any UDI drivers you may have previously installed; see "Removing UDI drivers" for instructions. 3 Enter: pkgrm UDI 4 Relink and reboot your system. UDI Overview The Uniform Driver Interface (UDI) is an operating system-neutral device driver standard. It defines a relatively autonomous, low-level I/O subsystem that completely surrounds conforming device driver modules, providing them with a consistent interface to and from the host operating system and among cooperating device drivers. A device driver is a collection of routines that associate the generic I/O functionality provided by an operating system with specific I/O hardware. The writing of device drivers accounts for a large portion of the engineering effort needed to create or port an operating system or I/O card product to a new platform or interconnect. When an I/O card is designed for a common interconnect such as PCI, new or modified device drivers may be required for each platform operating system combination. This can multiply by manyfold the time and expense of developing and supporting a device. Standard, open, driver-interface definitions are a key ingredient in leveraging third-party driver development. The UDI specification allows a single device driver to support an I/O card across the platforms and operating systems appropriate for its interconnect. The goal is to accelerate the availability, and lower the costs, of I/O solutions, increasing the competitiveness of supporting systems. Great care has been taken to isolate drivers from the impedance matching required for an I/O card to perform well on a given operating system or platform. The driver is always invoked by procedure calls and interacts with the embedding operating system and hardware via environment calls, providing the driver with full isolation from the details of its environment while retaining sufficient flexibility and performance in the operating system. The udisetup utility The udisetup utility installs a udimkpkg-packaged driver on its intended target system. This utility extracts driver files from the UDI package file, installs them in environment-specific locations, and prepares the driver for use on the target system. For syntax and usage, see the udisetup(ADM) manual page (included with this supplement). Installing UDI drivers Install and configure the UDI driver into the kernel entering udisetup on the command line. It will search the current working directory and interactively install any .udi drivers found. You can also install specified drivers with command line options as described in the udisetup(ADM) manual page. For example: udisetup [options] name.udi After installing the driver, you must configure the device using standard system utilities. For example, you must use the mkdev hd utility to configure a Host Bus Adapter (HBA) to use a UDI HBA driver. For more information, see the "Chapter 14: Basic hardware configuration" in the SCO OpenServer Handbook. Removing UDI drivers To remove a UDI driver which has previously been installed with udisetup, enter the following command as root: pkgrm name For example, to remove the udi_abc driver package, enter the following command: pkgrm udi_abc Known limitations Laptop support The UDI Supplement was not tested on laptop computers. Configuring UDI network devices Under normal circumstances, network devices are configured with corresponding drivers using the Network Configuration Manager. If a UDI driver is installed on the system and there is no native driver (MDI) installed for the target driver, the Network Configuration Manager will correctly detect and configure the new UDI driver. However, if a UDI network driver is installed to support a network device for which a native driver is already installed, the Network Configuration Manager might fail to detect the UDI driver. This is a known problem with the Network Configuration Manager that will be addressed in a future release. If you have native and UDI drivers for the same network device on your system, there are two ways to work around this problem. Both workarounds assume that no network devices are currently configured, and that both native and UDI drivers are installed. o If you do not need the native driver on your system, remove it using the Software Manager, relink the kernel, and reboot your system. For example, if you want to remove the native driver for an Intel Pro/100 device, you would remove the eeE driver package. You can then use the Network Configuration Manager to configure the remaining UDI driver. NOTE: If you want to return to the native driver, you must reinstall it from distibution media or downloaded files. o If you do not want to remove the native driver, you must make it temporarily unavailable while you configure the UDI driver. Execute these steps in multi-user mode (again using the Intel eeE driver as an example): 1) Start a Network Configuration Manager session, but do not proceed beyond the main menu. 2) Open a terminal window, and as root enter: cd /var`/etc/llipathmap`/ID/eeE mv AOF AOF- This will prevent the Network Configuration Manager from finding the native driver. 3) In the Network Configuration Manager session, select Add Lan adapter. The manager will scan the PCI configuration space and match the eeeudi driver package. 4) Return to the terminal window and restore the directory that you moved earlier: mv AOF- AOF Performing this step now avoids linktime errors. 5) Continue configuring the network device in the Network Configuration Manager session. When finished, answer Yes to relink and reboot. With either of these methods, the UDI network driver will function properly after reboot. Copyright © 2001 Caldera International, Inc. All Rights Reserved. Document Version: 5.0.6aa 31 May 2001