summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrad Smith <brad@cvs.openbsd.org>2005-07-20 23:02:42 +0000
committerBrad Smith <brad@cvs.openbsd.org>2005-07-20 23:02:42 +0000
commit152b4a4f565c1aa8e8a07f9b365c4fe9ec98d24d (patch)
tree390f79f6df200cad07cdf8da956f01a7a344523d
parent6161877a44213fd664a2a7657072914ad5f29573 (diff)
add a comment explaining why we set the MAC address as we do.
From FreeBSD
-rw-r--r--sys/dev/ic/rtl81x9.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/sys/dev/ic/rtl81x9.c b/sys/dev/ic/rtl81x9.c
index 8c13f0285d1..7a61d069837 100644
--- a/sys/dev/ic/rtl81x9.c
+++ b/sys/dev/ic/rtl81x9.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: rtl81x9.c,v 1.43 2005/07/20 22:59:52 brad Exp $ */
+/* $OpenBSD: rtl81x9.c,v 1.44 2005/07/20 23:02:41 brad Exp $ */
/*
* Copyright (c) 1997, 1998
@@ -971,7 +971,11 @@ void rl_init(xsc)
*/
rl_stop(sc);
- /* Init our MAC address */
+ /*
+ * Init our MAC address. Even though the chipset
+ * documentation doesn't mention it, we need to enter "Config
+ * register write enable" mode to modify the ID registers.
+ */
CSR_WRITE_1(sc, RL_EECMD, RL_EEMODE_WRITECFG);
CSR_WRITE_4(sc, RL_IDR0, *(u_int32_t *)(&sc->sc_arpcom.ac_enaddr[0]));
CSR_WRITE_4(sc, RL_IDR4, *(u_int32_t *)(&sc->sc_arpcom.ac_enaddr[4]));