1 # NVRAM board text file template for the ASUS RT-AC56U router.
3 # Copyright 2012, Broadcom Corporation
6 # THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY
7 # KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM
8 # SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS
9 # FOR A SPECIFIC PURPOSE OR NON-INFRINGEMENT CONCERNING THIS SOFTWARE.
11 # boardtype describes what type of Broadcom reference board that the design resembles
12 # Reference Board boardtype Reference Board boardtype
13 # --------------- --------- --------------- ---------
14 # BCM94704agr 0x042F BCM95356ssnr 0x0505
15 # BCM94712ap 0x0445 BCM94718nrl 0x050D
16 # BCM94712p 0x0446 BCM94718nrx 0x050E
17 # BCM94712agr 0x0451 BCM947186nrh 0x052A
18 # BCM95350gr 0x0456 BCM947186nr2 0x052B
19 # BCM94712lgr 0x0460 BCM94718nrlfmc 0x052C
20 # BCM95352gr 0x0467 BCM95357nr 0x053A
21 # BCM95351agr 0x0470 BCM95357nrepa 0x053B
22 # BCM94704mpcb 0x0472 BCM95358nr2 0x053D
23 # BCM94712agsdio 0x047B BCM95357nr2epa 0x054C
24 # BCM95352elgr 0x047F BCM95357nr2 0x054D
25 # BCM94705lmp 0x0489 BCM95357cbtnr2epa 0x056A
26 # BCM94705gmp 0x0489 BCM94706nr 0x05B2
27 # BCM94705gmp115 0x0489 BCM94706nrh 0x05D8
28 # BCM94312mcg 0x048B BCM94706Lmiih5 0x0603
29 # BCM94312mcag 0x048C BCM94706nr2hmc 0x0617
30 # BCM95354gr 0x048E BCM94708r 0x0646
31 # BCM94705nogig 0x0496 BCM94709r 0x0665
37 # BCM94717cbtnr 0x04EF
38 # BCM94716nr2ipa 0x04FB
40 # set a boardtype of BCM94708r but customized for ASUS RT-AC56U
43 # boardnum is set by the nvserial program. Don't edit it here.
47 # With sromrev 4 and above, the boardrev is a 16 bit number as follows:
48 # Bits [15:12] - Board Revision Type (brt), a 4 bit number with values:
49 # 0: Legacy (old boardrev numbering scheme)
50 # 1: Prototype "P" board.
51 # 2: Production "A" board.
53 # Bits [11:0] - Board revision, 12 bits which use BCD encoding to represent a decimal number between 0 and 999.
55 # Ex: A legacy board rev of 4.5 is 0x0045
56 # Ex: A P304 board rev is 0x1304
58 # Board revision is P100
61 # boardflags: 32-bits (LSB on top, MSB on bottom)
62 # 0 = no Bluetooth coexistence 1 = board supports Bluetooth coexistence
63 # 0 = set the PA VREF LDO to 2.85V 1 = set the PA VREF LDO to 3.00V
65 # 0 = does not implement GPIO 13 radio disable (Airline mode) 1 = board implements Airline mode on GPIO 13
66 # 0 = enable 256QAM support 1 = disable 256QAM support
69 # 0 = board does not have RoboSwitch or Ethernet switch core 1 = has RoboSwitch chip or Ethernet switch core
70 # 0 = OK to power down PLL and chip (deprecated)
71 # 0 = no high power CCK (disables opo parameter) 1 = can do high power CCK transmission (enables opo)
72 # 0 = board does not have ADMtek switch 1 = board has ADMtek Ethernet switch
74 # 0 = Ethernet switch does not have VLAN capability 1 = Ethernet switch has VLAN capability
75 # 0 = no Afterburner support (depricated)
76 # 0 = chip has it's PCI/PCIe interface connected 1 = PCI/PCIe is floating or there is no PCI/PCIe interface on the chip
77 # 0 = board does not have a FEM 1 = board uses a FEM
78 # (legacy SISO chips only, not used for MIMO chips)
80 # 0 = board does not have an external 2.4GHz LNA 1 = board has an external 2.4GHz LNA
81 # 0 = board does not have a high gain PA 1 = board has a high gain PA
82 # (legacy SISO chips only, not used for MIMO chips)
83 # 0 = no alternate Bluetooth coexistence 1 = 2-wire BT coex on GPIOs 4 & 5
84 # 0 = do not use alternate IQ imbalance settings 1 = use alt IQ settings
85 # (only applies to 4318)
87 # 0 = board has external PA(s) 1 = board does not have external PA(s)
88 # (legacy SISO chips only, not used for MIMO chips)
89 # 0 = board's TSSI is negative slope 1 = board's TSSI is positive slope
90 # (legacy SISO chips only, not used for MIMO chips)
91 # 0 = board does not use the PA voltage reference LDO 1 = board uses the PA voltage reference LDO
92 # (only applies to the 4326, 4328, and 5354)
93 # 0 = no triple-throw switch shared with Bluetooth 1 = has triple-throw switch shared with BT
95 # 0 = chip does not support the phase shifter for MRC 1 = chip supports the phase shifter for MRC
96 # (applies to 4325, 4326, 4328, and 5354 only)
97 # 0 = board power topology does not use the Buck/Boost reg 1 = board power topology uses the Buck/Boost regulator
99 # 0 = board does not share antenna with Bluetooth 1 = board has FEM and switch to share antenna with BT
100 # 0 = board power topology uses CBUCK (core buck) 1 = board power topology does not use CBUCK (core buck)
101 # (applies to 4325 only)
103 # 0 = normal CCK EVM and spectral mask 1 = favor CCK EVM over spectral mask
104 # 0 = board power topology does not use PALDO 1 = board power topology use PALDO
105 # 0 = normal LNLDO2 (low noise LDO2) 1 = select 2.5V as LNLDO2 (low noise LDO2) output voltage
107 # 0 = non 4325: no minimum power index 1 = non 4325: enforce minimum power index to avoid FEM damage
108 # (set to "1" only for SiGe SE2559L FEMs)
109 # 4325: no power-on-reset workaround 4325: Apply power-on-reset workaround
111 # 0 = board does not have an external 5GHz LNA 1 = board has an external 5GHz LNA
112 # 0 = for a 1x2 design, board does not have two T/R switches 1 = for a 1x2 design, board has two T/R switches
113 # 0 = normal operation of 5GHz T/R switch for high RF 1 = hold T/R switch in the "R" position for high RF input powers.
115 # 0 = use normal "InitGain" 1 = backoff "InitGain" based on the elna2g/5g parameters, for external LNAs only.
117 boardflags=0x00000110
119 # boardflags2: 32-bits (LSB on top, MSB on bottom)
120 # 0 = board uses the 2055's built-in LDOs to power the 2055 1 = board uses external rxbb regulator to power the 2055
121 # 0 = use normal 5GHz band PLL settings 1 = use alternate 5GHz band PLL settings
122 # (4322x and 4716/17/18 only)
123 # 0 = do not use H/W TX power control on 4321 1 = use H/W TX power control on 4321
125 # 0 = board does not support the 2x4 diversity switch 1 = board supports the 2x4 diversity switch
127 # 0 = board does not support the 5GHz band TX power gain 1 = board supports the 5GHz band TX power gain
128 # 0 = board does not override the ASPM and CLKREQ settings 1 = board overrides the ASPM and CLKREQ settings
129 # 0 = board is not a BCM94321mc123 board 1 = board is a BCM94321mc123 board (unused by S/W)
130 # 0 = board uses SECI Bluetooth coexistence 1 = board uses 3-wire Bluetooth coexistence
132 # 0 = BCM94321mcm93 uses SiGe FEM 1 = BCM94321mcm93 uses Skyworks FEM
133 # (for BCM94321mcm93 and BCM94321coex boards only)
134 # 0 = no workaround for clock harmonic spurs 1 = use the workaround for clock-harmonic spurs
135 # 0 = use normal 2.4GHz band PLL settings 1 = use alternate 2.4GHz band PLL settings
136 # (4322x and 4716/17/18 only)
137 # 0 = Normal LED drive (full push-pull) 1 = Drive the LED outputs as open-drain
140 # 0 = enable TX diversity for 11b frames 1 = Transmit 11b frames only on antenna 0
141 # 0 = no WAR to reduce/avoid clock harmonic spurs in 2G band 1 = enable WAR to reduce/avoid clock harmonic spurs in 2G band
142 # 0 = do not transmit 11b frames using all TX cores 1 = transmit 11b frames using all TX cores
143 # (TX diversity enabled or not by bit 12) (no TX diversity)
144 # 0 = use normal filter settings for 2.4GHz bandedge channels 1 = use alternate filter settings for 2.4GHz bandedge channels
145 # (4716, 4717, 4718, 5357, 5358, and 47186 internal PAs only)
147 # 0 = do not use 200kHz PLL bandwidth for 2G band 1 = use 200kHz PLL bandwidth for 2G band
148 # 0 = GPAIO pin is not connected to 3.3V 1 = GPAIO pin is connected to 3.3V
150 # 0 = for external PAs, use external TSSI for TX IQCAL 1 = use internal envelope detector for TX IQCAL even with external PAs
151 # (4322x and 4716/17/18 only)
152 # 0 = can turn off the buffered crystal output from the radio 1 = keep the buffered crystal output from radio ON
154 # 0 = control 2GHz PAs with the digital PA control signals 1 = control 2GHz PAs with the analog PA VERF LDO outputs
155 # 0 = control 5GHz PAs with the digital PA control signals 1 = control 5GHz PAs with the analog PA VERF LDO outputs
156 # 0 = normal external LNA and TR switch controls 1 = For AZW designs, 2GHz gmode_elna_gain conrols the TR switch
158 # 0 = no antenna sharing with Bluetooth 1 = share the chain 0 antenna with Bluetooth
160 # 0 = no adjustment to the temperature threshold, "tempthresh" 1 = chip can sustain a higher tempsense threshold
161 # add the value of parameter "tempoffset" to "tempthresh"
162 # 0 = use standard 4-wire Bluetooth coexistance 1 = use standard 3-wire Bluetooth coexistance only. 4-wire not supported
163 # 0 = 4331 power savings mode enabled (use for STAs) 1 = 4331 power savings mode disabled (use for routers)
165 # 0 = no ucode powersave WAR 1 = enable ucade powersave WAR
168 # 0 = enable dynamic Vmid in idle TSSI calibration 1 = disable dynamic Vmid in idle TSSI calibration
170 # (bits 29-31 are unused)
172 boardflags2=0x00000000
174 # sromrev tells the software what "version" of NVRAM is used. This is just for the CPU chip. The wireless chips will
175 # their own sromrev settings.
178 # For 4707/8/9: Specify ARM clock frequency (in MHz) ONLY. All other dividers are fixed ratios of this (div2, dvi4). DDR clock is set separately.
181 # frequency of the crystal driving the PLL, in kHz
182 # Even if the chip does not support any other crystal frequency, this parameter must still be specified.
186 # Only sdram_config is used. It is a 16-bit number.
188 # ----- -----------------------------------------------------------------------------------------------------------
190 # 10:8 Column Size: 000 = 2048 columns; 001 = 1024 columns; 010 = 512 columns
191 # 7 0 = 16 bit wide data bus; 1 = 8 bit wide data bus
192 # 6 0 = 4 banks; 1 = 8 banks
193 # NOTE: For 4 banks, columns can be 512, 1024, or 2048. For 8 banks, columns can only be 1024 or 2048.
195 # 2:0 CAS latency: 011 = CL is 3; 100 = CL is 4; 101 = CL is 5; 110 = CL is 6; 111 = CL is 7; all others reserved
197 # Set 64MB (1Gbit) of DDR3 (DDR64X16), x16, 8 banks, CL=7
200 # For 4707/8/9 - Required to set the DDR PHY clock correctly *before* the boot code is copied to DDR. Since the NVRAM
201 # parsing is done after the execution is passed to DDR, the DDR PHY clock must be reconfigured from its default of
202 # 333MHz. The "sdram_ncdl" parameter is stored in a fixed location in the CFE space, so the bootloader can read it while
203 # still executing from flash. This is a limitation of the way the DDR PHY clock reconfiguration occurs on 4707/8/9 parts.
205 # Set DDR3 clock of 533MHz (800MT/s) for RT-AC56U
208 # Configure the internal GMAC port to talk to the internal Ethernet switch
209 # et0phyaddr is the PHY address of the PHY chip or the address of the MII/RvMII/GMII/RGMII port of the switch chip.
211 # et0mcdport is which MDC/MDIO port is used to connect to the PHY/Switch chip. Only 4703/4704 has two MIIs, so this
212 # parameter is nearly always "0".
215 # Set the MAC address of the Ethernet ports
216 # From 9/2009 onward MAC addresses have changed from that 8/16 split to a 12/12 split, so the new macmid will be
217 # based on MAC addresses with the following format:
218 # 47 40 39 32 31 24 23 16 15 8 7 0
219 # | 00 | 90 | 4C | XX | XY | YY |
220 # where the low 24 bits are evenly split into 4096 interface/ boardtypes and 4096 serial numbers. The low nibble of
221 # XXX cannot be 0, since that corresponds to an old style MAC address, and macmid will correspond to bits 23:12, so
222 # its easy to differentiate them from the old ones.
224 # The new "macmid" values will start at 1 and go up to 0xFFF, skipping those that have the low nibble as 0 and the
225 # ones with the patterns 0x04Ex and 0x04Fx (These restrictions are enforced in the code). To form the mac address,
226 # the whole OUI (00:90:4C) will be prepended to those values and 12 bits of serial number will be appended.
228 # A new-style macmid:
231 # For router boards, nvserial now defines a new variable: "maclo12"
232 # so nvram text files for new boards will have to define the MAC address like this (for a macmid 0x008):
233 # et0macaddr=00:90:4C:00:8${maclo12}
234 # instead of the previous way:
235 # et0macaddr=00:90:4C:FC:${maclo}
237 # Set the MAC address of the Ethernet ports
238 # Reference Board macmid
239 # --------------- ---------
240 # BCM94704agr 4C:4E (1st MII)
241 # BCM94704agr 4C:4F (2nd MII)
249 # BCM94704mpcb 4C:A0 (1st MII)
250 # BCM94704mpcb 4C:A1 (2nd MII)
251 # BCM94704nr 4C:A0 (1st MII)
252 # BCM94704nr 4C:A1 (2nd MII)
256 # BCM94703nr 4C:F0 (1st MII)
257 # BCM94703nr 4C:F1 (2nd MII)
262 # BCM94717cbtnr 4C:2F
271 # BCM95357nr2epa 01:4
272 # BCM95357cbtnr2epa 02:8
273 # BCM94718nrlfmc 05:6
276 # BCM94706Lmiih5 0C:8
277 # BCM94706nr2hmc 0D:B
282 # The value of 00:90:4C:0F:F is for a BCM94708r reference design.
283 # The "maclo12" part is filled in by the nvserial program.
284 et0macaddr=00:90:4C:0F:F${maclo12}
286 # Ethernet switch config (vlan0:LAN, vlan1:WAN)
287 # WAN is on port 0, LAN is on ports 1-4. Port 5 is the MAC interface to the external switch or switch core.
288 # It MUST be present on all VLANs. The "*" means to enable this group for CFE use. Only one VLAN can have this,
289 # typically the LAN. 5325E/F and all internal switch cores use "5" for the MII port. 5395, 5397, and 53115 all use
290 # "8" for the MII/GMII/RGMII port number.
291 # NOTE: All packets on vlan1 (LAN) are tagged as such.
293 vlan1ports=0 1 2 3 5*
296 # vlan2 is the WAN. The "u" configures the switch to not add vlan tags for packets to/from the
297 # WAN port. A "t" (or nothing) in place of the "u" will configure the switch to add vlan tags for packets
298 # to/from the WAN port. Also see note under "wandevs".
302 # If the board is a dual band design the second wireless interface (usually the "a" band)
303 # will come up as a second device. But we have to tell the software to hook to this
304 # second wireless interface named "wl1". So set "landevs=vlan1 wl0 wl1".
305 # Else, just use the standard configuration of "landevs=vlan1 wl0".
306 landevs=vlan1 wl0 wl1
308 # The WAN port is almost always on an Ethernet port so use the normal config. If the WAN
309 # port is not an Ethernet port, then this parameter must be changed accordingly.
310 # NOTE: If WAN packets are vlan tagged, then must use "vlan2" in place of "et0".
311 # For the default case of no WAN vlan tags, then must use "et0".
312 # NOTE: If the board does not have a WAN port then must use "wandevs=".
313 # WAN port is on eth0.
316 # Set default IP address and net mask for the router.
317 lan_ipaddr=192.168.1.1
318 lan_netmask=255.255.255.0
320 # If the board supports WPS, then these parameters tell the software
321 # which GPIO is used for the WPS pushbutton and which is used for the WPS LED indicator.
325 # Set a short delay on boot so the CFE delays a bit before loading Linux. Allows easier S/W updates.
327 # If boot_wait is on, then "wait_time" sets the wait time from 3 to 20 seconds.
330 # The reset button is on GPIO 11. It MUST be active low, or the software will have to be modified.
333 # If the board has a USB power control chip, then the parameter "gpioX=usbportY" is used to tell
334 # the USB driver code that it needs to set that GPIO HIGH to turn on power to that USB port.
335 # "X" is the GPIO number, 0-31. "Y" is the USB port number, starting at "1".
341 # Watchdog timer in ms (0 will disable), 3000ms is minimum. 5592ms is maximum.
347 #2.4G BCM4331 nvram parameters
353 0:boardflags=0x80001200
354 0:boardflags2=0x00100000
356 0:macaddr=00:22:15:A5:03:00
386 # Power-Per-Rate settings:
391 0:cckbw20ul2gpo=0x0000
392 0:legofdmbw202gpo=0x65332000
393 0:legofdmbw20ul2gpo=0x65332000
394 0:mcsbw202gpo=0x65332000
395 0:mcsbw20ul2gpo=0x65332000
396 0:mcsbw402gpo=0x65332000
398 0:legofdm40duppo=0x4444
401 # Regulatory parameters