Problems with BSD ncr53c800 driver

Michael Meissner (meissner@cygnus.com)
Sat, 13 Jul 1996 20:43:02 -0400


I have a Pentium (90 Mhz, 48 meg memory, 1 1 gig EIDE disk, 1 2 gig
Seagate Barracuda, 1 Toshiba 4x CDROM, 1 DDS-1 Archive tape drive,
3C509 ethernet), that has been happily running the standard NCR scsi
driver (the 53c7xx,8xx driver) since I got the machine setup in
January of 1995, through various kernels including the 2.0 kernel. I
decided to take the BSD driver (53c8xx) for a spin when 2.0.6 came
out. I started a long compile, and went home. My nightly gzip + dump
all disks to DAT and rewind/verify the dump kicked in while the build
was going on, and I got the following errors:

Jul 12 12:45:34 tiktok syslogd 1.3-0: restart.
Jul 12 12:45:34 tiktok kernel: klogd 1.3-0, log source = /proc/kmsg started.
Jul 12 12:45:35 tiktok kernel: Cannot find map file.
Jul 12 12:45:35 tiktok kernel: Console: 16 point font, 400 scans
Jul 12 12:45:35 tiktok kernel: Console: colour VGA+ 80x25, 1 virtual console (max 63)
Jul 12 12:45:35 tiktok kernel: pcibios_init : BIOS32 Service Directory structure at 0x000f0120
Jul 12 12:45:35 tiktok kernel: pcibios_init : BIOS32 Service Directory entry at 0xf13ec
Jul 12 12:45:35 tiktok kernel: pcibios_init : PCI BIOS revision 2.10 entry at 0xf13d0
Jul 12 12:45:35 tiktok kernel: Probing PCI hardware.
Jul 12 12:45:35 tiktok kernel: PCI bridge optimization.
Jul 12 12:45:35 tiktok kernel: Cache L2: Not supported.
Jul 12 12:45:35 tiktok kernel: CPU-PCI posted write: on.
Jul 12 12:45:35 tiktok kernel: CPU-Memory posted write: on.
Jul 12 12:45:35 tiktok kernel: PCI-Memory posted write: on.
Jul 12 12:45:35 tiktok kernel: PCI burst: on.
Jul 12 12:45:35 tiktok kernel: Calibrating delay loop.. ok - 36.04 BogoMIPS
Jul 12 12:45:35 tiktok kernel: Memory: 46896k/49152k available (864k kernel code, 384k reserved, 1008k data)
Jul 12 12:45:35 tiktok kernel: Swansea University Computer Society NET3.035 for Linux 2.0
Jul 12 12:45:35 tiktok kernel: NET3: Unix domain sockets 0.12 for Linux NET3.035.
Jul 12 12:45:35 tiktok kernel: Swansea University Computer Society TCP/IP for NET3.034
Jul 12 12:45:35 tiktok kernel: IP Protocols: IGMP, ICMP, UDP, TCP
Jul 12 12:45:35 tiktok kernel: Swansea University Computer Society IPX 0.34 for NET3.035
Jul 12 12:45:35 tiktok kernel: IPX Portions Copyright (c) 1995 Caldera, Inc.
Jul 12 12:45:35 tiktok kernel: Appletalk 0.17 for Linux NET3.035
Jul 12 12:45:35 tiktok kernel: Checking 386/387 coupling... Ok, fpu using exception 16 error reporting.
Jul 12 12:45:35 tiktok kernel: Checking 'hlt' instruction... Ok.
Jul 12 12:45:35 tiktok kernel: Linux version 2.0.6 (meissner@tiktok.cygnus.com) (gcc version 2.7.2) #3 Fri Jul 12 11:40:57 EDT 1996
Jul 12 12:45:35 tiktok kernel: Serial driver version 4.13 with no serial options enabled
Jul 12 12:45:35 tiktok kernel: tty00 at 0x03f8 (irq = 4) is a 16550A
Jul 12 12:45:35 tiktok kernel: tty01 at 0x02f8 (irq = 3) is a 16550A
Jul 12 12:45:35 tiktok kernel: lp1 at 0x0378, (polling)
Jul 12 12:45:35 tiktok kernel: Real Time Clock Driver v1.07
Jul 12 12:45:35 tiktok kernel: Sound initialization started
Jul 12 12:45:35 tiktok kernel: <Sound Blaster 16 (4.11)> at 0x220 irq 5 dma 1,6
Jul 12 12:45:35 tiktok kernel: <Sound Blaster 16> at 0x330 irq 5 dma 0
Jul 12 12:45:35 tiktok kernel: <Yamaha OPL3 FM> at 0x388
Jul 12 12:45:35 tiktok kernel: Sound initialization complete
Jul 12 12:45:35 tiktok kernel: ide0: buggy RZ1000 interface: disabled read-ahead
Jul 12 12:45:35 tiktok kernel: hda: WDC AC31000H, 1033MB w/128kB Cache, LBA, CHS=525/64/63
Jul 12 12:45:35 tiktok kernel: ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
Jul 12 12:45:35 tiktok kernel: Floppy drive(s): fd0 is 1.44M
Jul 12 12:45:35 tiktok kernel: Started kswapd v 1.4.2.2
Jul 12 12:45:35 tiktok kernel: FDC 0 is a post-1991 82077
Jul 12 12:45:35 tiktok kernel: ncr53c8xx : at PCI bus 0, device 6, function 0
Jul 12 12:45:35 tiktok kernel: ncr_attach: unit=0 chip=810 base=ffbffc00, io_port=fc00, irq=9
Jul 12 12:45:35 tiktok kernel: ncr53c810-0: using memory mapped IO at virtual address 0x3839c00
Jul 12 12:45:35 tiktok kernel: ncr53c810-0: requesting shared irq 9 (dev_id=0x1c068)
Jul 12 12:45:35 tiktok kernel: ncr53c810-0: restart (scsi reset).
Jul 12 12:45:35 tiktok kernel: scsi0 : ncr53c8xx (rel 1.12a)
Jul 12 12:45:35 tiktok kernel: scsi : 1 host.
Jul 12 12:45:35 tiktok kernel: ncr53c810-0-<target 0, lun 0>: using tagged command queueing, up to 4 cmds/lun
Jul 12 12:45:35 tiktok kernel: Vendor: SEAGATE Model: ST12550N Rev: 0014
Jul 12 12:45:35 tiktok kernel: Type: Direct-Access ANSI SCSI revision: 02
Jul 12 12:45:35 tiktok kernel: Detected scsi disk sda at scsi0, channel 0, id 0, lun 0
Jul 12 12:45:35 tiktok kernel: Vendor: TOSHIBA Model: CD-ROM XM-3501TA Rev: 2694
Jul 12 12:45:35 tiktok kernel: Type: CD-ROM ANSI SCSI revision: 02
Jul 12 12:45:35 tiktok kernel: Detected scsi CD-ROM sr0 at scsi0, channel 0, id 1, lun 0
Jul 12 12:45:35 tiktok kernel: Vendor: ARCHIVE Model: Python 25588-XXX Rev: 2.96
Jul 12 12:45:35 tiktok kernel: Type: Sequential-Access ANSI SCSI revision: 02
Jul 12 12:45:35 tiktok kernel: Detected scsi tape st0 at scsi0, channel 0, id 2, lun 0
Jul 12 12:45:35 tiktok kernel: scsi : detected 1 SCSI tape 1 SCSI cdrom 1 SCSI disk total.
Jul 12 12:45:35 tiktok kernel: ncr53c810-0-<target 0, lun 0>: FAST SCSI-2 100ns (10 Mb/sec) offset 8.
Jul 12 12:45:35 tiktok kernel: SCSI device sda: hdwr sector= 512 bytes. Sectors= 4178874 [2040 MB] [2.0 GB]

