svn commit: r281119 - head/sys/mips/conf
Adrian Chadd
adrian at FreeBSD.org
Sun Apr 5 20:56:52 UTC 2015
Author: adrian
Date: Sun Apr 5 20:56:51 2015
New Revision: 281119
URL: https://svnweb.freebsd.org/changeset/base/281119
Log:
Update the board MAC address configuration for the DIR-655A1.
The MAC addresses were totally wrong. They're like the DIR-625C1 - at
0x1ffe0004 and 0x1ffe0018. They're however stored as text strings.
The ath0 MAC address is also not set, even though the calibration
partition is valid.
So, pick the board address / first MAC as the ath0 MAC, and derive
arge0/arge1 from that. That way they're hopefully unique enough
for people with multiple devices.
Tested:
* DIR-655A1
TODO:
* Do the same for the DIR-625A1 and DIR-625C1.
Modified:
head/sys/mips/conf/DIR-655A1.hints
Modified: head/sys/mips/conf/DIR-655A1.hints
==============================================================================
--- head/sys/mips/conf/DIR-655A1.hints Sun Apr 5 20:07:33 2015 (r281118)
+++ head/sys/mips/conf/DIR-655A1.hints Sun Apr 5 20:56:51 2015 (r281119)
@@ -7,6 +7,32 @@
# QCA955X_ETH_CFG_RGMII_EN (1 << 0)
hint.qca955x_gmac.0.gmac_cfg=0x1
+# Use this to derive ath0 from arge0 MAC address.
+# 0x1ffe0004 is the arge0 MAC; but it's also the "unit MAC".
+# So make that the ath0 MAC, and make arge0 -1 from that.
+# ath0: offset 0
+# arge0: offset -1
+# arge1: use +1 from the arge0 MAC, even though
+# there's a secondary MAC address configured in EEPROM
+# at 0x1ffe0018.
+hint.ar71xx.0.eeprom_mac_addr=0x1ffe0004
+hint.ar71xx.0.eeprom_mac_isascii=1
+
+hint.ar71xx_mac_map.0.devid=ath
+hint.ar71xx_mac_map.0.unitid=0
+hint.ar71xx_mac_map.0.offset=0
+hint.ar71xx_mac_map.0.is_local=0
+
+hint.ar71xx_mac_map.1.devid=arge
+hint.ar71xx_mac_map.1.unitid=0
+hint.ar71xx_mac_map.1.offset=-1
+hint.ar71xx_mac_map.1.is_local=0
+
+hint.ar71xx_mac_map.2.devid=arge
+hint.ar71xx_mac_map.2.unitid=1
+hint.ar71xx_mac_map.2.offset=1
+hint.ar71xx_mac_map.2.is_local=0
+
# mdiobus0 on arge0
hint.argemdio.0.at="nexus0"
hint.argemdio.0.maddr=0x19000000
@@ -91,9 +117,8 @@ hint.arge.0.miimode=3 # RGMII
hint.arge.0.media=1000
hint.arge.0.fduplex=1
hint.arge.0.pll_1000=0x56000000
-
-# MAC for arge0 is the first 6 bytes of the ART
-hint.arge.0.eeprommac=0x1fff0000
+# hint.arge.0.eeprommac=0x1ffe0004
+# hint.arge.0.readascii=1
# arge1 - lock up to 1000/full
hint.arge.1.phymask=0x0
@@ -101,11 +126,12 @@ hint.arge.1.media=1000
hint.arge.1.fduplex=1
hint.arge.1.miimode=5 # SGMII
hint.arge.1.pll_1000=0x03000101
-
-# MAC for arge1 is the second 6 bytes of the ART
-hint.arge.1.eeprommac=0x1fff0006
+#hint.arge.1.eeprommac=0x1ffe0018
+#hint.arge.1.readascii=1
# ath0: Where the ART is - last 64k in the flash
+# Note: ath0 MAC is default (00:11:22:33:44:55) and thus
+# requires replacing via the board MAC address map.
hint.ath.0.eepromaddr=0x1fff0000
hint.ath.0.eepromsize=16384
More information about the svn-src-all
mailing list