scsi.txt 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. SCSI subsystem documentation
  2. ============================
  3. The Linux Documentation Project (LDP) maintains a document describing
  4. the SCSI subsystem in the Linux kernel (lk) 2.4 series. See:
  5. http://www.tldp.org/HOWTO/SCSI-2.4-HOWTO . The LDP has single
  6. and multiple page HTML renderings as well as postscript and pdf.
  7. It can also be found at:
  8. http://web.archive.org/web/*/http://www.torque.net/scsi/SCSI-2.4-HOWTO
  9. Notes on using modules in the SCSI subsystem
  10. ============================================
  11. The scsi support in the linux kernel can be modularized in a number of
  12. different ways depending upon the needs of the end user. To understand
  13. your options, we should first define a few terms.
  14. The scsi-core (also known as the "mid level") contains the core of scsi
  15. support. Without it you can do nothing with any of the other scsi drivers.
  16. The scsi core support can be a module (scsi_mod.o), or it can be built into
  17. the kernel. If the core is a module, it must be the first scsi module
  18. loaded, and if you unload the modules, it will have to be the last one
  19. unloaded. In practice the modprobe and rmmod commands (and "autoclean")
  20. will enforce the correct ordering of loading and unloading modules in
  21. the SCSI subsystem.
  22. The individual upper and lower level drivers can be loaded in any order
  23. once the scsi core is present in the kernel (either compiled in or loaded
  24. as a module). The disk driver (sd_mod.o), cdrom driver (sr_mod.o),
  25. tape driver ** (st.o) and scsi generics driver (sg.o) represent the upper
  26. level drivers to support the various assorted devices which can be
  27. controlled. You can for example load the tape driver to use the tape drive,
  28. and then unload it once you have no further need for the driver (and release
  29. the associated memory).
  30. The lower level drivers are the ones that support the individual cards that
  31. are supported for the hardware platform that you are running under. Those
  32. individual cards are often called Host Bus Adapters (HBAs). For example the
  33. aic7xxx.o driver is used to control all recent SCSI controller cards from
  34. Adaptec. Almost all lower level drivers can be built either as modules or
  35. built into the kernel.
  36. ** There is a variant of the st driver for controlling OnStream tape
  37. devices. Its module name is osst.o .