...

Jul 13 03:43:05 tiktok kernel: ncr53c810-0: SCSI phase error fixup: CCB address mismatch (0x0001a810 != 0x00fe8018)
Jul 13 03:43:19 tiktok kernel: ncr53c810-0: restart (ncr dead ?).
Jul 13 03:43:20 tiktok kernel: ncr53c810-0: SCSI phase error fixup: CCB address mismatch (0x0001a810 != 0x00019810)
Jul 13 03:43:34 tiktok kernel: ncr53c810-0: restart (ncr dead ?).
Jul 13 03:43:34 tiktok kernel: st0: Error 2603007f.
Jul 13 03:43:34 tiktok kernel: ncr53c810-0-<target 0, lun 0>: FAST SCSI-2 100ns (10 Mb/sec) offset 8.
Jul 13 03:43:34 tiktok kernel: ncr53c810-0: SCSI phase error fixup: CCB address mismatch (0x0001a810 != 0x00fe8810)
Jul 13 03:43:49 tiktok kernel: scsi : aborting command due to timeout : pid 289914, scsi0, channel 0, id 0, lun 0 Write (6) 04 7d 46 48 00
Jul 13 03:43:49 tiktok kernel: ncr53c8xx_abort : abort call
Jul 13 03:43:49 tiktok kernel: scsi : aborting command due to timeout : pid 289916, scsi0, channel 0, id 0, lun 0 Write (6) 05 c0 46 06 00
Jul 13 03:43:49 tiktok kernel: ncr53c8xx_abort : abort call
Jul 13 03:43:49 tiktok kernel: scsi : aborting command due to timeout : pid 289915, scsi0, channel 0, id 0, lun 0 Write (6) 04 7d 90 04 00
Jul 13 03:43:49 tiktok kernel: ncr53c8xx_abort : abort call
Jul 13 03:43:49 tiktok kernel: scsi : aborting command due to timeout : pid 289918, scsi0, channel 0, id 0, lun 0 Write (6) 05 c0 50 02 00
Jul 13 03:43:49 tiktok kernel: ncr53c8xx_abort : abort call
Jul 13 03:43:49 tiktok kernel: ncr53c810-0: abort ccb=00fe8810 (skip)
Jul 13 03:43:49 tiktok kernel: ncr53c810-0: restart (ncr dead ?).
Jul 13 03:43:50 tiktok kernel: ncr53c810-0: SCSI phase error fixup: CCB address mismatch (0x0001a810 != 0x00019810)
Jul 13 03:44:05 tiktok kernel: ncr53c810-0: restart (ncr dead ?).
Jul 13 03:44:05 tiktok kernel: scsi0 channel 0 : resetting for second half of retries.
Jul 13 03:44:05 tiktok kernel: SCSI bus is being reset for host 0 channel 0.
Jul 13 03:44:05 tiktok kernel: ncr53c810-0: restart (scsi bus reset).
Jul 13 03:44:05 tiktok kernel: ncr53c810-0-<target 0, lun 0>: FAST SCSI-2 100ns (10 Mb/sec) offset 8.
Jul 13 03:44:05 tiktok kernel: ncr53c810-0:0: ERROR (80:44) (e-a2-0) (8/13) @ (0:c0000004).
Jul 13 03:44:05 tiktok kernel: ^Iscript cmd = c0000004
Jul 13 03:44:05 tiktok kernel: ^Ireg:^I ca 00 80 13 47 08 00 1f 00 0e 80 a2 80 00 0a 02.
Jul 13 03:44:05 tiktok kernel: ncr53c810-0: restart (ncr dead ?).
Jul 13 03:44:05 tiktok kernel: st0: Error 2603007f.
Jul 13 03:44:08 tiktok kernel: ncr53c810-0-<target 0, lun 0>: FAST SCSI-2 100ns (10 Mb/sec) offset 8.
Jul 13 03:44:09 tiktok kernel: ncr53c810-0: SCSI phase error fixup: CCB address mismatch (0x0001a810 != 0x00fe8810)
Jul 13 03:44:23 tiktok kernel: ncr53c810-0: restart (ncr dead ?).
Jul 13 03:44:24 tiktok kernel: ncr53c810-0: SCSI phase error fixup: CCB address mismatch (0x0001a810 != 0x00019810)
Jul 13 03:44:38 tiktok kernel: ncr53c810-0: restart (ncr dead ?).
Jul 13 03:44:38 tiktok kernel: st0: Error 2603007f.
Jul 13 03:44:38 tiktok kernel: ncr53c810-0-<target 0, lun 0>: FAST SCSI-2 100ns (10 Mb/sec) offset 8.
Jul 13 03:45:11 tiktok kernel: ncr53c810-0: SCSI phase error fixup: CCB address mismatch (0x0001a810 != 0x00fe8810)
Jul 13 03:45:26 tiktok kernel: scsi : aborting command due to timeout : pid 290485, scsi0, channel 0, id 0, lun 0 Read (6) 13 fd 14 02 00
Jul 13 03:45:26 tiktok kernel: ncr53c8xx_abort : abort call
Jul 13 03:45:26 tiktok kernel: ncr53c810-0: abort ccb=00fe8810 (skip)
Jul 13 03:45:26 tiktok kernel: scsi : aborting command due to timeout : pid 290486, scsi0, channel 0, id 0, lun 0 Write (6) 07 3f 26 02 00
Jul 13 03:45:26 tiktok kernel: ncr53c8xx_abort : abort call
Jul 13 03:45:26 tiktok kernel: ncr53c810-0: abort ccb=00fe8018 (skip)
Jul 13 03:45:26 tiktok kernel: ncr53c810-0: restart (ncr dead ?).
Jul 13 03:45:26 tiktok kernel: ncr53c810-0: SCSI phase error fixup: CCB address mismatch (0x0001a810 != 0x00019810)
Jul 13 03:45:41 tiktok kernel: ncr53c810-0: restart (ncr dead ?).
Jul 13 03:45:41 tiktok kernel: scsi0 channel 0 : resetting for second half of retries.
Jul 13 03:45:41 tiktok kernel: SCSI bus is being reset for host 0 channel 0.
Jul 13 03:45:41 tiktok kernel: ncr53c810-0: restart (scsi bus reset).
Jul 13 03:45:41 tiktok kernel: ncr53c810-0-<target 0, lun 0>: FAST SCSI-2 100ns (10 Mb/sec) offset 8.
Jul 13 03:45:41 tiktok kernel: ncr53c810-0:0: ERROR (81:0) (8-0-0) (8/13) @ (0:00000000).
Jul 13 03:45:41 tiktok kernel: ^Iscript cmd = c0000004
Jul 13 03:45:41 tiktok kernel: ^Ireg:^I ca 00 40 13 47 08 00 1f 35 08 80 00 80 00 0f 02.
Jul 13 03:45:41 tiktok kernel: ncr53c810-0: restart (fatal error).
Jul 13 03:45:41 tiktok kernel: ncr53c810-0-<target 0, lun 0>: COMMAND FAILED (9 ff) @00fe8810.
Jul 13 03:45:41 tiktok kernel: ncr53c810-0-<target 0, lun 0>: COMMAND FAILED (9 ff) @00fe8018.
Jul 13 03:45:41 tiktok kernel: ncr53c810-0-<target 0, lun 0>: FAST SCSI-2 100ns (10 Mb/sec) offset 8.
Jul 13 03:45:43 tiktok kernel: st0: Error 2603007f.


