summaryrefslogtreecommitdiffstats
path: root/sys/dev/bge/if_bgereg.h
diff options
context:
space:
mode:
authormarius <marius@FreeBSD.org>2007-04-30 21:55:27 +0000
committermarius <marius@FreeBSD.org>2007-04-30 21:55:27 +0000
commitf18c6c03395fa5c067d494cb5cef42d8855707e0 (patch)
tree6fee858fcee2fb1b2da2b1e692e2dba4b42b5e3f /sys/dev/bge/if_bgereg.h
parent4c8790bcb470e9daa8fd9298949e28ff3454d8b1 (diff)
downloadFreeBSD-src-f18c6c03395fa5c067d494cb5cef42d8855707e0.zip
FreeBSD-src-f18c6c03395fa5c067d494cb5cef42d8855707e0.tar.gz
- Add support/quirks for the on-board BGEs found in Sun Blade 1500
Blade 2500, Fire V210 and probably some other sparc64 machines. These chips are typically not fitted with an EEPROM which means that we have to obtain the MAC address via OFW and that some chip tests will just always fail. These changes are based on the respective code found in OpenBSD with some additional info obtained from OpenSolaris and some style suggestions by jkim@. They also have the desired side-effect of respecting the 'local-mac-address?' system configuration variable for the affected BGEs. - In bge_attach() factor out calling bge_release_resources() before going to the fail label into the fail label as well as replace a magic 6 with ETHER_ADDR_LEN. Reviewed by: yongari (before style changes), jkim
Diffstat (limited to 'sys/dev/bge/if_bgereg.h')
-rw-r--r--sys/dev/bge/if_bgereg.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/sys/dev/bge/if_bgereg.h b/sys/dev/bge/if_bgereg.h
index 769cbdf..5698793 100644
--- a/sys/dev/bge/if_bgereg.h
+++ b/sys/dev/bge/if_bgereg.h
@@ -2080,6 +2080,11 @@ struct bge_status_block {
#define APPLE_DEVICE_BCM5701 0x1645
/*
+ * Sun PCI vendor ID
+ */
+#define SUN_VENDORID 0x108e
+
+/*
* Offset of MAC address inside EEPROM.
*/
#define BGE_EE_MAC_OFFSET 0x7C
@@ -2454,6 +2459,7 @@ struct bge_softc {
uint32_t bge_flags;
#define BGE_FLAG_TBI 0x00000001
#define BGE_FLAG_JUMBO 0x00000002
+#define BGE_FLAG_EEPROM 0x00000004
#define BGE_FLAG_MSI 0x00000100
#define BGE_FLAG_PCIX 0x00000200
#define BGE_FLAG_PCIE 0x00000400
OpenPOWER on IntegriCloud