What's new

CFE bootloader update

  • SNBForums Code of Conduct

    SNBForums is a community for everyone, no matter what their level of experience.

    Please be tolerant and patient of others, especially newcomers. We are all here to share and learn!

    The rules are simple: Be patient, be nice, be helpful or be gone!

Status
Not open for further replies.
Thanks for the news!

I'd like to warn about two things:
1. There is a checksum at start of NVRAM image (at 0x400, see how it calculated). We are lucky current CFE ignores it, but it might be a problem in future.

2. Not only a MAC addresses must be edited.

Code:
# diff -u ./bruno.txt ./my.txt | grep -E "^\-|^\+"
--- ./bruno.txt 2014-05-24 07:34:16.000000000 +0400
+++ ./my.txt    2014-05-24 07:36:42.000000000 +0400
…
-regulation_domain=US
-regulation_domain_5G=Q2
…
+regulation_domain=EU
+regulation_domain_5G=EU
By flashing wrong region code, some forbidden Wi-Fi frequencies might be enabled (for US) or some channels usage will be unreasonable limited (for EU).
 
Take a look at this new thread i created, maybe you can help on collecting some more CFE's :)
Cool! Where did you get CFE 1.0.1.4?

Ex: New CFE's don't allow setting RT-AC68U at 800MHZ DDR3 speed and older versions allow it.
BTW, 1.0.1.2 and 1.0.1.3 does not allow overclocking RT-N66U too.


Does your script works on 1.0.1.4?
I can do it, but is it necessary? Wonder what bugs was fixed in new version.
 
Well this is weird, one friend of mine bought a "2014" RT-N66U model and i asked him about the HW version on the box/router and he told me that was B1, i was expecting that new RT-N66U routers were all B2 version, i guess i was wrong or that was an older version that was in stock for all this years on the store he purchased.

Then after he installed the equipment i asked him about the Bootloader version on the unit and he told me it was 1.0.1.4, then i dumped it :)

I can do it, but is it necessary? Wonder what bugs was fixed in new version.

I guess not, tks anyway for asking and for letting me know about regulation_domain and regulation_domain_5G, i guess i forgot that part :)
 
Last edited:
Thanks for the news!

I'd like to warn about two things:
1. There is a checksum at start of NVRAM image (at 0x400, see how it calculated). We are lucky current CFE ignores it, but it might be a problem in future.

What about older CFE versions? Are they safe too?
 
On RT-N66U — yes. DD-WRT guys edited MAC in the same (brutal:)) way. My script integrates CRC in a right way.

It might be interesting see your script working on all CFE's then (non brutal) :)
 
Last edited:
And what about changelog?

I don't think we will have a changelog or ever did, it's not like a FW. According to ASUS, users shouldn't mess with CFE, so they don't even anounce new versions or changelogs :)
 
Last edited:
And what about changelog?
We may see changelog only for some other Asus router, where CFE sources was opened. Unfortunatelly, CFE sources for RT-N66U still closed.

It might be interesting see your script working on all CFE's then (non brutal) :)
I'm checking all my scripts (including CFE update) on my own device. I see no benefits for updating CFE to 1.0.1.4 for now, sorry. If someone confirm about unblocked overclocking or some other interesting features or bug fixes, I'll do it.
 
Here you have it then:

admin@RT-N66U-C6C0:/tmp/home/root# nvram get bl_version
1.0.1.4

admin@RT-N66U-C6C0:/tmp/home/root# nvram get clkfreq
600,300,150
admin@RT-N66U-C6C0:/tmp/home/root# cat /proc/cpuinfo
system type : Broadcom BCM5300 chip rev 1 pkg 0
processor : 0
cpu model : MIPS 74K V4.9
BogoMIPS : 299.82
wait instruction : no
microsecond timers : yes
tlb_entries : 64
extra interrupt vector : no
hardware watchpoint : yes
ASEs implemented : mips16 dsp
shadow register sets : 1
VCED exceptions : not available
VCEI exceptions : not available