Here is the .config file:

#
# Automatically generated make config: don't edit
#

#
# Code maturity level options
#
CONFIG_EXPERIMENTAL=y

#
# Loadable module support
#
CONFIG_MODULES=y
# CONFIG_MODVERSIONS is not set
CONFIG_KERNELD=y

#
# General setup
#
# CONFIG_MATH_EMULATION is not set
CONFIG_NET=y
# CONFIG_MAX_16M is not set
CONFIG_PCI=y
CONFIG_PCI_OPTIMIZE=y
CONFIG_SYSVIPC=y
CONFIG_BINFMT_AOUT=y
CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_JAVA is not set
CONFIG_KERNEL_ELF=y
CONFIG_M586=y

#
# Floppy, IDE, and other block devices
#
CONFIG_BLK_DEV_FD=y
CONFIG_BLK_DEV_IDE=y

#
# Please see Documentation/ide.txt for help/info on IDE drives
#
# CONFIG_BLK_DEV_HD_IDE is not set
CONFIG_BLK_DEV_IDECD=y
# CONFIG_BLK_DEV_IDETAPE is not set
# CONFIG_BLK_DEV_IDE_PCMCIA is not set
CONFIG_BLK_DEV_CMD640=y
CONFIG_BLK_DEV_TRITON=y
CONFIG_BLK_DEV_RZ1000=y
# CONFIG_IDE_CHIPSETS is not set

