You are on page 1of 37

[Hack] TL-MR3020 + hack = OpenWRT USB / WiFi / Ethernet

Posted by skywodd September 22, 2012 15 comments Filed under madeinfr , openwrt Hello everyone! To continue my project "Blyss box DIY" I started using a small router usb / wifi / ethernet. That it will serve as a "link" between an arduino board (and my code BlyssSpoofer / BlyssSniffer) and a web interface (or other, to see). Other members of the forum arduino.cc have also embarked on the adventure, here's a topic of many on the subject: http://arduino.cc/forum/index.php?topic=115889 The biggest problem was finding a wifi router that can handle the situation. That must comply with the following criteria: - Be small, ideally the size of a map arduino UNO - Have a USB port (or default serial port) to connect the arduino board - Be compatible with OpenWRT (Linux distribution for routers) - Have a network interface: wifi, ethernet or both After much research and advice of the forum members arduino two candidates out of the lot: - TL-WR703N the (available only in China) - TL-MR3020 the (available in France but more expensive) Hardware level is almost the same (same Atheros chipset, same RAM, same Flash) with some differences ready (Ethernet shielded vs. unshielded number of leds, ...). For my part I chose to use the TL-MR3020 with OpenWRT (trunk version): http://wiki.openwrt.org/toh/tp-link/tl-mr3020 Why TL-MR3020 and not the Chinese clone the TL-WR703N? - Over GPIO LED = more = more opportunities for hacking - 2.54mm pitch connector series (no = standard not to break the head with son "flying") Against by good price level is not the same thing ... 17 for the TL-WR703N on ebay against almost double for the TLMR3020 on amazon, LDLC, ... You choose In this first article I will detail only the hardware part. I will discuss the software part in a separate article. The box: If you read my articles for some time now you must have noticed that I love unpacking everything I receive a picture This router is no exception, so here is what the box looks like:

The router inside the box with its protective film:

And all accessories many and varied:

Cable mini usb power, adapter 5v sector, an ethernet cable in short, everything you need for a user "classic".

Router, small tower owner: The router as a whole:

Besides the color (gray instead of blue) and the duo led + button there is no aesthetic difference with the TL-WR703N. At the front:

Include: - Ethernet port - Port usb FOOD ONLY - The switch to select the operating mode of the router (with original firmware) On the right side:

We find the usb port to (usually) to connect a 3G dongle. In my case it will be a hub with a USB key (for rootfs) and a map that will be connected to the Arduino USB port.

On top:

5 LEDs: - Power - 3G - Wifi - Ethernet - WPS And WPS buttons. -> First difference with the TL-WR703N, it has only 2 LED (one of which is not installed by default) and a reset button. Ps: this is an ethernet cable ... I do not really trust his strength ^ ^ "

Hulling operation, or how to open a box can not be opened: Open TL-MR3020 box is just impossible without a knife with a very fine blade (and solid) and lots and lots of patience ...

To open the case you have to jump two clips of colorful covers, while sliding a knife around the cap to break the glue dots. The first clip is just above the port mini usb, the second face-to ~ 1.5cm to the left of TP-LINK logo. This is what it looks once the box open:

You will notice the small squares around the box are ALL stuck Ultrasound top cover. Ps: Be careful not to injure yourself by sliding the knife blade into the slot of the case, an accident can happen so quickly ... The electronic circuit: Once the box is open (finally) possible to see what is hiding in the beast:

The revision number of the circuit is on the ethernet connector:

As you can see I have a version 1 revision 7. -> 2nd difference with the TL-WR703N, TL-WR703N the ethernet port is screened, the TL-MR3020 it is not ... The details of the hardware: I have not really followed any particular order, it is a little loose + Atheros chipset antenna:

The Atheros chipset is the heart of the router, it is composed of CPU and some ethernet / wifi. It is an Atheros chipset AR9330 revision 1 (= AR9331). The cpu is within the range of AR72xx and more precisely a turning AR7240 400MHz. The party supports a maximum of wifi 802.11 b / g / n 150Mbps. Part ethernet when her 10Mpbs modes and supports 100Mbps. Mini usb port and power port usb "classic":

