Subject: 1.1-Beta install problem with Buslogic controller

From: "Larry Loos" <[email-masked]>
Date: Thu, 6 Jun 1996 23:08:07 -0600

I was trying to install the 1.1-Beta of Debian Linux and my system 
hung during the intial boot. I was using the Jun 3 version of 
boot1440.bin.

My system is a 100 MHz Pentium PCI box with 32 MB RAM. It has an
Award Bios. I have a Buslogic BT-956C PCI Wide SCSI Host Adapter
with a Fujitzu 2 GB hard disk (it has 2075 cylinders).

Boot finds my Buslogic controller and says it is initialized 
succesfully. It detects the Fujitzu drive.

The last line is:
Detected scsi disk sda at scsi0, channel 0, id 0, lun 0

It then hangs with the drive light on.

I also have a scsi cd-rom and tape drive installed. I was surprised 
that it claims:

scsi0:   Target 0: Synchronous at 10.0 mega-transfers/second

I thought the 956C was a wide FAST scsi controller that ran at 20 
megabits per second. Is that the problem? Or is it the fact that DOS 
(I have a msdos partition on /dev/sda1) thinks it has only 1024 
cylinders?

I know the machine is okay because I had been using it to run a 
Slackware version of Linux with kernel 1.2.13. Also the Slackware 
3.0.3 boot disk recognizes the drive proberly and will allow me to 
boot. I quit after fdisk'ing the drive because I decided I wanted a 
more upgradable system.

Using the old slackware install I never could get LILO to work but 
Loadlin was fine.

Please don't tell me I must use Slackware or Red Hat.

Larry Loos
Show-Me Net            e-mail: [email-masked]
1417 N Henderson         http://www.showme.net/
Cape Girardeau, MO 63701
  314/334-9322

---

From: [email-masked] (Bruce Perens)
Date: Thu, 6 Jun 96 22:33 PDT

Larry Loos <[email-masked]>:
> I was surprised that it claims:
> megabits per second.

The transfer number is correct. It does the same number of transfers
per second as the narrow devices, but moves twice as much data in each
transfer. Of course this is only to "wide" devices.

> Slackware version of Linux with kernel 1.2.13.

OK, I have appended a long list of driver configuration arguments to
the end of this message. The driver is different since 1.2.13 . Please
try to use the arguments to disable stuff like tagged queueing. You would
use them at the "boot: " prompt of the installation floppy, and you would
have to edit /etc/lilo.config to put them in your LILO configuration
or give them as arguments to LOADLIN.

IF you can't figure it out, please write to Leonard N. Zubkoff
at <[email-masked]>. He is the author of the driver, and he wants
to know about any cases where it does not work. Even if you do figure
it out, it might be a good idea to tell him what you had to do.

> Using the old slackware install I never could get LILO to work but 

Sometimes this is a BIOS problem. If LILO still doesn't work, try to use
it on a partition that is all below 1024 cylinders.

> Please don't tell me I must use Slackware or Red Hat.

They don't yet offer the 2.0 kernel yet and we do, that's all. Falling back
to an older kernel is easy enough to do with Debian, but I bet you will
be able to work around this.

	Thanks

	Bruce