#
# Additional Block Devices
#
# CONFIG_BLK_DEV_LOOP is not set
# CONFIG_BLK_DEV_MD is not set
# CONFIG_BLK_DEV_RAM is not set
# CONFIG_BLK_DEV_XD is not set

#
# Networking options
#
# CONFIG_FIREWALL is not set
# CONFIG_NET_ALIAS is not set
CONFIG_INET=y
# CONFIG_IP_FORWARD is not set
CONFIG_IP_MULTICAST=y
CONFIG_IP_ACCT=y

#
# (it is safe to leave these untouched)
#
# CONFIG_INET_PCTCP is not set
CONFIG_INET_RARP=y
# CONFIG_NO_PATH_MTU_DISCOVERY is not set
CONFIG_IP_NOSR=y
CONFIG_SKB_LARGE=y

#
#
#
CONFIG_IPX=y
# CONFIG_IPX_INTERN is not set
CONFIG_ATALK=y
# CONFIG_AX25 is not set
# CONFIG_BRIDGE is not set
# CONFIG_NETLINK is not set

#
# SCSI support
#
CONFIG_SCSI=y

#
# SCSI support type (disk, tape, CD-ROM)
#
CONFIG_BLK_DEV_SD=y
CONFIG_CHR_DEV_ST=y
CONFIG_BLK_DEV_SR=y
CONFIG_CHR_DEV_SG=y

