summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorwpaul <wpaul@FreeBSD.org>2000-01-15 18:43:07 +0000
committerwpaul <wpaul@FreeBSD.org>2000-01-15 18:43:07 +0000
commit617faab1143d0333c001a6e3714eef5a1507f7c2 (patch)
tree9da7a7672f38203f15c074bd06e96b0c48d6938e
parent77d8b51d7950ff83576fa4d9d4231fab70297b6f (diff)
downloadFreeBSD-src-617faab1143d0333c001a6e3714eef5a1507f7c2.zip
FreeBSD-src-617faab1143d0333c001a6e3714eef5a1507f7c2.tar.gz
Minor enhancement: set the 'dual link LED' bit in the auxmode register
of the Broadcom BCM5201 PHY on the LinkSys USB100TX adapter so that the link LED correctly (lights up amber for 10mbps link, green for 100mbps link). Note that the sticker on the bottom of the adapter says amber for 10 and green for 100, but the appendix in the manual that comes with the adapter says green for 10 and amber for 100. Given that there doesn't seem to be any way to make the hardware produce the latter combination, I think it's safe to say the sticker is right and the manual is wrong. I'm just shocked, shocked I tell you.
-rw-r--r--sys/dev/usb/if_aue.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/sys/dev/usb/if_aue.c b/sys/dev/usb/if_aue.c
index 277d913..9e8a344 100644
--- a/sys/dev/usb/if_aue.c
+++ b/sys/dev/usb/if_aue.c
@@ -463,6 +463,18 @@ static void aue_miibus_statchg(dev)
}
AUE_SETBIT(sc, AUE_CTL0, AUE_CTL0_RX_ENB|AUE_CTL0_TX_ENB);
+ /*
+ * Set the LED modes on the LinkSys adapter.
+ * This turns on the 'dual link LED' bin in the auxmode
+ * register of the Broadcom PHY.
+ */
+ if (sc->aue_info->aue_vid == USB_VENDOR_LINKSYS &&
+ sc->aue_info->aue_did == USB_PRODUCT_LINKSYS_USB100TX) {
+ u_int16_t auxmode;
+ auxmode = aue_miibus_readreg(dev, 0, 0x1b);
+ aue_miibus_writereg(dev, 0, 0x1b, auxmode | 0x04);
+ }
+
return;
}
OpenPOWER on IntegriCloud