diff options
author | Brad Smith <brad@cvs.openbsd.org> | 2005-08-30 03:18:31 +0000 |
---|---|---|
committer | Brad Smith <brad@cvs.openbsd.org> | 2005-08-30 03:18:31 +0000 |
commit | 95d31a162868b83c2f59dedc3771ac580df8f9a9 (patch) | |
tree | fdafdede1d558997e8a184c4fcef98c5d3eadca3 /sys/dev/pci | |
parent | 24d0fc47dd64780e2534668a441e6ebc5cf36c35 (diff) |
- add BCM5780 PCI ids
- recognize BCM5704 B0
- recognize BCM5780 which is supposedly part of the BCM5714 family
according to the Linux driver but there is a BCM5714 core too. huh?
ok deraadt@
Diffstat (limited to 'sys/dev/pci')
-rw-r--r-- | sys/dev/pci/if_bge.c | 12 | ||||
-rw-r--r-- | sys/dev/pci/if_bgereg.h | 7 |
2 files changed, 17 insertions, 2 deletions
diff --git a/sys/dev/pci/if_bge.c b/sys/dev/pci/if_bge.c index 60521085b35..a77b9cfcb14 100644 --- a/sys/dev/pci/if_bge.c +++ b/sys/dev/pci/if_bge.c @@ -1,4 +1,4 @@ -/* $OpenBSD: if_bge.c,v 1.80 2005/08/27 14:12:36 brad Exp $ */ +/* $OpenBSD: if_bge.c,v 1.81 2005/08/30 03:18:30 brad Exp $ */ /* * Copyright (c) 2001 Wind River Systems @@ -224,6 +224,8 @@ const struct pci_matchid bge_devices[] = { { PCI_VENDOR_BROADCOM, PCI_PRODUCT_BROADCOM_BCM5753 }, { PCI_VENDOR_BROADCOM, PCI_PRODUCT_BROADCOM_BCM5753F }, { PCI_VENDOR_BROADCOM, PCI_PRODUCT_BROADCOM_BCM5753M }, + { PCI_VENDOR_BROADCOM, PCI_PRODUCT_BROADCOM_BCM5780 }, + { PCI_VENDOR_BROADCOM, PCI_PRODUCT_BROADCOM_BCM5780S }, { PCI_VENDOR_BROADCOM, PCI_PRODUCT_BROADCOM_BCM5781 }, { PCI_VENDOR_BROADCOM, PCI_PRODUCT_BROADCOM_BCM5782 }, { PCI_VENDOR_BROADCOM, PCI_PRODUCT_BROADCOM_BCM5788 }, @@ -1570,6 +1572,10 @@ static const struct bge_revision { BGE_QUIRK_ONLY_PHY_1|BGE_QUIRK_FEWER_MBUFS, "BCM5704 A3" }, + { BGE_CHIPID_BCM5704_B0, + BGE_QUIRK_ONLY_PHY_1|BGE_QUIRK_FEWER_MBUFS, + "BCM5704 B0" }, + { BGE_CHIPID_BCM5705_A0, BGE_QUIRK_ONLY_PHY_1|BGE_QUIRK_5705_CORE, "BCM5705 A0" }, @@ -1662,6 +1668,10 @@ static const struct bge_revision bge_majorrevs[] = { BGE_QUIRK_ONLY_PHY_1|BGE_QUIRK_5705_CORE, "unknown BCM5752" }, + { BGE_ASICREV_BCM5780, + BGE_QUIRK_ONLY_PHY_1|BGE_QUIRK_5705_CORE, + "unknown BCM5780" }, + { 0, 0, NULL } diff --git a/sys/dev/pci/if_bgereg.h b/sys/dev/pci/if_bgereg.h index e69b7580e93..6fffb15f6a5 100644 --- a/sys/dev/pci/if_bgereg.h +++ b/sys/dev/pci/if_bgereg.h @@ -1,4 +1,4 @@ -/* $OpenBSD: if_bgereg.h,v 1.26 2005/08/27 14:12:36 brad Exp $ */ +/* $OpenBSD: if_bgereg.h,v 1.27 2005/08/30 03:18:30 brad Exp $ */ /* * Copyright (c) 2001 Wind River Systems @@ -244,6 +244,7 @@ #define BGE_CHIPID_BCM5704_A1 0x20010000 #define BGE_CHIPID_BCM5704_A2 0x20020000 #define BGE_CHIPID_BCM5704_A3 0x20030000 +#define BGE_CHIPID_BCM5704_B0 0x21000000 #define BGE_CHIPID_BCM5705_A0 0x30000000 #define BGE_CHIPID_BCM5705_A1 0x30010000 #define BGE_CHIPID_BCM5705_A2 0x30020000 @@ -257,6 +258,7 @@ #define BGE_CHIPID_BCM5714_A0 0x50000000 #define BGE_CHIPID_BCM5752_A0 0x60000000 #define BGE_CHIPID_BCM5752_A1 0x60010000 +#define BGE_CHIPID_BCM5714 0x80000000 /* shorthand one */ #define BGE_ASICREV(x) ((x) >> 28) @@ -268,6 +270,7 @@ #define BGE_ASICREV_BCM5750 0x04 #define BGE_ASICREV_BCM5714 0x05 #define BGE_ASICREV_BCM5752 0x06 +#define BGE_ASICREV_BCM5780 0x08 /* chip revisions */ #define BGE_CHIPREV(x) ((x) >> 24) @@ -278,6 +281,8 @@ #define BGE_CHIPREV_5703_AX 0x10 #define BGE_CHIPREV_5704_AX 0x20 #define BGE_CHIPREV_5704_BX 0x21 +#define BGE_CHIPREV_5750_AX 0x40 +#define BGE_CHIPREV_5750_BX 0x41 /* PCI DMA Read/Write Control register */ #define BGE_PCIDMARWCTL_MINDMA 0x000000FF |