Mini usb port is only there to provide the +5 v circuit. It can not be used or other usb device. According to the wiki the TL-MR3020 OpenWRT can operate with relatively low voltages of about 2.6/2.7v. This leaves the possibility of using 1S 3.7V lipo battery for power (I'll have to test to see). The second USB port, more "classic" can still be used to it by usb host like any normal USB port. Just have the proper drivers in his image OpenWRT and all will be well RAM and LEDs:

RAM is 32MB in size which leaves a lot of room for the user.

When the LEDs are the numbers 5 As I mentioned a little earlier. Detailed wiring leds is available on the OpenWRT wiki: # http://wiki.openwrt.org/toh/tp-link/tl-mr3020 leds SPI flash memory:

SPI is the flash memory of 4 MB in size, it is cut along the plane memory if below:
mtd0 mtd1 mtd2 mtd3 mtd4 (128Ko) : u-boot (1Mo) : kernel (2.75Mo) : rootfs (64Ko) : configuration (64Ko) : art (= Atheros Radio Test)

Especially not touch the memory area called "ART" if the wifi chipset will not work any more. If you ever brickez bootloader router it is possible to salvage by unsoldering the flash by connecting a programmer.

The OpenWRT wiki provided even a factory image of the entire flash: http://wiki.openwrt.org/toh/tp-link/tl-mr3020 # restoring.original.firmware (2nd link in "link dump") For safety I'll do a full dump area and mtd0 mtd4 ... But I will discuss in the article on the software Buttons:

There are two buttons, wired three GPIO. The first button is labeled "button" is normally used to activate WPS wifi authentication. The second button is labeled "slide" and has three positions, it is normally used to select the operating mode of the router. Detailed wiring buttons are available on the wiki OpenWrt: http://wiki.openwrt.org/toh/tp-link/tl-mr3020 # buttons The serial port:

This is the most interesting because it is this one that allows access to the bootloader (u-boot) and fundamentally change the linux kernel and rootfs router. I do not use the flash method through the web interface, I find it too wobbly. Method by flash bootloader requires extreme vigilance to avoid bricker router but when we used it is much more reliable. The serial port is wired as follows:
| (vcc) (gnd) (rx) [tx] |

() Represents a round pad and [] the square pad (pin 1 mark). The serial port is configured for 115200 baud, 8 data bits, 1 start bit, 1 stop bit, no parity and no flow control. Problem: The serial port is wired a little strange, so that with some serial adapters -> USB that does not work properly. I tested with my sparkfun ftdi basic of, actually it was not working base. But do not panic, just put a resistor between VCC and 10K Tx to solve the problem (Thanks to those who took the time to add a note about it in the OpenWRT wiki, otherwise I would still be looking for the problem ^ ^) History of doing things I did own a serial adapter -> FTDI basic with a piece of pcb that was lying:

Note: I have not connected the VCC pin connector FTDI basic circuit to VCC, so I can use a ftdi basic 5v or 3v3 without problems Once the serial connector soldered it looks like this:

Then simply plug the adapter into the serial connector:

Basic and ftdi on the adapter:

Then you plug the usb power hop and all lights!

And the serial monitor gives a nice serial console:


<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 001 style="direction: ltr; text-align: left">U-Boot 1.1.4 (Mar 20 2012 - 11:37:54)</span> U-Boot 1.1.4 (Mar 20 2012 - 11:37:54)</span> 002 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 003 style="direction: ltr; text-align: left">AP121 (ar9330) U-boot</span> AP121 (ar9330) Uboot</span> 004 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">DRAM: 32 MB</span> DRAM: 32 MB</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 006 style="direction: ltr; text-align: left">led turning on for 1s...</span> LED turning on for 1s ...</span> 005 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">id read 0x100000ff</span> id read 0x100000ff</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 008 style="direction: ltr; text-align: left">flash size 4194304, sector count = 64</span> flash size 4194304, sector count = 64</span> 007 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">Flash: 4 MB</span> Flash: 4 MB</span> 010 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 009

style="direction: ltr; text-align: left">Using default environment</span> Using default environment</span> 011 012 013 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">In: serial</span> In: serial</span>

<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">Out: serial</span> Out: serial</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 014 style="direction: ltr; text-align: left">Err: serial</span> Err: serial</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 015 style="direction: ltr; text-align: left">Net: ag7240_enet_initialize...</span> Net ag7240_enet_initialize ...</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">No valid address in Flash.</span> No valid address 016 in Flash.</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="googlesrc-text" style="direction: ltr; text-align: left">Using fixed address</span> Using fixed address</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">No valid address in Flash.</span> No valid address 017 in Flash.</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="googlesrc-text" style="direction: ltr; text-align: left">Using fixed address</span> Using fixed address</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 018 style="direction: ltr; text-align: left">: cfg1 0x5 cfg2 0x7114</span> : CFG1 0x5 0x7114 CFG2</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 019 style="direction: ltr; text-align: left">eth0: 00:03:7f:09:0b:ad</span> eth0: 00:03:7 f: 09:0 b: ad</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 020 style="direction: ltr; text-align: left">ag7240_phy_setup</span> ag7240_phy_setup</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">eth0 up</span> eth0 up</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 022 style="direction: ltr; text-align: left">: cfg1 0xf cfg2 0x7214</span> : 0xf CFG1 CFG2 0x7214</span> 021 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 023 style="direction: ltr; text-align: left">eth1: 00:03:7f:09:0b:ad</span> eth1: 00:03:7 f: 09:0 b: ad</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 024 style="direction: ltr; text-align: left">athrs26_reg_init_lan</span> athrs26_reg_init_lan</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 025 style="direction: ltr; text-align: left">ATHRS26: resetting s26</span> ATHRS26: resetting s26</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 026 style="direction: ltr; text-align: left">ATHRS26: s26 reset done</span> ATHRS26: s26 reset done</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">ag7240_phy_setup</span> ag7240_phy_setup</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 028 style="direction: ltr; text-align: left">eth1 up</span> eth1 up</span> 027 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">eth0, eth1</span> eth0, eth1</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 030 style="direction: ltr; text-align: left">Autobooting in 1 seconds</span> Autobooting in 1 second</span> 029 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 031 style="direction: ltr; text-align: left">## Booting image at 9f020000 ...</span> # # Booting image at 9f020000 ...</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">Uncompressing Kernel Image ...</span> Uncompressing 032 Kernel Image ...</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">OK</span> OK</span> 033 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 034 style="direction: ltr; text-align: left">Starting kernel ...</span> Starting kernel ...</span> 035

<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 036 style="direction: ltr; text-align: left">Booting AR9330(Hornet)...</span> Booting AR9330 (Hornet) ...</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">Linux version 2.6.31--LSDK-9.2.0.312 037 (root@localhost.localdomain) (gcc version 4.3.3 (GCC) ) #199 Tue Mar 20 11:38:41 CST 2012</span> Linux version 2.6.31 - LSDK-9.2.0.312 (root@localhost.localdomain) (gcc version 4.3.3 (GCC)) # 199 Tue Mar 20 11:38:41 CT 2012</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 038 style="direction: ltr; text-align: left">flash_size passed from bootloader = 4</span> flash_size Passed from bootloader = 4</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 039 style="direction: ltr; text-align: left">CPU revision is: 00019374 (MIPS 24Kc)</span> CPU revision is: 00019374 (MIPS 24Kc)</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 040 style="direction: ltr; text-align: left">Determined physical RAM map:</span> Determined physical RAM map:</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 041 style="direction: ltr; text-align: left">memory: 02000000 @ 00000000 (usable)</span> memory: 02000000 @ 00000000 (usable)</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 042 style="direction: ltr; text-align: left">User-defined physical RAM map:</span> User-defined physical RAM map:</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 043 style="direction: ltr; text-align: left">memory: 02000000 @ 00000000 (usable)</span> memory: 02000000 @ 00000000 (usable)</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 044 style="direction: ltr; text-align: left">Zone PFN ranges:</span> Zone PFN ranges:</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 045 style="direction: ltr; text-align: left">Normal 0x00000000 -> 0x00002000</span> Normal 0x00000000 -> 0x00002000</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 046 style="direction: ltr; text-align: left">Movable zone start PFN for each node</span> Movable start PFN for each Stock area node</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 047 style="direction: ltr; text-align: left">early_node_map[1] active PFN ranges</span> early_node_map [1] active PFN ranges</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 048 style="direction: ltr; text-align: left">0: 0x00000000 -> 0x00002000</span> 0: 0x00000000 -> 0x00002000</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">Built 1 zonelists in Zone order, mobility grouping 049 on.</span> Built 1 zonelists in Zone order, mobility grouping on.</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">Total pages: 8128</span> Total pages: 8128</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">Kernel command line: console=ttyS0,115200 root=31:02 rootfstype=squashfs init=/sbin/init mtdparts=ar7240-nor0:128k(u050 boot),1024k(kernel),2816(rootfs),64k(config),64k(ART) mem=32M</span> Kernel command line: console = ttyS0, 115200 root = 31:02 rootfstype = squashfs init = / sbin / init mtdparts = ar7240-nor0: 128k (u-boot), 1024k (kernel), 2816 (rootfs), 64k (config) , 64k (ART) mem = 32M</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 051 style="direction: ltr; text-align: left">PID hash table entries: 128 (order: 7, 512 bytes)</span> PID hash table entries: 128 (order: 7, 512 bytes)</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 052 style="direction: ltr; text-align: left">Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)</span> Dentry hash table entries cached: 4096 (order: 2, 16384 bytes)</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 053 style="direction: ltr; text-align: left">Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)</span> Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">Primary instruction cache 64kB, VIPT, 4-way, 054 linesize 32 bytes.</span> Primary Cache 64kB instruction, VIPT, 4-way, linesize 32 bytes.</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">Primary data cache 32kB, 4-way, VIPT, cache aliases, 055 linesize 32 bytes</span> Primary data cache 32kB, 4-way, VIPT, cache aliases, linesize 32 bytes</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 056 style="direction: ltr; text-align: left">Writing ErrCtl register=00000000</span> Writing

