linux/Documentation/scsi/in2000.txt
<<
>>
Prefs
   1
   2UPDATE NEWS: version 1.33 - 26 Aug 98
   3
   4   Interrupt management in this driver has become, over
   5   time, increasingly odd and difficult to explain - this
   6   has been mostly due to my own mental inadequacies. In
   7   recent kernels, it has failed to function at all when
   8   compiled for SMP. I've fixed that problem, and after
   9   taking a fresh look at interrupts in general, greatly
  10   reduced the number of places where they're fiddled
  11   with. Done some heavy testing and it looks very good.
  12   The driver now makes use of the __initfunc() and
  13   __initdata macros to save about 4k of kernel memory.
  14   Once again, the same code works for both 2.0.xx and
  15   2.1.xx kernels.
  16
  17UPDATE NEWS: version 1.32 - 28 Mar 98
  18
  19   Removed the check for legal IN2000 hardware versions:
  20   It appears that the driver works fine with serial
  21   EPROMs (the 8-pin chip that defines hardware rev) as
  22   old as 2.1, so we'll assume that all cards are OK.
  23
  24UPDATE NEWS: version 1.31 - 6 Jul 97
  25
  26   Fixed a bug that caused incorrect SCSI status bytes to be
  27   returned from commands sent to LUNs greater than 0. This
  28   means that CDROM changers work now! Fixed a bug in the
  29   handling of command-line arguments when loaded as a module.
  30   Also put all the header data in in2000.h where it belongs.
  31   There are no longer any differences between this driver in
  32   the 2.1.xx source tree and the 2.0.xx tree, as of 2.0.31
  33   and 2.1.45 (or is it .46?) - this makes things much easier
  34   for me...
  35
  36UPDATE NEWS: version 1.30 - 14 Oct 96
  37
  38   Fixed a bug in the code that sets the transfer direction
  39   bit (DESTID_DPD in the WD_DESTINATION_ID register). There
  40   are quite a few SCSI commands that do a write-to-device;
  41   now we deal with all of them correctly. Thanks to Joerg
  42   Dorchain for catching this one.
  43
  44UPDATE NEWS: version 1.29 - 24 Sep 96
  45
  46   The memory-mapped hardware on the card is now accessed via
  47   the 'readb()' and 'readl()' macros - required by the new
  48   memory management scheme in the 2.1.x kernel series.
  49   As suggested by Andries Brouwer, 'bios_param()' no longer
  50   forces an artificial 1023 track limit on drives. Also
  51   removed some kludge-code left over from struggles with
  52   older (buggy) compilers.
  53
  54UPDATE NEWS: version 1.28 - 07 May 96
  55
  56   Tightened up the "interrupts enabled/disabled" discipline
  57   in 'in2000_queuecommand()' and maybe 1 or 2 other places.
  58   I _think_ it may have been a little too lax, causing an
  59   occasional crash during full moon. A fully functional
  60   /proc interface is now in place - if you want to play
  61   with it, start by doing 'cat /proc/scsi/in2000/0'. You
  62   can also use it to change a few run-time parameters on
  63   the fly, but it's mostly for debugging. The curious
  64   should take a good look at 'in2000_proc_info()' in the
  65   in2000.c file to get an understanding of what it's all
  66   about; I figure that people who are really into it will
  67   want to add features suited to their own needs...
  68   Also, sync is now DISABLED by default.
  69
  70UPDATE NEWS: version 1.27 - 10 Apr 96
  71
  72   Fixed a well-hidden bug in the adaptive-disconnect code
  73   that would show up every now and then during extreme
  74   heavy loads involving 2 or more simultaneously active
  75   devices. Thanks to Joe Mack for keeping my nose to the
  76   grindstone on this one.
  77
  78UPDATE NEWS: version 1.26 - 07 Mar 96
  79
  80   1.25 had a nasty bug that bit people with swap partitions
  81   and tape drives. Also, in my attempt to guess my way
  82   through Intel assembly language, I made an error in the
  83   inline code for IO writes. Made a few other changes and
  84   repairs - this version (fingers crossed) should work well.
  85
  86UPDATE NEWS: version 1.25 - 05 Mar 96
  87
  88   Kernel 1.3.70 interrupt mods added; old kernels still OK.
  89   Big help from Bill Earnest and David Willmore on speed
  90   testing and optimizing: I think there's a real improvement
  91   in this area.
  92   New! User-friendly command-line interface for LILO and
  93   module loading - the old method is gone, so you'll need
  94   to read the comments for 'setup_strings' near the top
  95   of in2000.c. For people with CDROM's or other devices
  96   that have a tough time with sync negotiation, you can
  97   now selectively disable sync on individual devices -
  98   search for the 'nosync' keyword in the command-line
  99   comments. Some of you disable the BIOS on the card, which
 100   caused the auto-detect function to fail; there is now a
 101   command-line option to force detection of a ROM-less card.
 102
 103UPDATE NEWS: version 1.24a - 24 Feb 96
 104
 105   There was a bug in the synchronous transfer code. Only
 106   a few people downloaded before I caught it - could have
 107   been worse.
 108
 109UPDATE NEWS: version 1.24 - 23 Feb 96
 110
 111   Lots of good changes. Advice from Bill Earnest resulted
 112   in much better detection of cards, more efficient usage
 113   of the fifo, and (hopefully) faster data transfers. The
 114   jury is still out on speed - I hope it's improved some.
 115   One nifty new feature is a cool way of doing disconnect/
 116   reselect. The driver defaults to what I'm calling
 117   'adaptive disconnect' - meaning that each command is
 118   evaluated individually as to whether or not it should be
 119   run with the option to disconnect/reselect (if the device
 120   chooses), or as a "SCSI-bus-hog". When several devices
 121   are operating simultaneously, disconnects are usually an
 122   advantage. In a single device system, or if only 1 device
 123   is being accessed, transfers usually go faster if disconnects
 124   are not allowed.
 125
 126
 127
 128The default arguments (you get these when you don't give an 'in2000'
 129command-line argument, or you give a blank argument) will cause
 130the driver to do adaptive disconnect, synchronous transfers, and a
 131minimum of debug messages. If you want to fool with the options,
 132search for 'setup_strings' near the top of the in2000.c file and
 133check the 'hostdata->args' section in in2000.h - but be warne! qcommand-line arg=lmentation1/scsi/in2000.txt#L34" id1="L341 class3r is ine"n (fis iyhe (e="L5r is ityou gne>   It a,or SMab  o> 124   are not allowed.
   are not allowed.
 _CLUSTERINGn't give an 'in2000'
