Subject: Re: ncr driver working with Symbios 53C896?
To: Manuel Bouyer <bouyer@antioche.lip6.fr>
From: Jeff Rizzo <riz@boogers.sf.ca.us>
List: current-users
Date: 04/17/2000 09:39:17
On Mon, Apr 17, 2000 at 09:32:50AM +0200, Manuel Bouyer wrote:
> On Thu, Apr 13, 2000 at 04:01:01PM -0700, Jeff Rizzo wrote:
> > I've done a little more investigating, and found that I have the same
> > problem with -current as detailed below.  I've checked the ncr(4) manpage,
> > and it claims the 53C896 is supported...
> > 
> > Has anyone else seen this?  Any suggestions?  The board in question seems
> > to work under Linux, so I don't think it's a hardware question.
> 
> Ok, in fact the 896 is a 64bit device so the PCI registers are not the same
> (appart from that it should be backward-compatible with the 895).
> Could you try the attached patch ? Should also work for 1.4.2.

(this is under 1.4.2;  it's easier for me to make bootfloppies)

The patch you provided does seem to detect the 896 as a 64-bit device,
but the problem still remains:

ncr0 at pci0 dev 11 function 0: ncr 53c896 fast40 wide scsi
64bit PCI device
pci_mem_find: 64-bit memory mapping register
ncr0: interrupting at irq 5
pci_mem_find: 64-bit memory mapping register
ncr0: minsync=10, maxsync=137, maxoffs=31, 128 dwords burst, large dma fifo
ncr0: single-ended, open drain IRQ driver
CACHE TEST FAILED: host wrote 1, ncr read -16892.
CACHE TEST FAILED: ncr wrote 2, host read 1819044972.
CACHE INCORRECTLY CONFIGURED.
ncr1 at pci0 dev 11 function 1: ncr 53c896 fast40 wide scsi
64bit PCI device
pci_mem_find: 64-bit memory mapping register
ncr1: interrupting at irq 11
pci_mem_find: 64-bit memory mapping register
ncr1: minsync=10, maxsync=137, maxoffs=31, 128 dwords burst, large dma fifo
ncr1: single-ended, open drain IRQ driver
CACHE TEST FAILED: host wrote 1, ncr read -15616.
CACHE TEST FAILED: ncr wrote 2, host read 1819044972.
CACHE INCORRECTLY CONFIGURED.

...When I combine your patch with Izumi Tsutsui's NCR_IOMAPPED patch from
kern/6565, it comes closer to working, but still no dice:

ncr0 at pci0 dev 11 function 0: ncr 53c896 fast40 wide scsi
64bit PCI device                                           
pci_mem_find: 64-bit memory mapping register
ncr0: I/O mapped                            
ncr0: interrupting at irq 5
ncr0: minsync=10, maxsync=137, maxoffs=31, 128 dwords burst, large dma fifo
ncr0: single-ended, open drain IRQ driver                                  
ncr0: restart (scsi reset).              
scsibus0 at ncr0: 16 targets, 8 luns per target
sd0 at scsibus0 targ 0 lun 0: <SEAGATE, ST318275LW, 0001> SCSI2 0/direct fixed
assertion "target == (xp->sc_link->scsipi_scsi.target & 0x0f)" failed: file "../../../../dev/pci/ncr.c", line 6108
sd0(ncr0:0:0): WIDE SCSI (16 bit) enabled
assertion "target == (xp->sc_link->scsipi_scsi.target & 0x0f)" failed: file "../../../../dev/pci/ncr.c", line 6108
sd0: mode sense (4) returned nonsense; using fictitious geometry
assertion "target == (xp->sc_link->scsipi_scsi.target & 0x0f)" failed: file "../../../../dev/pci/ncr.c", line 6108B, 22112 cyl, 64 head, 32 sec, 512 bytes/sect x 45285379 sectors
assertion "target == (xp->sc_link->scsipi_scsi.target & 0x0f)" failed: file "../../../../dev/pci/ncr.c", line 6108
assertion "target == (xp->sc_link->scsipi_scsi.target & 0x0f)" failed: file "../../../../dev/pci/ncr.c", line 6108
assertion "target == (xp->sc_link->scsipi_scsi.target & 0x0f)" failed: file "../../../../dev/pci/ncr.c", line 6108
assertion "target == (xp->sc_link->scsipi_scsi.target & 0x0f)" failed: file "../../../../dev/pci/ncr.c", line 6108
assertion "target == (xp->sc_link->scsipi_scsi.target & 0x0f)" failed: file "../../../../dev/pci/ncr.c", line 6108
assertion "target == (xp->sc_link->scsipi_scsi.target & 0x0f)" failed: file "../../../../dev/pci/ncr.c", line 6108
assertion "target == (xp->sc_link->scsipi_scsi.target & 0x0f)" failed: file "../../../../dev/pci/ncr.c", line 6108
assertion "target == (xp->sc_link->scsipi_scsi.target & 0x0f)" failed: file "../../../../dev/pci/ncr.c", line 6108
assertion "target == (xp->sc_link->scsipi_scsi.target & 0x0f)" failed: file "../../../../dev/pci/ncr.c", line 6108
assertion "target == (xp->sc_link->scsipi_scsi.target & 0x0f)" failed: file "../../../../dev/pci/ncr.c", line 6108
assertion "target == (xp->sc_link->scsipi_scsi.target & 0x0f)" failed: file "../../../../dev/pci/ncr.c", line 6108
assertion "target == (xp->sc_link->scsipi_scsi.target & 0x0f)" failed: file "../../../../dev/pci/ncr.c", line 6108
assertion "target == (xp->sc_link->scsipi_scsi.target & 0x0f)" failed: file "../../../../dev/pci/ncr.c", line 6108
assertion "target == (xp->sc_link->scsipi_scsi.target & 0x0f)" failed: file "../../../../dev/pci/ncr.c", line 6108
ncr0: restart (selection timeout).
ncr0: restart (selection timeout).
ncr0: restart (selection timeout).
ncr0: restart (selection timeout).
ncr0: restart (selection timeout).
ncr0: restart (selection timeout).
ncr0: restart (selection timeout).
ncr0: restart (selection timeout).
ncr0: restart (selection timeout).
ncr0: restart (selection timeout).
ncr0: restart (selection timeout).
ncr0: restart (selection timeout).
ncr0: restart (selection timeout).
ncr0: restart (selection timeout).
ncr0: restart (selection timeout).
ncr0: restart (selection timeout).
ncr0: restart (selection timeout).
ncr0: restart (selection timeout).
ncr0: restart (selection timeout).
ncr0: restart (selection timeout).
ncr0: restart (selection timeout).
ncr0: restart (selection timeout).
ncr0: restart (selection timeout).
ncr0: restart (selection timeout).
ncr0: restart (selection timeout).
ncr0: restart (selection timeout).
ncr0: restart (selection timeout).
ncr0: restart (selection timeout).
ncr1 at pci0 dev 11 function 1: ncr 53c896 fast40 wide scsi
64bit PCI device                                           
pci_mem_find: 64-bit memory mapping register
ncr1: I/O mapped                            
ncr1: interrupting at irq 11
ncr1: minsync=10, maxsync=137, maxoffs=31, 128 dwords burst, large dma fifo
ncr1: single-ended, open drain IRQ driver                                  
ncr1: restart (scsi reset).              
scsibus1 at ncr1: 16 targets, 8 luns per target
ncr1: restart (selection timeout).             
ncr1: restart (selection timeout).
ncr1: restart (selection timeout).
ncr1: restart (selection timeout).
ncr1: restart (selection timeout).
ncr1: restart (selection timeout).
ncr1: restart (selection timeout).
ncr1: restart (selection timeout).
ncr1: restart (selection timeout).
ncr1: restart (selection timeout).
ncr1: restart (selection timeout).
ncr1: restart (selection timeout).
ncr1: restart (selection timeout).
ncr1: restart (selection timeout).
ncr1: restart (selection timeout).
ncr1: restart (selection timeout).
ncr1: restart (selection timeout).
ncr1: restart (selection timeout).
ncr1: restart (selection timeout).
ncr1: restart (selection timeout).
ncr1: restart (selection timeout).
ncr1: restart (selection timeout).
ncr1: restart (selection timeout).
ncr1: restart (selection timeout).
ncr1: restart (selection timeout).
ncr1: restart (selection timeout).
ncr1: restart (selection timeout).
ncr1: restart (selection timeout).
ncr1: restart (selection timeout).
ncr1: restart (selection timeout).


-- 
Jeff Rizzo                                         http://boogers.sf.ca.us/~riz