From eefc140c025c7271974d4d584344bf17e4b23896 Mon Sep 17 00:00:00 2001 From: bouyer Date: Wed, 10 Mar 2004 22:02:53 +0000 Subject: [PATCH] The 1010-66 always generate AIP values on the bus, regardless of the SCNTL4 settings. Disable AIP completely, as this confuse pre-Ultra160 drives. From FreeBSD. --- sys/dev/ic/siop_common.c | 7 +++++-- sys/dev/ic/siopvar_common.h | 3 ++- sys/dev/pci/siop_pci_common.c | 5 +++-- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/sys/dev/ic/siop_common.c b/sys/dev/ic/siop_common.c index 6bcc0a8c9888..b0690aed9c13 100644 --- a/sys/dev/ic/siop_common.c +++ b/sys/dev/ic/siop_common.c @@ -1,4 +1,4 @@ -/* $NetBSD: siop_common.c,v 1.32 2003/01/31 00:26:31 thorpej Exp $ */ +/* $NetBSD: siop_common.c,v 1.33 2004/03/10 22:02:53 bouyer Exp $ */ /* * Copyright (c) 2000, 2002 Manuel Bouyer. @@ -33,7 +33,7 @@ /* SYM53c7/8xx PCI-SCSI I/O Processors driver */ #include -__KERNEL_RCSID(0, "$NetBSD: siop_common.c,v 1.32 2003/01/31 00:26:31 thorpej Exp $"); +__KERNEL_RCSID(0, "$NetBSD: siop_common.c,v 1.33 2004/03/10 22:02:53 bouyer Exp $"); #include #include @@ -193,6 +193,9 @@ siop_common_reset(sc) 1 << sc->sc_chan.chan_id); bus_space_write_1(sc->sc_rt, sc->sc_rh, SIOP_DCNTL, (sc->features & SF_CHIP_PF) ? DCNTL_COM | DCNTL_PFEN : DCNTL_COM); + if (sc->features & SF_CHIP_AAIP) + bus_space_write_1(sc->sc_rt, sc->sc_rh, + SIOP_AIPCNTL1, AIPCNTL1_DIS); /* enable clock doubler or quadruler if appropriate */ if (sc->features & (SF_CHIP_DBLR | SF_CHIP_QUAD)) { diff --git a/sys/dev/ic/siopvar_common.h b/sys/dev/ic/siopvar_common.h index a751741ee516..26efc181768f 100644 --- a/sys/dev/ic/siopvar_common.h +++ b/sys/dev/ic/siopvar_common.h @@ -1,4 +1,4 @@ -/* $NetBSD: siopvar_common.h,v 1.26 2003/11/10 08:51:52 wiz Exp $ */ +/* $NetBSD: siopvar_common.h,v 1.27 2004/03/10 22:02:53 bouyer Exp $ */ /* * Copyright (c) 2000 Manuel Bouyer. @@ -170,6 +170,7 @@ struct siop_common_softc { #define SF_CHIP_DFBC 0x00020000 /* Use DFBC register */ #define SF_CHIP_DT 0x00040000 /* DT clocking */ #define SF_CHIP_GEBUG 0x00080000 /* SCSI gross error bug */ +#define SF_CHIP_AAIP 0x00100000 /* Always generate AIP regardless of SNCTL4*/ #define SF_PCI_RL 0x01000000 /* PCI read line */ #define SF_PCI_RM 0x02000000 /* PCI read multiple */ diff --git a/sys/dev/pci/siop_pci_common.c b/sys/dev/pci/siop_pci_common.c index ebb96965c0bc..e439b7c411c7 100644 --- a/sys/dev/pci/siop_pci_common.c +++ b/sys/dev/pci/siop_pci_common.c @@ -1,4 +1,4 @@ -/* $NetBSD: siop_pci_common.c,v 1.21 2003/10/25 21:31:20 christos Exp $ */ +/* $NetBSD: siop_pci_common.c,v 1.22 2004/03/10 22:02:53 bouyer Exp $ */ /* * Copyright (c) 2000 Manuel Bouyer. @@ -32,7 +32,7 @@ /* SYM53c8xx PCI-SCSI I/O Processors driver: PCI front-end */ #include -__KERNEL_RCSID(0, "$NetBSD: siop_pci_common.c,v 1.21 2003/10/25 21:31:20 christos Exp $"); +__KERNEL_RCSID(0, "$NetBSD: siop_pci_common.c,v 1.22 2004/03/10 22:02:53 bouyer Exp $"); #include #include @@ -192,6 +192,7 @@ const struct siop_product_desc siop_products[] = { SF_PCI_RL | SF_PCI_CLS | SF_PCI_WRI | SF_PCI_RM | SF_CHIP_LEDC | SF_CHIP_FIFO | SF_CHIP_PF | SF_CHIP_RAM | SF_CHIP_LS | SF_CHIP_10REGS | SF_CHIP_DFBC | SF_CHIP_DBLR | SF_CHIP_DT | + SF_CHIP_AAIP | SF_BUS_ULTRA3 | SF_BUS_WIDE, 7, 62, 0, 62, 8192 },