ns:lso,ine"s"L73"e="_think_   There a eiated ift> 124   are not allowed.
   p"L63">   500 t people with swap partitions
  20ory-moaded bend/a> ettis it_st3769 ba-lir SMP. ssagespoe="qeinitchronous transfer code. Only
   Onn spmiseat /p with sync negotiation, you can
 126
 127
 127
 127
 127
  71
  71
 127
 127
 127
 127
 127
 108
  71
 127
 127
 127
UP1F"line" name="L127"> 127
 127
 125
 125
 127
 127
 127
 127
 127
 127
  53
   causedepe areuses. SoL109"> "L122earlicom for leg and difficult to explain - this
 127
 127
  56 115firsne" namee="L1difficult to explain - this

)al IN2000 hardware versions:
  53
 127
 127
 108
 110
Drew Eck46  difficult to explain - this
  9tribume="L1MackRgement s32"> "L1minameowIh sync negotiation, you can
   Iritt 72  dg fu  me="Lrm>
-m68k(!o> 124   are not allowed.
   deviwho are really into it will
  79
 110
 110
 102

"lino     l()'line" namhttp://s32"> evige.nett, sja c1/lxo">LXR nosyunityass=,e" namexpcoi102">l"L109"> 1l()line" nammedlto:lxo@lrm>
.no">lxo@lrm>
.noass=.
"searchresulin2000.subfoo co">
lxo.lrm>
.no ki">  933">eadl()line" namhttp://www.reapom #39;, s.no">Reapom "Lrm, s ASass=,e speid  10
l="cAdvi name="L90ertoughamxersable sie a 19c5.
"search_r/bodychr/htmlcl