Date: Sat, 3 Jan 2015 03:25:56 +0300 From: Mike <russiane39@gmail.com> To: freebsd-wireless@freebsd.org Subject: TP-Link TL-WDR4300 Support Message-ID: <CAE-2a9bhVJbHEfUXbZYwJj%2Bph_8%2BFtcxi_p4yaLvCaq7V_f-WA@mail.gmail.com>
next in thread | raw e-mail | index | archive | help
Ok, original TP-Link uboot is refusing to accept images without TP-Link header and lacks many useful commands, so I reflashed mine TP-Link with alternative U-Boot to quickly check, will it boot FreeBSD or not. In case someone else wants to do it too, here is what I did: 1. Downloaded compiled pepe2k uboot (https://github.com/pepe2k/u-boot_mod) from https://raw.githubusercontent.com/gwlim/Openwrt_Firmware/master/TP-Link_TL-WDR3500-3600-43XX-WM4350R/TP-Link_TL-WDR3500-3600-43XX-WM4350R_Overclock_Section/uboot_for_tp-link_tl-wdr3600-43x0_oc_600_400_200.bin 2. Flashed from original TP-Link uboot: tftpboot 0x80800000 uboot_for_tp-link_tl-wdr3600-43x0_oc_600_400_200.bin erase 0x9F000000 +0x10000 cp.b 0x80800000 0x9F000000 0x10000 reset 3. After that FreeBSD started booting. Pastebin: http://pastebin.mozilla.org/8156450 4. I should warn, that printenv is changed dramatically after this uboot update: Before: bootargs=console=ttyS0,115200 root=31:02 rootfstype=squashfs init=/sbin/init mtdparts=ath-nor0:256k(u-boot),64k(u-boot-env),6336k(rootfs),1408k(uImage),64k(mib0),64k(ART) bootcmd=bootm 0x9f020000 bootdelay=1 baudrate=115200 ethaddr=0xba:0xbe:0xfa:0xce:0x08:0x41 ipaddr=192.168.1.111 serverip=192.168.1.100 dir= lu=tftp 0x80060000 ${dir}u-boot.bin&&erase 0x9f000000 +$filesize;cp.b $fileaddr 0x9f000000 $filesize lf=tftp 0x80060000 ${dir}db12x${bc}-jffs2&&erase 0x9f050000 +0x630000;cp.b $fileaddr 0x9f050000 $filesize lk=tftp 0x80060000 ${dir}vmlinux${bc}.lzma.uImage&&erase 0x9f680000 +$filesize;cp.b $fileaddr 0x9f680000 $filesize stdin=serial stdout=serial stderr=serial ethact=eth0 After: bootargs=console=ttyS0,115200 root=31:02 rootfstype=squashfs init=/sbin/init mtdparts=ath-nor0:256k(u-boot),64k(u-boot-env),6336k(rootfs),1408k(uImage),64k(mib0),64k(ART) bootcmd=bootm 0x9F020000 bootdelay=1 baudrate=115200 ipaddr=192.168.1.1 serverip=192.168.1.2 bootfile="firmware.bin" loadaddr=0x80800000 ncport=6666 uboot_addr=0x9F000000 uboot_name=uboot.bin uboot_size=0x10000 uboot_upg=if ping $serverip; then tftp $loadaddr $uboot_name && if itest.l $filesize == $uboot_size; then erase $uboot_addr +$filesize && cp.b $loadaddr $uboot_addr $filesize && echo OK!; else echo ERROR! Wrong file size!; fi; else ERROR! Server not reachable!; fi firmware_addr=0x9F020000 firmware_name=firmware.bin firmware_upg=if ping $serverip; then tftp $loadaddr $firmware_name && erase $firmware_addr +$filesize && cp.b $loadaddr $firmware_addr $filesize && echo OK!; else ERROR! Server not reachable!; fi stdin=serial stdout=serial stderr=serial ethact=eth0 -- With best regards from Russia, Mike
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAE-2a9bhVJbHEfUXbZYwJj%2Bph_8%2BFtcxi_p4yaLvCaq7V_f-WA>