From: drew@frisbee.cs.Colorado.EDU (Drew Eckhardt)
Newsgroups: comp.os.linux.announce
Subject: NCR53c810 driver, new release
Date: 8 Jul 1994 16:43:39 GMT
Approved: linux-announce@tc.cornell.edu (Lars Wirzenius)
Message-ID: <2vjvnr$sjm@hydra.Helsinki.FI>

ALPHA NCR53c810 SCSI PCI driver for Linux 1.1.19
	Release 3
	by Drew Eckhardt
	sponsored by iX Multiuser Multitasking Magazine
	Hannover, Germany
	email : hm@ix.de

BUG FIXES and new features in release 3 :

- The HDIO_GETGEO ioctl() is now supported, and in theory fdisk should
    run without problems, although nervous users may wish to cross-check
    the disk geometry with that returned by dparam.com.

- Support is provided for PCI BIOS chips which don't return a status
    code in the ah register as required to do so in Revision 2 of the 
    PCI BIOS specification.

- The kernel no longer panics if you try to use a SCSI-II device
    which implements extended contingent allegience conditions.

If your bug hasn't been fixed, you should still download the new 
driver, since _more_ debugging information is output.

Other notes :

- Currently, only one outstanding command is supported so access to 
    multiple SCSI devices will not be overlapped.  This will change
    after the disconnect/reconnect code is debugged (Priority : HIGH)

    The implications of this are that if you attempt to access 
    a tape drive, etc. or some other device which wants to
    hang arround on the SCSI bus for a while, the other SCSI
    devices on that bus will be inaccessable.

- Multiple commands per LUN are not supported.  I've measured a > 10%
    performance increase with NCR5380 chips where the generation of the
    next SCSI command was overlapped with one SCSI command's execution,
    and suspect that it may be even greater on the NCR53c810 chips. This
    will change. (PRIORITY : MODERATE)

- Target initiated synchronous negotiation hasn't been tested yet,
    since I didn't care to nuke one of my 'real' drives which does
    synchronous negotiation before I finished my lecture notes for 
    the Heidelberg conference.  So, you may want to disable 
    synchronous negotiation on your SCSI devices. (PRIORITY : HIGH)

- Likewise, the NCR driver does not yet negotiate for synchronous 
    transfers.  Again, this will change after the conference. (PRIORITY : 
    MODERATE)

- Although a Slackware boot floppy immage provided,  I don't have a nice 
    SLS /  Debian / Yggdrasil / name your favorite distribution boot floppy, 
    and will refer any distribution related questions, like
    
	 "How can I use the alpha driver to install my xxx distribution"

    or
	 "fdisk gives a division by zero error and dumps core so the 
	  install script won't run"

    to the SCSI-HOWTO or distribution maintainer if they are willing
    to coordinate alpha boot diskette releases with NCR53c810
    driver releases.

- memory mapped access is currently unsupported, and will remain so
    pending support for mapping things up in high memory (my 
    PCI boards are mapped starting at 48M) without conflicting
    with vmalloc() code, so you'll have to use i/o mapped access.
    (PRIORITY : LOW)

- Currently, only the NCR53c810 chip is supported.  Other NCR53c8xx
    chips will be supported after I find systems with these chips
    in them and modify the detection code.
    (PRIORITY : LOW)

    The NCR53c710 will be supported after all of the performance 
    features which should be enabled and working are and my
    NCR53c710 equipped loaner system arrives.
    (PRIORITY : LOW)

    I've decided on what I believe to be the best ways to implement
    NCR53c700 and NCR53c700-66 support - using the dsa_fixup() routine to 
    modify the main script whenever a context switch occurs, and 
    will provide minimal tech support for anyone looking to support
    those chips, but find those variants relatively uninteresting
    and don't plan on pursuing the matter too far.
    (PRIORITY : LOWEST)

- The binary distributions (kernel and slackware boot diskette) include
    the following device driver support :
    - MATH EMULATION
    - IDE disks
    - SCSI
	- Trantor T128
    	- NCR53c810
    	- SCSI disks
    	- SCSI CD ROMs
    	- SCSI generic
    	- SCSI tape
    - Networking
	- Intel ether express
	- SLIP
	- Loopback
	- Dummy
    - Filesystems
	- ISO 9660
	- Minix
	- Ext-2
	- MSDOS

    Ie, if you know what you're doing, and have some other local
    mass storage device, it should be  sufficient to bootstrap.  Note
    that you will need to boot the kernel image with LILO or use 
    rdev to modify the root device / video mode / etc. as appropriate.
	
- If you want to modify the NCR scripts, you'll need PERL, 
    since that's what the assembler was written in.  

    I have no plans to replace the NCR assembler with one written in 'C'
    since it works, is fast enough, and isn't required to reconfigure
    the kernel (.h files containing the assembler output are included).

- Source patches are against Linux 1.1.19.  Patches against a newer
    version will be provided after there's some consensus that the
    tty subsystem has been restored to a sane state, patches against 
    1.0.x will not be provided.

    There may be some problem with RCS strings in the patches,
    if that's all that shows up in the patch reject files, 
    there are no problems.

    Also, both versions of config.in used to generate the patches
    came from RCS.  If I forgot to edit the diff file you got,
    patch may prompt you for a file to patch for one of the 
    differences.

    This will be config.in.

If you can live with these restrictions, the files

ncr_src.3.tar.gz	- NCR53c810 source code, patches against 1.1.19
				(reportedly work with 1.1.24)
ncr_kern.3.gz		- NCR53c810 1.1.19 kernel, dd to disk
				and use rdev or boot with LILO
ncr_slack.3.gz		- NCR53c810 slackware BOOT DISK.  dd to disk,
				boot, and install slackware

have been uploaded to the /incoming directory on tsx-11.mit.edu,  
and in theory should find their way into the /pub/linux/ALPHA/scsi/ncr53c810 
directory and an ALPHA kernel in the near future.
-- 
Drew Eckhardt drew@Colorado.EDU
1970 Landcruiser FJ40 w/350 Chevy power
1982 Yamaha XV920J Virago


--
Mail submissions for comp.os.linux.announce to: linux-announce@tc.cornell.edu
PLEASE remember Keywords: and a short description of the software.