unaligned_instructions : 56
dcache hits : 2147483648
dcache misses : 0
icache hits : 2147483648
icache misses : 0
instructions : 2147483648
admin@RT-N66U-C6C0:/tmp/home/root# openssl speed aes-128-cbc
Doing aes-128 cbc for 3s on 16 size blocks: 1880849 aes-128 cbc's in 3.01s
Doing aes-128 cbc for 3s on 64 size blocks: 501121 aes-128 cbc's in 3.01s
Doing aes-128 cbc for 3s on 256 size blocks: 128176 aes-128 cbc's in 3.01s
Doing aes-128 cbc for 3s on 1024 size blocks: 31922 aes-128 cbc's in 2.98s
Doing aes-128 cbc for 3s on 8192 size blocks: 4014 aes-128 cbc's in 3.01s
OpenSSL 1.0.1h 5 Jun 2014
built on: Sun Jun 8 20:17:33 WEST 2014
options:bn(64,32) rc4(ptr,char) des(idx,cisc,2,long) aes(partial) idea(int) blowfish(ptr)
compiler: mipsel-uclibc-gcc -fPIC -DOPENSSL_PIC -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -ffunction-sections -fdata-sections -DL_ENDIAN -DTERMIO -O3 -DLINUX26 -DCONFIG_BCMWL5 -DDEBUG_NOISY -DDEBUG_RCTEST -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32r2 -mips32r2 -DRTCONFIG_NVRAM_64K -DLINUX_KERNEL_VERSION=132630 -DOPENSSL_SMALL_FOOTPRINT -fomit-frame-pointer -Wall -DSHA1_ASM -DSHA256_ASM -DAES_ASM
The 'numbers' are in 1000s of bytes per second processed.
type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes
aes-128 cbc 9997.87k 10655.06k 10901.35k 10969.17k 10924.48k

------------------------------------------------------------------------------------------------------------

admin@RT-N66U-C6C0:/tmp/home/root# nvram get clkfreq
650,325,150
admin@RT-N66U-C6C0:/tmp/home/root# cat /proc/cpuinfo
system type : Broadcom BCM5300 chip rev 1 pkg 0
processor : 0
cpu model : MIPS 74K V4.9
BogoMIPS : 324.40
wait instruction : no
microsecond timers : yes
tlb_entries : 64
extra interrupt vector : no
hardware watchpoint : yes
ASEs implemented : mips16 dsp
shadow register sets : 1
VCED exceptions : not available
VCEI exceptions : not available

unaligned_instructions : 92
dcache hits : 2147483648
dcache misses : 0
icache hits : 2147483648
icache misses : 0
instructions : 2147483648

admin@RT-N66U-C6C0:/tmp/home/root# openssl speed aes-128-cbc
Doing aes-128 cbc for 3s on 16 size blocks: 2049423 aes-128 cbc's in 3.02s
Doing aes-128 cbc for 3s on 64 size blocks: 547349 aes-128 cbc's in 3.02s
Doing aes-128 cbc for 3s on 256 size blocks: 140095 aes-128 cbc's in 3.02s
Doing aes-128 cbc for 3s on 1024 size blocks: 35241 aes-128 cbc's in 3.02s
Doing aes-128 cbc for 3s on 8192 size blocks: 4374 aes-128 cbc's in 3.01s
OpenSSL 1.0.1h 5 Jun 2014
built on: Sun Jun 8 20:17:33 WEST 2014
options:bn(64,32) rc4(ptr,char) des(idx,cisc,2,long) aes(partial) idea(int) blowfish(ptr)
compiler: mipsel-uclibc-gcc -fPIC -DOPENSSL_PIC -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -ffunction-sections -fdata-sections -DL_ENDIAN -DTERMIO -O3 -DLINUX26 -DCONFIG_BCMWL5 -DDEBUG_NOISY -DDEBUG_RCTEST -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32r2 -mips32r2 -DRTCONFIG_NVRAM_64K -DLINUX_KERNEL_VERSION=132630 -DOPENSSL_SMALL_FOOTPRINT -fomit-frame-pointer -Wall -DSHA1_ASM -DSHA256_ASM -DAES_ASM
The 'numbers' are in 1000s of bytes per second processed.
type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes
aes-128 cbc 10857.87k 11599.45k 11875.60k 11949.27k 11904.26k