ErrCtl register = 00000000</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 057 style="direction: ltr; text-align: left">Readback ErrCtl register=00000000</span> ErrCtl readback register = 00000000</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">Memory: 29876k/32768k available (1884k kernel code, 058 2892k reserved, 521k data, 116k init, 0k highmem)</span> Memory: 29876k/32768k available (1884k kernel code, 2892k reserved, 521k data, 116k init, 0k highmem)</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 059 style="direction: ltr; text-align: left">Hierarchical RCU implementation.</span> Hierarchical RCU implementation.</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 060 style="direction: ltr; text-align: left">NR_IRQS:128</span> NR_IRQS: 128</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 061 style="direction: ltr; text-align: left">plat_time_init: plat time init done</span> plat_time_init: plat time init done</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">Calibrating delay loop...</span> Calibrating delay 062 loop ...</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="googlesrc-text" style="direction: ltr; text-align: left">266.24 BogoMIPS (lpj=532480)</span> 266.24 BogoMIPS (lpj = 532480)</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 063 style="direction: ltr; text-align: left">Mount-cache hash table entries: 512</span> Mountcache hash table entries: 512</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 064 style="direction: ltr; text-align: left">NET: Registered protocol family 16</span> NET: Registered protocol family 16</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 065 style="direction: ltr; text-align: left">===== ar7240_platform_init: 0</span> Ar7240_platform_init =====: 0</span> 066 067 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">Whoops!</span> Whoops!</span> <span 068 onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">This kernel is for product mr3020 v1.0!</span> This product is for kernel v1.0 mr3020!</span> 069 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 070 style="direction: ltr; text-align: left">bio: create slab <bio-0> at 0</span> bio: create slab at 0 <bio-0></span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 071 style="direction: ltr; text-align: left">SCSI subsystem initialized</span> SCSI subsystem initialized</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 072 style="direction: ltr; text-align: left">usbcore: registered new interface driver usbfs</span> usbcore: registered new interface driver usbfs</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 073 style="direction: ltr; text-align: left">usbcore: registered new interface driver hub</span> usbcore: registered new interface driver hub</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 074 style="direction: ltr; text-align: left">usbcore: registered new device driver usb</span> usbcore: registered new device driver usb</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 075 style="direction: ltr; text-align: left">NET: Registered protocol family 2</span> NET: Registered protocol family 2</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 076 style="direction: ltr; text-align: left">IP route cache hash table entries: 1024 (order: 0, 4096 bytes)</span> IP route caching hash table entries: 1024 (order: 0, 4096 bytes)</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 077 style="direction: ltr; text-align: left">TCP established hash table entries: 1024 (order: 1, 8192 bytes)</span> TCP, established hash table entries: 1024 (order: 1, 8192 bytes)</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 078 style="direction: ltr; text-align: left">TCP bind hash table entries: 1024 (order: 0, 4096 bytes)</span> TCP bind hash table entries: 1024 (order: 0, 4096 bytes)</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 079 style="direction: ltr; text-align: left">TCP: Hash tables configured (established 1024 bind 1024)</span> TCP: Hash tables configured (established 1024 bind 1024)</span> 080 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text"

