README file for the Linux g_NCR5380 driver.

(c) 1993 Drew Eckhard
NCR53c400 extensions (c) 1994,1995,1996 Kevin Lentin

This file documents the NCR53c400 extensions by Kevin Lentin and some
enhancements to the NCR5380 core.

This driver supports both NCR5380 and NCR53c400 cards in port or memory
mapped modes. Currently this driver can only support one of those mapping
modes at a time but it does support both of these chips at the same time.
The next release of this driver will support port & memory mapped cards at
the same time. It should be able to handle multiple different cards in the
same machine.

The drivers/scsi/Makefile has an override in it for the most common
NCR53c400 card, the Trantor T130B in its default configuration:
	Port: 0x350
	IRQ : 5

The NCR53c400 does not support DMA but it does have Pseudo-DMA which is
supported by the driver.

If the default configuration does not work for you, you can use the kernel
command lines (eg using the lilo append command):
	ncr5380=port,irq,dma
	ncr53c400=port,irq
or
	ncr5380=base,irq,dma
	ncr53c400=base,irq

The driver does not probe for any addresses or ports other than those in
the OVERRIDE or given to the kernel as above.

This driver provides some information on what it has detected in
/proc/scsi/g_NCR5380/x where x is the scsi card number as detected at boot
time. More info to come in the future.

When NCR53c400 support is compiled in, BIOS parameters will be returned by
the driver (the raw 5380 driver does not and I don't plan to fiddle with
it!).

This driver works as a module.
When included as a module, parameters can be passed on the insmod/modprobe
command line:
  ncr_irq=xx   the interrupt
  ncr_addr=xx  the port or base address (for port or memory
               mapped, resp.)
  ncr_dma=xx   the DMA
  ncr_5380=1   to set up for a NCR5380 board
  ncr_53c400=1 to set up for a NCR53C400 board
e.g.
modprobe g_NCR5380 ncr_irq=5 ncr_addr=0x350 ncr_5380=1
  for a port mapped NCR5380 board or
modprobe g_NCR5380 ncr_irq=255 ncr_addr=0xc8000 ncr_53c400=1
  for a memory mapped NCR53C400 board with interrupts disabled.

(255 should be specified for no or DMA interrupt, 254 to autoprobe for an 
     IRQ line if overridden on the command line.)


Kevin Lentin
K.Lentin@cs.monash.edu.au
