summaryrefslogtreecommitdiffstats
path: root/sys/pci/if_vrreg.h
diff options
context:
space:
mode:
authorsilby <silby@FreeBSD.org>2003-02-01 01:18:26 +0000
committersilby <silby@FreeBSD.org>2003-02-01 01:18:26 +0000
commite8e9b0220259bdb7f13160357ac21390465f2257 (patch)
treeba0aac2784cacb95c74cce4a326204c12a9f3cf0 /sys/pci/if_vrreg.h
parent1679457554d8ee04734979724f755b5ce1cdb000 (diff)
downloadFreeBSD-src-e8e9b0220259bdb7f13160357ac21390465f2257.zip
FreeBSD-src-e8e9b0220259bdb7f13160357ac21390465f2257.tar.gz
Switch the if_vr driver from using our generic MII routines over to
using the Rhine's internal shift registers which are designed for the job. This reduces the amount of time we wait around shifting bits, and seems to work better with some chips. Also, provide a workaround for some newer cards which report fake PHYs at multiple addresses. (As more cards are ID'd, I'm sure this part of the code will have to be expanded to cover more cases.) Submitted by: Thomas Nystrom <thn@saeab.se> MFC after: 1 week
Diffstat (limited to 'sys/pci/if_vrreg.h')
-rw-r--r--sys/pci/if_vrreg.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/pci/if_vrreg.h b/sys/pci/if_vrreg.h
index b7903c1..8129a24 100644
--- a/sys/pci/if_vrreg.h
+++ b/sys/pci/if_vrreg.h
@@ -540,6 +540,7 @@ struct vr_softc {
#define REV_ID_VT3065_A 0x40
#define REV_ID_VT3065_B 0x41
#define REV_ID_VT3065_C 0x42
+#define REV_ID_VT6102_APOLLO 0x74
#define REV_ID_VT3106 0x80
#define REV_ID_VT3106_J 0x80 /* 0x80-0x8F */
#define REV_ID_VT3106_S 0x90 /* 0x90-0xA0 */
@@ -566,6 +567,9 @@ struct vr_softc {
#define VR_PCI_MINLAT 0x0F
#define VR_PCI_RESETOPT 0x48
#define VR_PCI_EEPROM_DATA 0x4C
+#define VR_PCI_MODE 0x50
+
+#define VR_MODE3_MIION 0x04
/* power management registers */
#define VR_PCI_CAPID 0xDC /* 8 bits */
OpenPOWER on IntegriCloud