aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/vr/if_vr.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/vr/if_vr.c')
-rw-r--r--sys/dev/vr/if_vr.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/dev/vr/if_vr.c b/sys/dev/vr/if_vr.c
index e5a7d7d6a9c4..dd514ee97687 100644
--- a/sys/dev/vr/if_vr.c
+++ b/sys/dev/vr/if_vr.c
@@ -90,6 +90,7 @@ __FBSDID("$FreeBSD$");
#include <dev/mii/miivar.h>
+#include <dev/pci/pcireg.h>
#include <dev/pci/pcivar.h>
#define VR_USEIOSPACE
@@ -513,6 +514,7 @@ vr_attach(device_t dev)
struct ifnet *ifp;
int error = 0, rid;
struct vr_type *t;
+ int pmc;
sc = device_get_softc(dev);
sc->vr_dev = dev;
@@ -591,7 +593,8 @@ vr_attach(device_t dev)
* shuts down. Be sure to kick it in the head to wake it
* up again.
*/
- VR_CLRBIT(sc, VR_STICKHW, (VR_STICKHW_DS0|VR_STICKHW_DS1));
+ if (pci_find_extcap(dev, PCIY_PMG, &pmc) == 0)
+ VR_CLRBIT(sc, VR_STICKHW, (VR_STICKHW_DS0|VR_STICKHW_DS1));
/* Reset the adapter. */
vr_reset(sc);