Date: Sun, 5 Apr 2015 20:56:52 +0000 (UTC) From: Adrian Chadd <adrian@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r281119 - head/sys/mips/conf Message-ID: <201504052056.t35Kuqff053539@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201504052056.t35Kuqff053539>