Linux Unleashed, Third Edition:SCSI Device Support
-->
Previous
Table of Contents
Next
Chapter 36SCSI Device Support
by Tim Parker
In This Chapter
Newer SCSI standards
Supported SCSI devices
SCSI device drivers
Troubleshooting SCSI devices
SCSI (Small Computer System Interface), pronounced scuzzy, is a standard method of interfacing between a computer and peripherals. It has many advantages over other interconnect systems such as IDE, albeit generally at a higher price.
SCSI uses a dedicated controller card within the computer from which a chain of devices can be connected. All the SCSI devices are coupled using a flat-ribbon cable (internally) or a shielded cable (externally). With the older SCSI standards, each SCSI chain can support seven devices. Each device has a SCSI ID number from 0 to 7. Usually, the controller card is set to use number 7 while bootable SCSI hard drives are set to use SCSI ID 0. The other numbers are available for other devices, although each ID can be used by only one device. Newer SCSI standards allow up to 15 devices and the controller card, with the devices numbered 0 through 15.
The advantages of SCSI are primarily in its high speed. Also, with most SCSI devices, all the electronics needed to control them are attached to the device, making it easier for devices to talk to one another. The other major advantage of SCSI is that you dont have to do anything special to configure the system. When you plug in a new SCSI device (such as a scanner) with a unique SCSI ID, the system controller card recognizes it because the onboard electronics identify the type of device to the card automatically.
SCSI devices must have a terminator at each end of the chain. Terminators are a set of resistors that provide an electrical indication that the chain ends at that point. There should be only two terminators on each SCSI chain, one at each end. Most SCSI controller cards have a set of switches or a block of removable resistors that terminate one end, while SCSI devices have a switch or resistors that allow that device to automatically terminate the chain. Some devices are clever enough to sense that they are the last SCSI device in a chain, and they terminate without any intervention from you.
SCSI devices can communicate with one another quickly over the chain. A scanner can send instructions straight to a hard drive, and a tape drive can dump information straight to another SCSI device without involving the operating system too much. This helps the speed and makes SCSI devices particularly flexible.
Newer SCSI Standards
A few years ago, there was only one type of SCSI system. Now, there are at least five different SCSI versions, some compatible with one another and some not. The five types of SCSI really break down into three categories, called SCSI-I, SCSI-II, and SCSI-III. SCSI-I is the traditional 8-bit wide SCSI chain supporting seven devices. The connectors on SCSI-I devices are wide 50-pin rectangular affairs. SCSI-I was limited in speed, so several faster systems have become available. Its important not to mix up the name of the SCSI system and the type of connector it uses, because the two do not always correspond. SCSI-II usually allows 15 devices on a chain and has a much smaller connector, D-shaped with 50 pins, for its devices. SCSI-II allows 15 devices, too, but has a much wider 68-pin D-shaped connector than SCSI-II.
Youre likely going to hear all kinds of terms to do with SCSI, such as Fast and Wide, UltraWide, and so on. The terms relate to whether the internal SCSI connections are 50 or 68 pins, and whether the external is 40 or 68 pins. Internal and external connections can be different widths which makes this all a little confusing. Table 41.1 shows the different SCSI standards and their properties:
Table 41.1. SCSI Standards, names, and properties.
Name
Host Bus
Internal SCSI Connectors
External SCSI Connectors
Maximum Speed (Mbps)
There are some 40Mbps SCSI systems available, but they tend not to be compatible with too many devices at that speed. Differential SCSI, mentioned in the last row in the table, is a special kind of SCSI that handles voltages in the cables differently. This allows for longer SCSI chains and faster speeds. So far, there are only a few differential SCSI devices available, although CD-ROM and tape drives are slowly appearing. Differential SCSI tends to be more expensive than standard SCSI devices. Differential SCSI devices cant be mixed on the same chain with nondifferential devices.
We wont go into all the details of SCSI connectivity and architecture because you dont need to know these details for Linux. If you need more information, most SCSI controller cards include a good description of the theory in their accompanying documen-tation.
Supported SCSI Devices
You cant assume that because Linux supports SCSI, any SCSI device will work. Most versions of the operating system have a hardware compatibility file in the distribution set that lists all devices that have been tested and known to work properly with the SCSI system. Check this file carefully before you buy a new device or controller card! Some devices and cards simply dont work with Linux.
Some SCSI devices are shipped with their own kernel patches. You will have to make sure the patches correspond to the version of the Linux kernel you are using, then rebuild the kernel with the new drivers in place. If the devices dont have a Linux kernel patch, check with the manufacturer or Linux distribution sites.