README for toolbox/document/GIOdriver The GIO driver postscript file in this directory is a symlink to the same in the toolbox/hardway/GIO_DRVR4.0.5 directory. The README below is the README from that same directory. (See toolbox/hardware/GIO_DRVR4.0.5 for the separate source code example file as well.) GIO Device Driver Writing Guide The postscript file in this directory contains information needed to write a device driver for a GIO board. All of the information included in this directory is based on IRIX 4.0.x. Information on how to write a GIO driver for IRIX 5.x is included in the current version of the "IRIX Device Driver Programming Guide" document. See the toolbox/hardware/GIO_DRVR5.1 directory for the seperate source code example program as well as an unpdated ascii text file version of documentation. The gio_4.ps file in this directory is a replica of the file in toolbox/hardware/GIO_DRVR4.0.5. for the complete directory contents, including an ascii text file version of this postscript document, plus a separate source code file containing the source included in this document, please refer to the toolbox/hardware/GIO_DRVR54.0.5 directory. gio_4.ps: A postscript file of the chapter "Writing Kernel Level GIO Device Drivers for IRIX 4.0.x". This is a 26 page document intended as an addition to the existing "IRIX Device Driver Programming Guide". It contains a description of the specific needs of a GIO device driver and includes segments of source code as examples. The chapter has sections addressing the following topics: * Determining GIO Device Addresses * Including GIO Device Drivers in the Kernel * Writing edtinit() * GIO-Specific System Calls * GIO Interrupt Handler * Programmed I/O (PIO) * DMA Operations * GIO Devices with Hardware Supported Scatter- Gather Capability * DMA on GIO Devices with No Scatter-Gather Capability * Device Driver Example The device driver example is for a mythical (i.e. non- existent) device. Even though the example is for a non-existent device, it does compile cleanly. It can be used as a starting point for creating your own GIO device driver.
Documentation