aboutsummaryrefslogtreecommitdiff
path: root/sys/pci/if_txvar.h
diff options
context:
space:
mode:
authorSemen Ustimenko <semenu@FreeBSD.org>2001-06-23 19:30:26 +0000
committerSemen Ustimenko <semenu@FreeBSD.org>2001-06-23 19:30:26 +0000
commit1d57ebcdbf18fc20f881f1f4c04cf00a89524011 (patch)
treee9a95ed99ebc88f3fa87f3b5ab62ef477d273fee /sys/pci/if_txvar.h
parentf1a1584029213dc0933e8f2547916add3b93911d (diff)
downloadsrc-1d57ebcdbf18fc20f881f1f4c04cf00a89524011.tar.gz
src-1d57ebcdbf18fc20f881f1f4c04cf00a89524011.zip
Add initializetion of NVCTL register with EEPROM stored value.
This fix hazardous very slow work for one of my cards. MFC after: 1 week
Notes
Notes: svn path=/head/; revision=78677
Diffstat (limited to 'sys/pci/if_txvar.h')
-rw-r--r--sys/pci/if_txvar.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/sys/pci/if_txvar.h b/sys/pci/if_txvar.h
index f8d1e16d9a4c..a9ec762161fa 100644
--- a/sys/pci/if_txvar.h
+++ b/sys/pci/if_txvar.h
@@ -206,6 +206,19 @@
#define RXCON_DEFAULT (RXCON_EARLY | \
RXCON_RECEIVE_MULTICAST_FRAMES | \
RXCON_RECEIVE_BROADCAST_FRAMES)
+/*
+ * EEPROM structure
+ * SMC9432* eeprom is organized by words and only first 8 words
+ * have distinctive meaning (according to datasheet)
+ */
+#define EEPROM_MAC0 0x0000 /* Byte 0 / Byte 1 */
+#define EEPROM_MAC1 0x0001 /* Byte 2 / Byte 3 */
+#define EEPROM_MAC2 0x0002 /* Byte 4 / Byte 5 */
+#define EEPROM_BID_CSUM 0x0003 /* Board Id / Check Sum */
+#define EEPROM_NVCTL 0x0004 /* NVCTL (bits 0-5) / nothing */
+#define EEPROM_PCI_MGD_MLD 0x0005 /* PCI MinGrant / MaxLatency. Desired */
+#define EEPROM_SSVENDID 0x0006 /* Subsystem Vendor Id */
+#define EEPROM_SSID 0x0006 /* Subsystem Id */
/*
* Structures definition and Functions prototypes