style="direction: ltr; text-align: left">TCP reno registered</span> TCP reno registered</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 081 style="direction: ltr; text-align: left">NET: Registered protocol family 1</span> NET: Registered protocol family 1</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 082 style="direction: ltr; text-align: left">AR7240 GPIOC major 0</span> AR7240 GPIOC Staff 0</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 083 style="direction: ltr; text-align: left">squashfs: version 4.0 (2009/01/31) Phillip Lougher</span> squashfs: version 4.0 (2009/01/31) Phillip Lougher</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 084 style="direction: ltr; text-align: left">NTFS driver 2.1.29 [Flags: R/O].</span> NTFS driver 2.1.29 [Flags: R / O].</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 085 style="direction: ltr; text-align: left">msgmni has been set to 58</span> msgmni has-been set to 58</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 086 style="direction: ltr; text-align: left">alg: No test for lzma (lzma-generic)</span> alg: No test for lzma (lzma-generic)</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 087 style="direction: ltr; text-align: left">alg: No test for stdrng (krng)</span> alg: No test for stdrng (krng)</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 088 style="direction: ltr; text-align: left">io scheduler noop registered</span> io scheduler noop registered</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 089 style="direction: ltr; text-align: left">io scheduler anticipatory registered</span> io scheduler anticipatory registered</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 090 style="direction: ltr; text-align: left">io scheduler deadline registered</span> io scheduler deadline registered</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 091 style="direction: ltr; text-align: left">io scheduler cfq registered (default)</span> io scheduler cfq registered (default)</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 092 style="direction: ltr; text-align: left">Serial: 8250/16550 driver, 1 ports, IRQ sharing disabled</span> Serial: 8250/16550 driver, 1 ports, IRQ sharing disabled</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 093 style="direction: ltr; text-align: left">ttyS0: detected caps 00000000 should be 00000100</span> ttyS0: detected caps 00000000 00000100 shoulds be</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 094 style="direction: ltr; text-align: left">serial8250.0: ttyS0 at MMIO 0xb8020000 (irq = 19) is a 16550A</span> serial8250.0: ttyS0 at MMIO 0xb8020000 (irq = 19) is a 16550A</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 095 style="direction: ltr; text-align: left">console [ttyS0] enabled</span> console [ttyS0] enabled</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 096 style="direction: ltr; text-align: left">PPP generic driver version 2.4.2</span> PPP generic driver version 2.4.2</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 097 style="direction: ltr; text-align: left">NET: Registered protocol family 24</span> NET: Registered protocol family 24</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 098 style="direction: ltr; text-align: left">cmdlinepart partition parsing not available</span> cmdlinepart partition parsing not available</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">set partition boot</span> set boot partition</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 100 style="direction: ltr; text-align: left">set partition kernel</span> kernel set partition</span> 099 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 101 style="direction: ltr; text-align: left">set partition rootfs</span> set partition rootfs</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 102 style="direction: ltr; text-align: left">set partition config</span> set partition config</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">set partition art</span> art set partition</span> 104 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 103

style="direction: ltr; text-align: left">set partition </span> set partition </span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 105 style="direction: ltr; text-align: left">Searching for RedBoot partition table</span> Searching for RedBoot partition table</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 106 style="direction: ltr; text-align: left">5 RedBoot partitions found on MTD device ar7240nor0</span> 5 RedBoot partitions found on MTD device ar7240-nor0</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 107 style="direction: ltr; text-align: left">Creating 5 MTD partitions on "ar7240-nor0":</span> Creating 5 MTD partitions on "ar7240-nor0"</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 108 style="direction: ltr; text-align: left">0x000000000000-0x000000020000 : "boot"</span> 0x000000000000-0x000000020000: "boot"</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 109 style="direction: ltr; text-align: left">0x000000020000-0x000000120000 : "kernel"</span> 0x000000020000-0x000000120000: "kernel"</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 110 style="direction: ltr; text-align: left">0x000000120000-0x0000003e0000 : "rootfs"</span> 0x0000003e0000-0x000000120000: "rootfs"</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 111 style="direction: ltr; text-align: left">0x0000003e0000-0x0000003f0000 : "config"</span> 0x0000003e0000-0x0000003f0000 "config"</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 112 style="direction: ltr; text-align: left">0x0000003f0000-0x000000400000 : "art"</span> 0x0000003f0000-0x000000400000: "art"</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 113 style="direction: ltr; text-align: left">->Oops: flash id 0x10215 .</span> -> Oops: flash id 0x10215.</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 114 style="direction: ltr; text-align: left">ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver</span> ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 115 style="direction: ltr; text-align: left">Port Status 1c000004</span> Port Status 1c000004</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 116 style="direction: ltr; text-align: left">ar7240-ehci ar7240-ehci.0: ATH EHCI</span> ar7240 ar7240-ehci-ehci.0: ATH EHCI</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">ar7240-ehci ar7240-ehci.0: new USB bus registered, 117 assigned bus number 1</span> ar7240 ar7240-ehci-ehci.0: new USB bus registered, assigned bus number 1</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 118 style="direction: ltr; text-align: left">ehci_reset Intialize USB CONTROLLER in host mode: 3</span> ehci_reset intialize USB CONTROLLER in host mode: 3</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 119 style="direction: ltr; text-align: left">ehci_reset Port Status 1c000000</span> Port Status 1c000000 ehci_reset</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 120 style="direction: ltr; text-align: left">ar7240-ehci ar7240-ehci.0: irq 3, io mem 0x1b000000</span> ar7240 ar7240-ehci-ehci.0: irq 3, io mem 0x1b000000</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 121 style="direction: ltr; text-align: left">ehci_reset Intialize USB CONTROLLER in host mode: 3</span> ehci_reset intialize USB CONTROLLER in host mode: 3</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 122 style="direction: ltr; text-align: left">ehci_reset Port Status 1c000000</span> Port Status 1c000000 ehci_reset</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 123 style="direction: ltr; text-align: left">ar7240-ehci ar7240-ehci.0: USB 2.0 started, EHCI 1.00</span> ar7240 ar7240-ehci-ehci.0: USB 2.0 started, EHCI 1.00</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 124 style="direction: ltr; text-align: left">usb usb1: configuration #1 chosen from 1 choice</span> usb usb1: configuration # 1 chosen from 1 choice</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 125 style="direction: ltr; text-align: left">hub 1-0:1.0: USB hub found</span> hub 1-0:1.0: USB hub found</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 126 style="direction: ltr; text-align: left">hub 1-0:1.0: 1 port detected</span> hub 1-0:1.0: 1 port detected</span> 127 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">TCP cubic registered</span> TCP cubic