-----------------------------------------------------------------------------------------------------------

admin@RT-N66U-C6C0:/tmp/home/root# nvram get clkfreq
660,330,150
admin@RT-N66U-C6C0:/tmp/home/root# cat /proc/cpuinfo
system type : Broadcom BCM5300 chip rev 1 pkg 0
processor : 0
cpu model : MIPS 74K V4.9
BogoMIPS : 330.95
wait instruction : no
microsecond timers : yes
tlb_entries : 64
extra interrupt vector : no
hardware watchpoint : yes
ASEs implemented : mips16 dsp
shadow register sets : 1
VCED exceptions : not available
VCEI exceptions : not available

unaligned_instructions : 20
dcache hits : 2147483648
dcache misses : 0
icache hits : 2147483648
icache misses : 0
instructions : 2147483648
admin@RT-N66U-C6C0:/tmp/home/root# openssl speed aes-128-cbc
Doing aes-128 cbc for 3s on 16 size blocks: 2080224 aes-128 cbc's in 3.02s
Doing aes-128 cbc for 3s on 64 size blocks: 557599 aes-128 cbc's in 3.01s
Doing aes-128 cbc for 3s on 256 size blocks: 141717 aes-128 cbc's in 3.01s
Doing aes-128 cbc for 3s on 1024 size blocks: 35514 aes-128 cbc's in 3.01s
Doing aes-128 cbc for 3s on 8192 size blocks: 4452 aes-128 cbc's in 3.01s
OpenSSL 1.0.1h 5 Jun 2014
built on: Sun Jun 8 20:17:33 WEST 2014
options:bn(64,32) rc4(ptr,char) des(idx,cisc,2,long) aes(partial) idea(int) blowfish(ptr)
compiler: mipsel-uclibc-gcc -fPIC -DOPENSSL_PIC -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -ffunction-sections -fdata-sections -DL_ENDIAN -DTERMIO -O3 -DLINUX26 -DCONFIG_BCMWL5 -DDEBUG_NOISY -DDEBUG_RCTEST -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32r2 -mips32r2 -DRTCONFIG_NVRAM_64K -DLINUX_KERNEL_VERSION=132630 -DOPENSSL_SMALL_FOOTPRINT -fomit-frame-pointer -Wall -DSHA1_ASM -DSHA256_ASM -DAES_ASM
The 'numbers' are in 1000s of bytes per second processed.
type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes
aes-128 cbc 11021.05k 11855.93k 12053.01k 12081.84k 12116.54k


I'm sure other frequency's will work too, but i'm missing the clock table for now, i can test it later.

nvram set clkfreq=660,330,165 works too.
 
Last edited:
Hi hggomes,

Thank you very much for the information you posted. As the 1.0.1.4 CFE unblocks the overclocking it is of particular interest for me. Would you be so kind to provide the following information:

1. openssl performance for AES-256-CBC on overclocked RT-N66U for 650 and 660 MHz or any higher frequency (you posted only AES-128-CBC results)
2. does the overclocking changes the temperatures of radios?
3. do you have any idea what could be the highest reasonable (safe) overclock frequency?
4. any issues (may) resulting from overclocking

I am running OpenVPN server on my router and crypto performance is very important for me, so if the 1.0.1.4 CFE enables overclocking I will give it a try.

And one question to Merlin: Shall I re-flash your FW after changing of CFE?

My current CFE is 1.0.1.2
 