/*
  BusLogic_Setup handles processing of Kernel Command Line Arguments.

  For the BusLogic driver, a Kernel command line entry comprises the driver
  identifier "BusLogic=" optionally followed by a comma-separated sequence of
  integers and then optionally followed by a comma-separated sequence of
  strings.  Each command line entry applies to one BusLogic Host Adapter.
  Multiple command line entries may be used in systems which contain multiple
  BusLogic Host Adapters.

  The first integer specified is the I/O Address at which the Host Adapter is
  located.  If unspecified, it defaults to 0 which means to apply this entry to
  the first BusLogic Host Adapter found during the default probe sequence.  If
  any I/O Address parameters are provided on the command line, then the default
  probe sequence is omitted.

  The second integer specified is the Tagged Queue Depth to use for Target
  Devices that support Tagged Queuing.  The Queue Depth is the number of SCSI
  commands that are allowed to be concurrently presented for execution.  If
  unspecified, it defaults to 0 which means to use a value determined
  automatically based on the Host Adapter's Total Queue Depth and the number,
  type, speed, and capabilities of the detected Target Devices.  For Host
  Adapters that require ISA Bounce Buffers, the Tagged Queue Depth is
  automatically set to BusLogic_TaggedQueueDepth_BB to avoid excessive
  preallocation of DMA Bounce Buffer memory.  Target Devices that do not
  support Tagged Queuing use a Queue Depth of BusLogic_UntaggedQueueDepth.

  The third integer specified is the Bus Settle Time in seconds.  This is
  the amount of time to wait between a Host Adapter Hard Reset which initiates
  a SCSI Bus Reset and issuing any SCSI Commands.  If unspecified, it defaults
  to 0 which means to use the value of BusLogic_DefaultBusSettleTime.

  The fourth integer specified is the Local Options.  If unspecified, it
  defaults to 0.  Note that Local Options are only applied to a specific Host
  Adapter.

  The fifth integer specified is the Global Options.  If unspecified, it
  defaults to 0.  Note that Global Options are applied across all Host
  Adapters.

  The string options are used to provide control over Tagged Queuing and Error
  Recovery. If both Tagged Queuing and Error Recovery strings are provided, the
  Tagged Queuing specification string must come first.

  The Tagged Queuing specification begins with "TQ:" and allows for explicitly
  specifying whether Tagged Queuing is permitted on Target Devices that support
  it.  The following specification options are available:

  TQ:Default		Tagged Queuing will be permitted based on the firmware
			version of the BusLogic Host Adapter and based on
			whether the Tagged Queue Depth value allows queuing
			multiple commands.

  TQ:Enable		Tagged Queuing will be enabled for all Target Devices
			on this Host Adapter overriding any limitation that
			would otherwise be imposed based on the Host Adapter
			firmware version.

  TQ:Disable		Tagged Queuing will be disabled for all Target Devices
			on this Host Adapter.

  TQ:<Per-Target-Spec>	Tagged Queuing will be controlled individually for each
			Target Device.  <Per-Target-Spec> is a sequence of "Y",
			"N", and "X" characters.  "Y" enabled Tagged Queuing,
			"N" disables Tagged Queuing, and "X" accepts the
			default based on the firmware version.  The first
			character refers to Target Device 0, the second to
			Target Device 1, and so on; if the sequence of "Y",
			"N", and "X" characters does not cover all the Target
			Devices, unspecified characters are assumed to be "X".

  Note that explicitly requesting Tagged Queuing may lead to problems; this
  facility is provided primarily to allow disabling Tagged Queuing on Target
  Devices that do not implement it correctly.

  The Error Recovery Strategy specification begins with "ER:" and allows for
  explicitly specifying the Error Recovery action to be performed when
  ResetCommand is called due to a SCSI Command failing to complete
  successfully.  The following specification options are available:

  ER:Default		Error Recovery will select between the Hard Reset and
			Bus Device Reset options based on the recommendation
			of the SCSI Subsystem.

  ER:HardReset		Error Recovery will initiate a Host Adapter Hard Reset
			which also causes a SCSI Bus Reset.

  ER:BusDeviceReset	Error Recovery will send a Bus Device Reset message to
			the individual Target Device causing the error.  If
			Error Recovery is again initiated for this Target
			Device and no SCSI Command to this Target Device has
			completed successfully since the Bus Device Reset
			message was sent, then a Hard Reset will be attempted.

  ER:None		Error Recovery will be suppressed.  This option should
			only be selected if a SCSI Bus Reset or Bus Device
			Reset will cause the Target Device to fail completely
			and unrecoverably.

  ER:<Per-Target-Spec>	Error Recovery will be controlled individually for each
			Target Device.  <Per-Target-Spec> is a sequence of "D",
			"H", "B", and "N" characters.  "D" selects Default, "H"
			selects Hard Reset, "B" selects Bus Device Reset, and
			"N" selects None.  The first character refers to Target
			Device 0, the second to Target Device 1, and so on; if
			the sequence of "D", "H", "B", and "N" characters does
			not cover all the possible Target Devices, unspecified
			characters are assumed to be "D".
*/
--
Pixar's "Toy Story": Over 1/3 Billion dollars world box office so far.

Bruce Perens AB6YM          [email-masked]            http://www.hams.com/