registered</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 128 style="direction: ltr; text-align: left">NET: Registered protocol family 17</span> NET: Registered protocol family 17</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">802.1Q VLAN Support v1.8 Ben Greear 129 <greearb@candelatech.com></span> 802.1Q VLAN Support v1.8 Ben Greear <greearb@candelatech.com></span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">All bugs added by David S.</span> All bugs added by 130 David S.</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="googlesrc-text" style="direction: ltr; text-align: left">Miller <davem@redhat.com></span> Miller <davem@redhat.com></span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 131 style="direction: ltr; text-align: left">ar7240wdt_init: Registering WDT success</span> ar7240wdt_init: Registering WDT success</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 132 style="direction: ltr; text-align: left">VFS: Mounted root (squashfs filesystem) readonly on device 31:2.</span> VFS: Mounted root (squashfs filesystem) readonly on device 31:2.</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 133 style="direction: ltr; text-align: left">Freeing unused kernel memory: 116k freed</span> Freeing unused kernel memory: 116k freed</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">init started: BusyBox v1.01 (2012.01.16-03:21+0000) 134 multi-call binary</span> init started: BusyBox v1.01 (2012.01.16-03:21 +0000) multi-call binary</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 135 style="direction: ltr; text-align: left">This Board use 2.6.31</span> This board uses 2.6.31</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 136 style="direction: ltr; text-align: left">xt_time: kernel timezone is -0000</span> xt_time: kernel timezone is -0000</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 137 style="direction: ltr; text-align: left">nf_conntrack version 0.5.0 (512 buckets, 5120 max)</span> nf_conntrack version 0.5.0 (512 buckets, 5120 max)</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 138 style="direction: ltr; text-align: left">ip_tables: (C) 2000-2006 Netfilter Core Team</span> ip_tables: (C) 2000-2006 Netfilter Core Team</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">insmod: cannot open module 139 `/lib/modules/2.6.31/kernel/iptable_raw.ko': No such file or directory</span> insmod: can not open module `/ lib/modules/2.6.31/kernel/iptable_raw.ko ': No such file or directory</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">insmod: cannot open module 140 `/lib/modules/2.6.31/kernel/flashid.ko': No such file or directory</span> insmod: can not open module `/ lib/modules/2.6.31/kernel/flashid.ko ': No such file or directory</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 141 style="direction: ltr; text-align: left">PPPoL2TP kernel driver, V1.0</span> PPPoL2TP kernel driver, V1.0</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 142 style="direction: ltr; text-align: left">PPTP driver version 0.8.3</span> PPTP driver version 0.8.3</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">insmod: cannot open module 143 `/lib/modules/2.6.31/kernel/harmony.ko': No such file or directory</span> insmod: can not open module `/ lib/modules/2.6.31/kernel/harmony.ko ': No such file or directory</span> 144 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 145 style="direction: ltr; text-align: left">(none) mips #199 Tue Mar 20 11:38:41 CST 2012 (none)</span> (None) mips # 199 Tue Mar 20 11:38:41 CT 2012 (none)</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 146 style="direction: ltr; text-align: left">(none) login: Now flash open!</span> (None) login: Now flash open!</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">Now flash open!</span> Now flash open!</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 148 style="direction: ltr; text-align: left">ATHR_GMAC: Length per segment 1536</span> ATHR_GMAC: Length per segment 1536</span> 147 149 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">ATHR_GMAC: fifo cfg 3 01f00140</span> ATHR_GMAC:

fifo cfg 3 01f00140</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 150 style="direction: ltr; text-align: left">ATHR_GMAC: Mac address for unit 1:bf1f0006</span> ATHR_GMAC: Mac address for unit 1: bf1f0006</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 151 style="direction: ltr; text-align: left">ATHR_GMAC: 25:51:9d:db:e0:5c</span> ATHR_GMAC: 25:51:9 d: db: e0: 5c</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 152 style="direction: ltr; text-align: left">ATHR_GMAC: Max segments per packet : 1</span> ATHR_GMAC: Max segments per packet: 1</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 153 style="direction: ltr; text-align: left">ATHR_GMAC: Max tx descriptor count : 40</span> ATHR_GMAC: Max tx descriptor count: 40</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 154 style="direction: ltr; text-align: left">ATHR_GMAC: Max rx descriptor count : 96</span> ATHR_GMAC: Max rx descriptor count: 96</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 155 style="direction: ltr; text-align: left">ATHR_GMAC: Mac capability flags : 4D83</span> ATHR_GMAC: Mac capability flags: 4D83</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 156 style="direction: ltr; text-align: left">ATHR_GMAC: Mac address for unit 0:bf1f0000</span> ATHR_GMAC: Mac address for unit 0: bf1f0000</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 157 style="direction: ltr; text-align: left">ATHR_GMAC: 03:30:dc:d3:6e:49</span> ATHR_GMAC: 03:30: dc: d3: 6e: 49</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 158 style="direction: ltr; text-align: left">ATHR_GMAC: Max segments per packet : 1</span> ATHR_GMAC: Max segments per packet: 1</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 159 style="direction: ltr; text-align: left">ATHR_GMAC: Max tx descriptor count : 40</span> ATHR_GMAC: Max tx descriptor count: 40</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 160 style="direction: ltr; text-align: left">ATHR_GMAC: Max rx descriptor count : 252</span> ATHR_GMAC: Max rx descriptor count: 252</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 161 style="direction: ltr; text-align: left">ATHR_GMAC: Mac capability flags : 4403</span> ATHR_GMAC: Mac capability flags: 4403</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 162 style="direction: ltr; text-align: left">athr_gmac_ring_alloc Allocated 640 at 0x81e7d800</span> athr_gmac_ring_alloc Allocated 640 at 0x81e7d800</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 163 style="direction: ltr; text-align: left">athr_gmac_ring_alloc Allocated 4032 at 0x81d61000</span> Allocated 4032 at 0x81d61000 athr_gmac_ring_alloc</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 164 style="direction: ltr; text-align: left">Setting Drop CRC Errors, Pause Frames and Length Error frames</span> Setting Drop CRC Errors, Pause Frames and Length Error Frames</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 165 style="direction: ltr; text-align: left">Setting PHY...mac 0</span> Setting PHY ... mac 0</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 166 style="direction: ltr; text-align: left">athr_gmac_ring_alloc Allocated 640 at 0x81e7d400</span> athr_gmac_ring_alloc Allocated 640 at 0x81e7d400</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 167 style="direction: ltr; text-align: left">athr_gmac_ring_alloc Allocated 1536 at 0x81f2b000</span> athr_gmac_ring_alloc Allocated 1536 at 0x81f2b000</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 168 style="direction: ltr; text-align: left">athr_gmac_mii_setup: MDC check failed</span> athr_gmac_mii_setup: MDC check failed</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 169 style="direction: ltr; text-align: left">Setting Drop CRC Errors, Pause Frames and Length Error frames</span> Setting Drop CRC Errors, Pause Frames and Length Error Frames</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 170 style="direction: ltr; text-align: left">ATHRS26: resetting s26</span> ATHRS26: resetting s26</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 171 style="direction: ltr; text-align: left">ATHRS26: s26 reset done</span> ATHRS26: s26 reset done</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 172 style="direction: ltr; text-align: left">Setting PHY...mac 1</span> Setting PHY ... mac 1</span>