#
# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
#
# CONFIG_SCSI_MULTI_LUN is not set
CONFIG_SCSI_CONSTANTS=y

#
# SCSI low-level drivers
#
# CONFIG_SCSI_7000FASST is not set
# CONFIG_SCSI_AHA152X is not set
# CONFIG_SCSI_AHA1542 is not set
# CONFIG_SCSI_AHA1740 is not set
# CONFIG_SCSI_AIC7XXX is not set
# CONFIG_SCSI_ADVANSYS is not set
# CONFIG_SCSI_IN2000 is not set
# CONFIG_SCSI_AM53C974 is not set
# CONFIG_SCSI_BUSLOGIC is not set
# CONFIG_SCSI_DTC3280 is not set
# CONFIG_SCSI_EATA is not set
# CONFIG_SCSI_EATA_DMA is not set
# CONFIG_SCSI_EATA_PIO is not set
# CONFIG_SCSI_FUTURE_DOMAIN is not set
# CONFIG_SCSI_GENERIC_NCR5380 is not set
# CONFIG_SCSI_NCR53C406A is not set
# CONFIG_SCSI_NCR53C7xx is not set
CONFIG_SCSI_NCR53C8XX=y
CONFIG_SCSI_NCR53C8XX_TAGGED_QUEUE=y
# CONFIG_SCSI_NCR53C8XX_IOMAPPED is not set
# CONFIG_SCSI_NCR53C8XX_NO_DISCONNECT is not set
# CONFIG_SCSI_NCR53C8XX_FORCE_ASYNCHRONOUS is not set
# CONFIG_SCSI_NCR53C8XX_FORCE_SYNC_NEGO is not set
# CONFIG_SCSI_NCR53C8XX_DISABLE_MPARITY_CHECK is not set
# CONFIG_SCSI_NCR53C8XX_DISABLE_PARITY_CHECK is not set
# CONFIG_SCSI_PPA is not set
# CONFIG_SCSI_PAS16 is not set
# CONFIG_SCSI_QLOGIC_FAS is not set
# CONFIG_SCSI_QLOGIC_ISP is not set
# CONFIG_SCSI_SEAGATE is not set
# CONFIG_SCSI_T128 is not set
# CONFIG_SCSI_U14_34F is not set
# CONFIG_SCSI_ULTRASTOR is not set

