summaryrefslogtreecommitdiffstats
path: root/sys/pci
diff options
context:
space:
mode:
authorgibbs <gibbs@FreeBSD.org>1996-10-06 16:38:45 +0000
committergibbs <gibbs@FreeBSD.org>1996-10-06 16:38:45 +0000
commit39f7c443bbd76efad82b8db4e30b4e321c972e56 (patch)
treebb2a2dd6b395ce14a39949957308cc784a27b63a /sys/pci
parent5afa2e19b158c07804a73b685e7a539a7377f53a (diff)
downloadFreeBSD-src-39f7c443bbd76efad82b8db4e30b4e321c972e56.zip
FreeBSD-src-39f7c443bbd76efad82b8db4e30b4e321c972e56.tar.gz
Bring aic7xxx driver bug fixes from 'SCSI' into current.
Diffstat (limited to 'sys/pci')
-rw-r--r--sys/pci/aic7870.c24
1 files changed, 15 insertions, 9 deletions
diff --git a/sys/pci/aic7870.c b/sys/pci/aic7870.c
index f2436a6..0705f32 100644
--- a/sys/pci/aic7870.c
+++ b/sys/pci/aic7870.c
@@ -29,7 +29,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $Id: aic7870.c,v 1.36 1996/05/30 07:20:17 gibbs Exp $
+ * $Id: aic7870.c,v 1.37 1996/06/08 06:55:55 gibbs Exp $
*/
#if defined(__FreeBSD__)
@@ -81,6 +81,7 @@
#define PCI_DEVICE_ID_ADAPTEC_3940U 0x82789004ul
#define PCI_DEVICE_ID_ADAPTEC_2944U 0x84789004ul
#define PCI_DEVICE_ID_ADAPTEC_2940U 0x81789004ul
+#define PCI_DEVICE_ID_ADAPTEC_2940AU 0x61789004ul
#define PCI_DEVICE_ID_ADAPTEC_3940 0x72789004ul
#define PCI_DEVICE_ID_ADAPTEC_2944 0x74789004ul
#define PCI_DEVICE_ID_ADAPTEC_2940 0x71789004ul
@@ -216,6 +217,9 @@ aic7870_probe (pcici_t tag, pcidi_t type)
case PCI_DEVICE_ID_ADAPTEC_2940:
return ("Adaptec 2940 SCSI host adapter");
break;
+ case PCI_DEVICE_ID_ADAPTEC_2940AU:
+ return ("Adaptec 2940A Ultra SCSI host adapter");
+ break;
case PCI_DEVICE_ID_ADAPTEC_AIC7880:
return ("Adaptec aic7880 Ultra SCSI host adapter");
break;
@@ -258,6 +262,7 @@ ahc_pci_probe(parent, match, aux)
case PCI_DEVICE_ID_ADAPTEC_3940U:
case PCI_DEVICE_ID_ADAPTEC_2944U:
case PCI_DEVICE_ID_ADAPTEC_2940U:
+ case PCI_DEVICE_ID_ADAPTEC_2940AU:
case PCI_DEVICE_ID_ADAPTEC_3940:
case PCI_DEVICE_ID_ADAPTEC_2944:
case PCI_DEVICE_ID_ADAPTEC_2940:
@@ -345,6 +350,9 @@ ahc_pci_attach(parent, self, aux)
case PCI_DEVICE_ID_ADAPTEC_2940:
ahc_t = AHC_294;
break;
+ case PCI_DEVICE_ID_ADAPTEC_2940AU:
+ ahc_t = AHC_294AU;
+ break;
case PCI_DEVICE_ID_ADAPTEC_AIC7880:
ahc_t = AHC_AIC7880;
break;
@@ -439,11 +447,12 @@ ahc_pci_attach(parent, self, aux)
return;
}
intrstr = pci_intr_string(pa->pa_pc, ih);
- ahc->sc_ih = pci_intr_establish(pa->pa_pc, ih, IPL_BIO, ahc_intr, ahc
#ifdef __OpenBSD__
- , ahc->sc_dev.dv_xname
+ ahc->sc_ih = pci_intr_establish(pa->pa_pc, ih, IPL_BIO, ahc_intr, ahc,
+ ahc->sc_dev.dv_xname);
+#else
+ ahc->sc_ih = pci_intr_establish(pa->pa_pc, ih, IPL_BIO, ahc_intr, ahc);
#endif
- );
if (ahc->sc_ih == NULL) {
printf("%s: couldn't establish interrupt",
ahc->sc_dev.dv_xname);
@@ -487,14 +496,11 @@ ahc_pci_attach(parent, self, aux)
load_seeprom(ahc);
break;
}
+ case AHC_294AU:
case AHC_AIC7860:
{
id_string = "aic7860 ";
- /*
- * Use defaults, if the chip wasn't initialized by
- * a BIOS.
- */
- ahc->flags |= AHC_USEDEFAULTS;
+ load_seeprom(ahc);
break;
}
case AHC_AIC7850:
OpenPOWER on IntegriCloud