<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 173 style="direction: ltr; text-align: left">device eth0 entered promiscuous mode</span> Entered promiscuous mode device eth0</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 174 style="direction: ltr; text-align: left">Now flash open!</span> Now flash open!</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 175 style="direction: ltr; text-align: left">nf_conntrack_rtsp v0.6.21 loading</span> nf_conntrack_rtsp v0.6.21 loading</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 176 style="direction: ltr; text-align: left">nf_nat_rtsp v0.6.21 loading</span> nf_nat_rtsp v0.6.21 loading</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 177 style="direction: ltr; text-align: left">asf: module license 'Proprietary' taints kernel.</span> asf: module license 'Proprietary' TINTING kernel.</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 178 style="direction: ltr; text-align: left">Disabling lock debugging due to kernel taint</span> Disabling lock debugging due to kernel taint</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">ath_hal: 0.9.17.1 (AR9380, DEBUG, REGOPS_FUNC, 179 WRITE_EEPROM, 11D)</span> ath_hal: 0.9.17.1 (AR9380, DEBUG, REGOPS_FUNC, WRITE_EEPROM, 11D)</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">ath_rate_atheros: Copyright (c) 2001-2005 Atheros 180 Communications, Inc, All Rights Reserved</span> ath_rate_atheros: Copyright (c) 2001-2005 Atheros Communications, Inc. All Rights Reserved</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">ath_dev: Copyright (c) 2001-2007 Atheros 181 Communications, Inc, All Rights Reserved</span> ath_dev: Copyright (c) 2001-2007 Atheros Communications, Inc. All Rights Reserved</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 182 style="direction: ltr; text-align: left">ath_ahb: 9.2.0_U5.508 (Atheros/multi-bss)</span> ath_ahb: 9.2.0_U5.508 (Atheros / multi-bss)</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 183 style="direction: ltr; text-align: left">Boostrap clock 25MHz</span> Bootstrap clock 25MHz</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 184 style="direction: ltr; text-align: left">ar9300RadioAttach: Need analog access recipe!!</span> ar9300RadioAttach: Need access analog recipe!</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 185 style="direction: ltr; text-align: left">Restoring Cal data from Flash</span> Restoring data from Cal Flash</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 186 style="direction: ltr; text-align: left">ath_get_caps[4735] rx chainmask mismatch actual 1 sc_chainmak 0</span> ath_get_caps [4735] rx chainmask mismatch actual 1 0 sc_chainmak</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 187 style="direction: ltr; text-align: left">ath_get_caps[4710] tx chainmask mismatch actual 1 sc_chainmak 0</span> ath_get_caps [4710] tx chainmask mismatch actual 1 0 sc_chainmak</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 188 style="direction: ltr; text-align: left">wifi0: Atheros 9380: mem=0xb8100000, irq=2</span> wifi0: Atheros 9380: mem = 0xb8100000, irq = 2</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">wlan_vap_create : enter.</span> wlan_vap_create: enter.</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google189 src-text" style="direction: ltr; text-align: left">devhandle=0x80d202c0, opmode=IEEE80211_M_HOSTAP, flags=0x1</span> devhandle = 0x80d202c0, opmode IEEE80211_M_HOSTAP =, flags = 0x1</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">wlan_vap_create : exit.</span> wlan_vap_create: exit.</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src190 text" style="direction: ltr; text-align: left">devhandle=0x80d202c0, opmode=IEEE80211_M_HOSTAP, flags=0x1.</span> devhandle = 0x80d202c0, opmode IEEE80211_M_HOSTAP =, flags = 0x1.</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 191 style="direction: ltr; text-align: left">VAP device ath0 created</span> VAP device ath0 created</span> 192 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 193 style="direction: ltr; text-align: left">DES SSID SET=TP-LINK_POCKET_3020_D6E207</span> DES SSID SET = TP-LINK_POCKET_3020_D6E207</span> 194 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text"