#
# Network device support
#
CONFIG_NETDEVICES=y
CONFIG_DUMMY=y
# CONFIG_EQUALIZER is not set
# CONFIG_DLCI is not set
# CONFIG_PLIP is not set
CONFIG_PPP=y

#
# CCP compressors for PPP are only built as modules.
#
CONFIG_SLIP=y
CONFIG_SLIP_COMPRESSED=y
CONFIG_SLIP_SMART=y
# CONFIG_SLIP_MODE_SLIP6 is not set
# CONFIG_NET_RADIO is not set
CONFIG_NET_ETHERNET=y
CONFIG_NET_VENDOR_3COM=y
# CONFIG_EL1 is not set
# CONFIG_EL2 is not set
# CONFIG_ELPLUS is not set
# CONFIG_EL16 is not set
CONFIG_EL3=y
# CONFIG_VORTEX is not set
# CONFIG_LANCE is not set
# CONFIG_NET_VENDOR_SMC is not set
# CONFIG_NET_ISA is not set
# CONFIG_NET_EISA is not set
# CONFIG_NET_POCKET is not set
# CONFIG_TR is not set
# CONFIG_ARCNET is not set

#
# ISDN subsystem
#
# CONFIG_ISDN is not set

#
# CD-ROM drivers (not for SCSI or IDE/ATAPI drives)
#
# CONFIG_CD_NO_IDESCSI is not set

#
# Filesystems
#
# CONFIG_QUOTA is not set
# CONFIG_LOCK_MANDATORY is not set
CONFIG_MINIX_FS=y
# CONFIG_EXT_FS is not set
CONFIG_EXT2_FS=y
# CONFIG_XIA_FS is not set
CONFIG_FAT_FS=y
CONFIG_MSDOS_FS=y
CONFIG_VFAT_FS=y
# CONFIG_UMSDOS_FS is not set
CONFIG_PROC_FS=y
CONFIG_NFS_FS=y
# CONFIG_ROOT_NFS is not set
CONFIG_SMB_FS=y
CONFIG_SMB_LONG=y
CONFIG_NCP_FS=y
CONFIG_ISO9660_FS=y
# CONFIG_HPFS_FS is not set
# CONFIG_SYSV_FS is not set
# CONFIG_AFFS_FS is not set
# CONFIG_UFS_FS is not set

#
# Character devices
#
CONFIG_SERIAL=y
# CONFIG_DIGI is not set
# CONFIG_CYCLADES is not set
# CONFIG_STALDRV is not set
# CONFIG_RISCOM8 is not set
CONFIG_PRINTER=y
# CONFIG_MOUSE is not set
# CONFIG_UMISC is not set
# CONFIG_QIC02_TAPE is not set
# CONFIG_FTAPE is not set
# CONFIG_APM is not set
# CONFIG_WATCHDOG is not set
CONFIG_RTC=y

#
# Sound
#
CONFIG_SOUND=y
# CONFIG_PAS is not set
CONFIG_SB=y
CONFIG_ADLIB=y
# CONFIG_GUS is not set
# CONFIG_MPU401 is not set
# CONFIG_UART6850 is not set
# CONFIG_PSS is not set
# CONFIG_GUS16 is not set
# CONFIG_GUSMAX is not set
# CONFIG_MSS is not set
# CONFIG_SSCAPE is not set
# CONFIG_TRIX is not set
# CONFIG_MAD16 is not set
# CONFIG_CS4232 is not set
# CONFIG_MAUI is not set
CONFIG_AUDIO=y
CONFIG_MIDI=y
CONFIG_YM3812=y
SBC_BASE=220
SBC_IRQ=5
SBC_DMA=1
SB_DMA2=6
SB_MPU_BASE=330
SB_MPU_IRQ=-1
DSP_BUFFSIZE=65536
# CONFIG_LOWLEVEL_SOUND is not set

#
# Kernel hacking
#
# CONFIG_PROFILE is not set

-- 
Michael Meissner, Cygnus Support (East Coast)
Suite 105, 48 Grove Street, Somerville, MA 02144, USA
meissner@cygnus.com,	617-629-3016 (office),	617-629-3010 (fax)