Last edited:
I'm sure other frequency's will work too, but i'm missing the clock table for now, i can test it later.
Here it is:
Code:
/* cpu, ddr, axi, proc_PLL, */
{ 200, 100, 50, 0xc0011080, },
{ 300, 150, 75, 0xc00110c0, },
{ 400, 200, 100, 0xc0011100, },
{ 500, 250, 125, 0xc0011140, },
{ 600, 300, 150, 0xc0011180, },
{ 632, 316, 158, 0xc00157e8, },
{ 650, 325, 162, 0xc00111a0, },
{ 662, 331, 165, 0xc00111a8, },

Checked CFE 1.0.1.4, works like expected:
Code:
# cat /proc/cpuinfo | grep Bogo
BogoMIPS                : 299.82
# nvram get clkfreq
600,300,150

# # Now overclocking:
# nvram set clkfreq=662,331,165 && nvram commit && reboot 
…
# cat /proc/cpuinfo | grep Bogo
BogoMIPS                : 330.95
Definetely, RT-N66U overclocking is unblocked!
I'll update first post ASAP.

Update: done.
 
Last edited:
Hi hggomes,

Thank you very much for the information you posted. As the 1.0.1.4 CFE unblocks the overclocking it is of particular interest for me. Would you be so kind to provide the following information:

1. openssl performance for AES-256-CBC on overclocked RT-N66U for 650 and 660 MHz or any higher frequency (you posted only AES-128-CBC results)
2. does the overclocking changes the temperatures of radios?
3. do you have any idea what could be the highest reasonable (safe) overclock frequency?
4. any issues (may) resulting from overclocking

I am running OpenVPN server on my router and crypto performance is very important for me, so if the 1.0.1.4 CFE enables overclocking I will give it a try.

And one question to Merlin: Shall I re-flash your FW after changing of CFE?

My current CFE is 1.0.1.2

1.

admin@RT-N66U-C6C0:/tmp/home/root# nvram get clkfreq
662,331,165
admin@RT-N66U-C6C0:/tmp/home/root# cat /proc/cpuinfo
system type : Broadcom BCM5300 chip rev 1 pkg 0
processor : 0
cpu model : MIPS 74K V4.9
BogoMIPS : 330.95
wait instruction : no
microsecond timers : yes
tlb_entries : 64
extra interrupt vector : no
hardware watchpoint : yes
ASEs implemented : mips16 dsp
shadow register sets : 1
VCED exceptions : not available
VCEI exceptions : not available

unaligned_instructions : 380
dcache hits : 2147483648
dcache misses : 0
icache hits : 2147483648
icache misses : 0
instructions : 2147483648
admin@RT-N66U-C6C0:/tmp/home/root# openssl speed aes-128-cbc
Doing aes-128 cbc for 3s on 16 size blocks: 2079582 aes-128 cbc's in 3.00s
Doing aes-128 cbc for 3s on 64 size blocks: 545241 aes-128 cbc's in 2.98s
Doing aes-128 cbc for 3s on 256 size blocks: 138968 aes-128 cbc's in 2.98s
Doing aes-128 cbc for 3s on 1024 size blocks: 35711 aes-128 cbc's in 3.00s
Doing aes-128 cbc for 3s on 8192 size blocks: 4463 aes-128 cbc's in 2.99s
OpenSSL 1.0.1h 5 Jun 2014
built on: Sun Jun 8 20:17:33 WEST 2014
options:bn(64,32) rc4(ptr,char) des(idx,cisc,2,long) aes(partial) idea(int) blowfish(ptr)
compiler: mipsel-uclibc-gcc -fPIC -DOPENSSL_PIC -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -ffunction-sections -fdata-sections -DL_ENDIAN -DTERMIO -O3 -DLINUX26 -DCONFIG_BCMWL5 -DDEBUG_NOISY -DDEBUG_RCTEST -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32r2 -mips32r2 -DRTCONFIG_NVRAM_64K -DLINUX_KERNEL_VERSION=132630 -DOPENSSL_SMALL_FOOTPRINT -fomit-frame-pointer -Wall -DSHA1_ASM -DSHA256_ASM -DAES_ASM
The 'numbers' are in 1000s of bytes per second processed.
type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes
aes-128 cbc 11091.10k 11709.87k 11938.19k 12189.35k 12227.72k