style="direction: ltr; text-align: left">ieee80211_scan_unregister_event_handler: Failed to unregister evhandler=c0aeb860 arg=80c1aac0</span> ieee80211_scan_unregister_event_handler: Failed to unregister evhandler c0aeb860 = arg = 80c1aac0</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">wlan_vap_delete : enter.</span> wlan_vap_delete: 195 enter.</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="googlesrc-text" style="direction: ltr; text-align: left">vaphandle=0x81eaa000</span> vaphandle = 0x81eaa000</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">wlan_vap_delete : exit.</span> wlan_vap_delete: 196 exit.</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-srctext" style="direction: ltr; text-align: left">vaphandle=0x81eaa000</span> vaphandle = 0x81eaa000</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">wlan_vap_create : enter.</span> wlan_vap_create: enter.</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google197 src-text" style="direction: ltr; text-align: left">devhandle=0x80d202c0, opmode=IEEE80211_M_HOSTAP, flags=0x1</span> devhandle = 0x80d202c0, opmode IEEE80211_M_HOSTAP =, flags = 0x1</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">wlan_vap_create : exit.</span> wlan_vap_create: exit.</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src198 text" style="direction: ltr; text-align: left">devhandle=0x80d202c0, opmode=IEEE80211_M_HOSTAP, flags=0x1.</span> devhandle = 0x80d202c0, opmode IEEE80211_M_HOSTAP =, flags = 0x1.</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 199 style="direction: ltr; text-align: left">VAP device ath0 created</span> VAP device ath0 created</span> 200 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 201 style="direction: ltr; text-align: left">DES SSID SET=TP-LINK_POCKET_3020_D6E207</span> DES SSID SET = TP-LINK_POCKET_3020_D6E207</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">ieee80211_ioctl_siwmode: imr.ifm_active=393856, new 202 mode=3, valid=1</span> ieee80211_ioctl_siwmode: imr.ifm_active = 393856, new mode = 3, valid = 1</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 203 style="direction: ltr; text-align: left">WARNING: Fragmentation with HT mode NOT ALLOWED!!</span> WARNING: Fragmentation with HT fashion NOT ALLOWED!</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 204 style="direction: ltr; text-align: left">device ath0 entered promiscuous mode</span> Entered promiscuous mode device ath0</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 205 style="direction: ltr; text-align: left">br0: port 2(ath0) entering forwarding state</span> br0: port 2 (ath0) Entering forwarding state</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">ieee80211_ioctl_siwmode: imr.ifm_active=918144, new 206 mode=3, valid=1</span> ieee80211_ioctl_siwmode: imr.ifm_active = 918144, new mode = 3, valid = 1</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 207 style="direction: ltr; text-align: left">br0: port 2(ath0) entering disabled state</span> br0: port 2 (ath0) Entering disabled state</span> 208 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 209 style="direction: ltr; text-align: left">DES SSID SET=TP-LINK_POCKET_3020_D6E207</span> DES SSID SET = TP-LINK_POCKET_3020_D6E207</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 210 style="direction: ltr; text-align: left">br0: port 2(ath0) entering forwarding state</span> br0: port 2 (ath0) Entering forwarding state</span> 211 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 212 style="direction: ltr; text-align: left">TL-MR3020 mips #199 Tue Mar 20 11:38:41 CST 2012 (none)</span> TL-MR3020 # 199 mips Tue Mar 20 11:38:41 CT 2012 (none)</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 213 style="direction: ltr; text-align: left">TL-MR3020 login: root</span> TL-MR3020 login: root</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 214 style="direction: ltr; text-align: left">Password: 5up</span> Password: 5up</span> 215 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">Jan 1 00:01:13 login[150]: root login on

`ttyS0'</span> January 1 0:01:13 login [150]: root login on `ttyS0 '</span> 216 217 218 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 219 style="direction: ltr; text-align: left">BusyBox v1.01 (2012.01.16-03:21+0000) Built-in shell (msh)</span> BusyBox v1.01 (2012.01.16-03:21 +0000) Built-in shell (msh)</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 220 style="direction: ltr; text-align: left">Enter 'help' for a list of built-in commands.</span> Enter 'help' for a list of built-in commands.</span> 221 222 223 224 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">Built-in commands:</span> Built-in commands:</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left"># help</span> # Help</span>

<span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 225 style="direction: ltr; text-align: left">-------------------</span> ------------------</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">.</span> .</span> <span onmouseover="_tipon(this)" 226 onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">: break cd continue eval exec exit export help login newgrp</span> : Break cd continue eval exec exit export help login newgrp</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 227 style="direction: ltr; text-align: left">read readonly set shift times trap umask wait</span> read readonly set shift times trap umask wait</span> 228 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left"># cd /bin</span> # Cd / bin</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 230 style="direction: ltr; text-align: left"># ls</span> # Ls</span> 229 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 231 style="direction: ltr; text-align: left">busybox df kill msh sh</span> busybox df msh kill sh</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 232 style="direction: ltr; text-align: left">cat echo login ping true</span> ping echo true cat login</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 233 style="direction: ltr; text-align: left">chmod false ls ps umount</span> ls ps umount chmod false</span> <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" 234 style="direction: ltr; text-align: left">date iptables-xml mount rm</span> Date iptables-xml mount rm</span> 235 <span onmouseover="_tipon(this)" onmouseout="_tipoff()"><span class="google-src-text" style="direction: ltr; text-align: left">#</span> #</span>

Default password for serial console: login = root password = 5up Default password for the web interface: login = admin password = admin Ps: I have not taken the time to look at the web interface based ... I just booted the router to make sure it worked and then immediately after I removed Next steps to take: - Compiling OpenWrt trunk for TL-MR3020 - Flash the new firmware - Update u-boot bootloader (though the original seems already up to date) - Boot the uImage and rootfs on a partition of the USB key

- Integration of the card with my arduino code BlyssSpoofer / BlyssSniffer - Implementation of a GUI html + cgi Bonus for the curious: Both sides of the pcb in high resolution

Good weekend and hack at all!

Share:

Twitter Facebook2 Google +1

"Skyduino landed on github! Editorial 29/09 "

Discussion
15 Responses to "[hack] TL-MR3020 + hack = OpenWRT USB / WiFi / Ethernet"

1.

Mmhh .. Project forward. Posted by Alex (@ venedesign) | September 23, 2012, 10 h 48 min Reply to this comment

