home *** CD-ROM | disk | FTP | other *** search
/ CD Actual 8 / CDACTUAL8.iso / docs / kernel-2.0 / scsi / readme.am5 < prev    next >
Encoding:
Text File  |  1996-07-11  |  8.8 KB  |  233 lines

  1. SUBJECT
  2. -------
  3. AM53/79C974 PC-SCSI Driver
  4.  
  5.  
  6. DISCLAIMER
  7. ----------
  8. ***  THIS SHOULD BE CONSIDERED AS BETA SOFTWARE  ***
  9. ***  USE AT YOUR OWN RISK!                       ***
  10.  
  11.  
  12. Copyright
  13. ---------
  14. The architecture and much of the code of this device driver was 
  15. originally developed by Drew Eckhardt for the NCR5380. The 
  16. following copyrights apply:
  17.  
  18. For the architecture and all pieces of code which can also be found 
  19. in the NCR5380 device driver:
  20. Copyright 1993, Drew Eckhardt
  21.   Visionary Computing 
  22.   (Unix and Linux consulting and custom programming)
  23.   drew@colorado.edu
  24.   +1 (303) 666-5836
  25.  
  26. The AM53C974_nobios_detect code was originally developed by
  27. Robin Cutshaw (robin@xfree86.org) and is used here in a 
  28. slightly modified form.
  29.  
  30. For the remaining code:
  31.   Copyright 1994, D. Frieauff
  32.   EMail: fri@rsx42sun0.dofn.de
  33.   Phone: x49-7545-8-2256 , x49-7541-42305
  34.  
  35.  
  36. Version
  37. -------
  38. AM53/79C974 (PC-SCSI) Linux driver ALPHA release 0.5, 19 November 1995
  39.  
  40.  
  41. Changelog
  42. ---------
  43. 0.1 -> 0.2: 
  44.   - Extended message handling re-written to eliminate 'invalid message 17' bug
  45.   - Parameters of AM53C974_intr adapted
  46.   - Debug messages structured
  47.   - Spelling improved
  48. 0.2 -> 0.3:
  49.   - README file updated -- please read this file up to the end!
  50.   - Automatic scanning of io_port and irq implemented; no need for BIOS32 
  51.     anymore
  52.   - Improved configuration (now via LILO parameter string)
  53.   - Cleanup of probing and initialisation code
  54.   - Improved sync. negotiation (can be setup individually for every device)
  55.   - Improved/ debugged code for reception of ext. messages
  56. 0.3 -> 0.4:
  57.   - Improved PCI probing and initialisation code
  58.   - Compatibility changes for Linux 1.3.x
  59. 0.4 -> 0.5:
  60.   - Compatibility changes for Linux 1.3.42
  61.  
  62. Bugs & Todo
  63. -----------
  64.  - Add proc info function
  65.  - Support SCSI-2 tagged queuing
  66.  - Finalize abort code 
  67.  
  68. Features
  69. --------
  70. This driver supports asynchronous and synchronous SCSI-I and SCSI-II devices.
  71. It is capable of transfer rate and synchronous negotiation (see below).
  72. The driver supports scatter-gather. Transfers are DMA based, but do not 
  73. (yet) make use of the AM53/79C974 MDL mode.
  74. Max. transfer rate is 10MHz (whatever this is in real life). The transfer
  75. rate is negotiated with each device (see dmesg output).
  76. The AM53/79C974 has a 96-byte DMA FIFO to the PCI bus and a 16-byte SCSI
  77. FIFO. It provides active negation and glitch suppression functions.
  78. Burst DMA transfer rate is 132 MBytes/sec.
  79.  
  80.  
  81. Configuration
  82. -------------
  83. The following communication characteristics can be set individually  for every
  84. SCSI device on the bus:
  85.   - enable/disable sync. negotiation
  86.   - transfer rate
  87.   - asynchronous or synchronous communication
  88.   - in case of sync. communication, the sync. offset
  89.  
  90. The sync. offset specifies the number of bytes that can be sent or 
  91. received from the SCSI bus without ACK resp. REQ signal.
  92. CAUTION: USING SYNCHRONOUS MODE ON LONG SCSI CABLES MAY CAUSE 
  93.          COMMUNICATION PROBLEMS LEADING TO LOSS OF DATA. 
  94.  
  95. The default setting of the SCSI communication parameters is as follows:
  96.   - no negotiation
  97.   - 5.0 MHz transfer rate
  98.   - asynchronous mode
  99.   - zero offset
  100. The parameters can be modified by passing a string with the following syntax to 
  101. the kernel: AM53C974=host-scsi-id,target-scsi-id,max-rate,max-offset
  102. The parameters will be used by the driver as negotiation basis.
  103. The range of the rate parameter is 3 to 10 MHz.
  104. The range of the sync. offset parameter is 0 to 15 bytes. A value of 0 denotes 
  105. asynchronous comm. mode.
  106. If the target cannot cope with the specified transfer rate, sync. mode or sync.
  107. offset, the negotiation result will differ from the specified values.
  108. The negotiation result is printed out at the end of the negotiation process
  109. (to read it, use the dmesg program or the appropriate syslog).
  110. The parameter strings (blank separated) can be passed to the kernel at the
  111. LILO prompt, or as part of the LILO configuration file.
  112.  
  113. For example, the string "AM53C974=7,2,8,15" would be interpreted as follows:
  114.  "For communication between the controller with SCSI-ID 7 and the device with
  115.  SCSI-ID 2 a transfer rate of 8MHz in synchronous mode with max. 15 bytes offset
  116.  should be negotiated".
  117.  
  118. As an example, here my LILO configuration file:
  119.   boot = /dev/sda
  120.   compact
  121.   #prompt
  122.   delay = 50    # optional, for systems that boot very quickly
  123.   vga = normal    # force sane state
  124.   ramdisk = 0    # paranoia setting
  125.   root = current  # use "current" root
  126.   image = /usr/src/linux/arch/i386/boot/zImage
  127.     label = linux
  128.     append = "AM53C974=7,0,10,0 AM53C974=7,1,10,0 AM53C974=7,2,10,15 AM53C974=7,4,10,0 AM53C974=7,5,10,0"
  129.     read-only
  130.   other = /dev/sda4
  131.     label = os2
  132.   other = /dev/sdb3
  133.     loader = /boot/any_d.b
  134.     table = /dev/sdb
  135.     label = setup
  136.  
  137. The same parameters at the LILO prompt:
  138.   LILO boot: linux AM53C974=7,0,10,0 AM53C974=7,1,10,0 AM53C974=7,2,10,15 AM53C974=7,4,10,0 AM53C974=7,5,10,0
  139.  
  140. You can override parameters specified in the LILO configuration file by 
  141. parameters specified on the LILO command line.
  142.  
  143.  
  144. BIOS usage
  145. ----------
  146. Version 0.4 of the driver will use the BIOS, if available. Otherwise
  147. it will try its internal PCI scan and access routines.
  148. The driver assumes that the controller's SCSI-ID (usually 7) has been
  149. correctly loaded by the BIOS into the controller's register during
  150. system boot. If the driver detects that the controller's SCSI ID is not 
  151. '7' it will print out a warning. If this happens to you please correct
  152. setting of the controller's SCSI-ID. If it is wrong, then edit the 
  153. AM53C974_SCSI_ID definition in file AM53C974.h accordingly.
  154.  
  155.  
  156. Test environment
  157. ----------------
  158. This driver was tested on a Compaq XL566 with the following SCSI configuration:
  159. 2 x HP C2247 fixed disk (internal, rate=10MHz, async.)
  160. 1 x Micropolis 1624 fixed disk (external, rate=8MHz, sync., offset=15 bytes)
  161. 1 x Wangtek W5525ES cartridge streamer (internal, rate=5MHz, async.)
  162. 1 x Toshiba XM-3301B CD-ROM (external, rate=5MHz, async.)
  163.  
  164.  
  165. Known problems
  166. --------------
  167.  - Compaq/Matsushita CD-ROM:
  168.    Use of this device with AM53C974 driver version 0.2 caused the kernel to
  169.    hang during Linux boot. If you encounter the problem, don't enable sync.
  170.    negotiation with the CD-ROM, i.e. simply don't specify comm. parameters 
  171.    for this device on the LILO commandline or configuration file. 
  172.    The driver will thus use its default for the CD-ROM, which is 5MHz 
  173.    transfer rate asynch and no sync. negotiation.
  174.  - Some disks cause problems.
  175.  
  176.  
  177. What to do if there is a SCSI problem possibly related to the driver
  178. --------------------------------------------------------------------
  179. Read Klaus Liedl's WWW page (http://www-c724.uibk.ac.at/XL/).
  180. In case this does not help:
  181. Send me a complete description of the problem, including your SCSI 
  182. configuration plus as much debugging information as possible. 
  183. Don't wait until I ask you for this information. To enable the 
  184. generation of debugging output, remove the comments from the following 
  185. definitions in the AM53C974.h file:
  186.     AM53C974_DEBUG
  187.     AM53C974_DEBUG_MSG
  188.     AM53C974_DEBUG_KEYWAIT
  189.     AM53C974_DEBUG_INFO
  190.     AM53C974_DEBUG_INTR
  191. With these definitions enabled, the driver will enter single-step mode during 
  192. Linux boot. Use the spacebar for stepping.
  193. Take note of at least the last 10 printout sections (marked by dashes) before 
  194. the crash/hangup or whatever happens and send me all of this information via 
  195. email. If the system can boot, use the syslogd daemon to record the debugging 
  196. output. Maybe you can use the ramdisk for this purpose too (if necessary, kindly
  197. ask K. Liedl (Klaus.Liedl@uibk.ac.at) for support, he knows how to do it -- 
  198. I never tried). Stay in email contact with me. Be aware that the following 
  199. weeks/months could be the worst of your life.
  200. Note: If single-stepping takes up too much time, you can try to let the driver 
  201. catch the problem by pressing the 'r' key. The driver will automatically enter
  202. single-step mode if it has detected something weird.
  203.  
  204.  
  205. Author's Contact Address
  206. -----------------------
  207. Email: fri@rsx42sun0.dofn.de
  208. Phone: x49-7545-2256 (office), x49-7541-42305 (home)
  209. Home address: D. Frieauff, Stockerholzstr. 27, 88048 Friedrichshafen, Germany
  210.  
  211.  
  212. !!!! Important Notice !!!!
  213. -----------------------------
  214. - Klaus Liedl maintains an excellent WWW page about Linux on Compaq XL.
  215.   It includes an FAQ, lots of tips & tricks as well as downloadable 
  216.   boot disk images. The URL is: http://www-c724.uibk.ac.at/XL/
  217. - Volunteer wanted for further maintenance of this driver software. I
  218.   don't have the time anymore to do serious support as some of you will know.
  219.  
  220. Literature
  221. ----------
  222.  - AMD AM53C974 PC-SCSI Technical Manual, publication #18624B
  223.  - Amendment to the AMD AM53C974 PC-SCSI Technical Manual
  224.  - AMD AM79C974 PC-NET Datasheet, publication #18681
  225.  - Amendment to the AMD AM79C974 PC-NET Datasheet
  226.  
  227.  
  228. THANKS to
  229. ---------
  230.  - Drew Eckhardt, Robin Cutshaw, K. Liedl, Robert J. Pappas, A. Grenier, 
  231.    Mark Stockton, David C. Niemi, Ben Craft, and many others who have helped
  232.  
  233.