admin@RT-N66U-C6C0:/tmp/home/root# openssl speed aes-256-cbc
Doing aes-256 cbc for 3s on 16 size blocks: 1615079 aes-256 cbc's in 3.02s
Doing aes-256 cbc for 3s on 64 size blocks: 424612 aes-256 cbc's in 3.01s
Doing aes-256 cbc for 3s on 256 size blocks: 107727 aes-256 cbc's in 3.00s
Doing aes-256 cbc for 3s on 1024 size blocks: 27104 aes-256 cbc's in 3.00s
Doing aes-256 cbc for 3s on 8192 size blocks: 3388 aes-256 cbc's in 3.00s
OpenSSL 1.0.1h 5 Jun 2014
built on: Sun Jun 8 20:17:33 WEST 2014
options:bn(64,32) rc4(ptr,char) des(idx,cisc,2,long) aes(partial) idea(int) blowfish(ptr)
compiler: mipsel-uclibc-gcc -fPIC -DOPENSSL_PIC -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -ffunction-sections -fdata-sections -DL_ENDIAN -DTERMIO -O3 -DLINUX26 -DCONFIG_BCMWL5 -DDEBUG_NOISY -DDEBUG_RCTEST -pipe -DBCMWPA2 -funit-at-a-time -Wno-pointer-sign -mtune=mips32r2 -mips32r2 -DRTCONFIG_NVRAM_64K -DLINUX_KERNEL_VERSION=132630 -DOPENSSL_SMALL_FOOTPRINT -fomit-frame-pointer -Wall -DSHA1_ASM -DSHA256_ASM -DAES_ASM
The 'numbers' are in 1000s of bytes per second processed.
type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes
aes-256 cbc 8556.71k 9028.30k 9192.70k 9251.50k 9251.50k

If you want/need better performance with OpenSSL / OpenVPN you should try RT-AC56U or RT-AC68U, it has almost 4x times better performance, and even more if overclocked.

2. I didn't notice any changes on temperatures, i have double check it.

3. I guess "nvram set clkfreq=662,331,165" are the highest clocks.

4. You can have instability on the router, not sure if that's the case on RT-N66U because i'm using RT-AC68U, but you can do some testing and after some time at those speeds you will notice for sure if any instabilty exists or not.

Beside that CPU/DDR lifetime could be less, even it's not a problem in my opinion, it's only 10% overclocking so it does not have a big impact definitely. If CPU/DDR it's prepared to work let's say 15 years you will loose less then a year if so with the overclock, don't you worry about it :)
 
Last edited:
After update:

ASUSWRT-Merlin RT-N66U_3.0.0.4 Fri Jun 6 20:30:43 UTC 2014
admin@RT-N66U:/tmp/home/root# cat /dev/mtd0ro | grep bl_version
bl_version=1.0.1.4
admin@RT-N66U:/tmp/home/root# nvram get bl_version
1.0.1.3


Sent from my Galaxy Nexus using Tapatalk
 
Last edited:
After update:

ASUSWRT-Merlin RT-N66U_3.0.0.4 Fri Jun 6 20:30:43 UTC 2014
admin@RT-N66U:/tmp/home/root# cat /dev/mtd0ro | grep bl_version
bl_version=1.0.1.4
admin@RT-N66U:/tmp/home/root# nvram get bl_version
1.0.1.3


Sent from my Galaxy Nexus using Tapatalk

Something is wrong there, have you poweroff/on the router? How you have done the CFE update?
 
Lol, now I see. I'm pretty sure I just copied and pasted before.
 
Status
Not open for further replies.

Latest threads

Sign Up For SNBForums Daily Digest

Get an update of what's new every day delivered to your mailbox. Sign up here!

Members online

Top