2. Hello, I'm still your wonderful blog with attention, great job! Questions about the project, why not directly interface with which you Raspbery Pi permettera to have a web interface and interact directly with arduino via usb? Maybe I haven not quite understand the purpose of your interface with the wireless router, but I was able to do that with 2 arduino + Pi and it works pretty well! a+ Posted by tibo | September 24, 2012, 1 h 30 min Reply to this comment

Because it's cheating I prefer to use a 400MHz ARM linux kernel homemade, modified debian iso that I do not really know how. Posted by skywodd | September 24, 2012, 20 h 29 min Reply to this comment

3. Great project! I have the same router and I confess I use RBP to have a web interface and control the Arduino. The advantage is that your project you'll save probalement RBP and therefore if the project is embedded ca will make you save a lot in energy consol! To be continued! Published by vlp | September 24, 2012, 8 h 25 min Reply to this comment

Consolidated level is unbeatable, managing the power supply properly wifi chipset should be able to run the same mounting lipo battery for a long time. Posted by skywodd | September 24, 2012, 20 h 30 min Reply to this comment

4. Superb article, I'm impressed. I just (re) order * this router to use for a tablet more basic, but it makes me want to dig even that for the usb host with open wrt

* The first refurbished I received did not Posted by Joel | September 25, 2012, 22 h 58 min Reply to this comment

5. Hello great article For my part, I started a project based on an equivalent basis OpenRD Marvell I use this box in addition to NAS / firewall / router Posted by David | October 18, 2012, 13 h 49 min Reply to this comment

6. Skywood salvation, I find this post particularly interested in, I myself on one MR3020 lequelle I experimente, but only in software. I have installed openwrt version and I must say it makes me learn a lot about the administration of a network under linux, I spend a lot of time on the distribution site and I am determined to know clearly all subtlety this router. I also have a small question to answer if you know because in the configuration files of network interfaces by adding an option "option macadrr 'xx: xx: xx: xx: xx: xx' is supposed to be there and changed the mac address of wifi chipset slab but its not work ... On that after I read it that semblerais to change the mac address should rewrite the mtd4 which contains test and notement radio address in question, precisely, does not recommend you touch ... you need to say I burned with desire finally good if you know a little more I'd love to listen to your good advice before potentielement a big mistake, especially since I have no way to rewrite the flash. And if not when is write what you think the rest of the article?! Posted by karol | December 28, 2012, 23 h 54 min Reply to this comment

On >> after that I read that it semblerais to change the mac address should rewrite the mtd4 which contains test and notement radio address in question, precisely, does not recommend you touch ... If you made a backup of your bootloader mtd4 and is in good health you can try. But without knowing the proper data architecture config is little chance to do something functional (a checksum is surely some pars) ... Usually you can alter the MAC address at the bootloader (uboot), Linux kernel (macchanger) or hardware (by cons ... how I know). Especially >> I have no way to rewrite the flash. If the bootloader is alive you can always reflash a backup TFTP. Or with the tool if the linux mtd boot even after your changes. And if >> when is write what you think the rest of the article?! For now I know I put almost a month to compile custom OpenWRT image because full problem with my linux ... Now compile the kernel I'm trying to compile the latest version of uboot and throw everything on the router.

Posted by skywodd | December 29, 2012, 0 h 51 min Reply to this comment

thank you to respond as quickly is what you have links / books or any other documentation to advise me because you're a response, I realize that I am missing ... you're conaissances really comfortable with the handling of the genre: install a bootloader or use the mtd (this is a command asser obscure for me ...) PS: I is part of a community of computer security http://www.zenk-security.com/ there is more info but I focused mainly animates the category "electronic" forum. I invite you to come pay a visit; D (just to prove through some test to be reached in order to avoid anyone does come, but you ca is gifted and should not ask you to problem) was also on Rizon irc # Zenk-Security Posted by karol | December 29, 2012, 1 h 22 min

Is >> that you have links / books or any other documentation to advise me because you're a response, I realize that I lack knowledge ... Not really, I only look at doc / manuals and "how to" projects that I use. It is in English, but at least it is always up to date and (mostly) is very comprehensive. You're really a >> comfortable with handling like: install a bootloader or use the mtd (this is a command asser obscure for me ...) Really comfortable, not completely freak, yes I compile and flash without me I take the lead, in the worst case I know what I reflash by unsoldering the memory chip so good. At the "instinct as they say ^ ^ >> PS: I is part of a community of computer security http://www.zenk-security.com/ there is more info but I focused mainly animates the category "electronic" forum. I know, this is the forum with a kind of diode as logo ^ ^ I had seen pictures of your team on the website of the ndh (by the way I never have to go to the ndh ... sniff). Posted by skywodd | December 29, 2012, 22 h 21 min

7. I was just thinking that you was rather kind to draw the right information to the left for your projects, but sometimes it feel good to pick up a good book / doc reference and be guided by the expert. I should invest in gear type: programateur for microcontroller eeprom or give me a ca autonomy and can be faciliterai things to experiment myself .. I seemed to have read to you that your father was electronics, I guess it helps a little? In fact it is us! I never go either to the NDH .. but may be this year, who knows? I am of course with some members so maybe there is a way I tick. Regards Posted by karol | January 2, 2013, 16 h 56 min

Reply to this comment

I should >> invest in gear type: eeprom programmer for microcontrollers or give me a ca autonomy and can be faciliterai things to experiment myself .. I'm just a map and a bus pirate programmer Pocket April. Not need special gear well, most of the time I go tinkering that I need a card with arduino, arm or another. By cons by the end of the month I will take a digital oscilloscope (my old cuckoo analog hs), this is really a tool to tinker with hardware requirement. I seemed to have >> read you your father was electronics, I guess it helps a little? Yep, and I get to pick nice stuff at times. Posted by skywodd | January 2, 2013, 17 h 26 min Reply to this comment

Source : http://skyduino.wordpress.com/2012/09/22/hack-tl-mr3020-openwrt-bidouillage-usb-wifi-ethernet/

You might also like