More than a week and a lot of reading, why ment-to-direct-install packages are not included to my ramdisk, I started a new attempt for flashing the device. After reading this explizit documentation, recognized, that the RB411 differs from the “old” boards: It has a hard- and a fortconfig area and other numbers for the root device. This seems to be the reason, why the normal wget2nand does not work:
root@OpenWrt:/tmp# cat /proc/mtd dev: size erasesize name mtd0: 0000b000 00001000 "routerboot" mtd1: 00001000 00001000 "hard_config" mtd2: 00002000 00001000 "bios" mtd3: 00001000 00001000 "soft_config" mtd4: 00040000 00004000 "booter" mtd5: 005c0000 00004000 "kernel" mtd6: 03a00000 00004000 "rootfs"
But with this information, I can now go on..
After alot of punishment with out-of-memory dumps, I realized severall things:
gzip -d openwrt-ar71xx-nand-rootfs.tar.gz
I created an extra small image for booting into the ram (I know, you can make it alot smaller). I used this configuration: small_config.zip After booting with this image, the rb has enough ram left for unpacking the whole image for the image posted on the last reports… (After I finished, I'll sum everything up to one page):
Things to do on your helper-system: Make sure, you have the following files:
openwrt-ar71xx-nand-vmlinux-initramfs.elf <- Bootloader Image openwrt-ar71xx-nand-rootfs.tar.gz <- Large Image with all packages built in openwrt-ar71xx-nand-vmlinux.elf <- Kernel Image from the full-image build
# gzip -d openwrt-ar71xx-nand-rootfs.tar.gz # python -m SimpleHTTPSever 80
Things to do on the router
# ifconfig br-lan:0 192.168.0.5 netmask 255.255.255.0 up # mount /dev/mtdblock6 /mnt # cd /mnt # wget http://192.168.0.1/openwrt-ar71xx-nand-rootfs.tar # tar xvf openwrt-ar71xx-nand-rootfs.tar -C ./ # rm openwrt-ar71xx-nand-rootfs.tar # cd .. # umount /mnt
Now the root-partition is installed and we have to put the kernel on the kernel partition. In my case it is /mnt/mtd5
# mount /dev/mtdblock5 /mnt # cd /mnt # wget http://192.168.0.1/openwrt-ar71xx-nand-vmlinux.elf
It works theoretically… but in fact it does not load the kernel this way. But I found at PDF, that the kernel images must be named “kernel”…
# mount /dev/mtdblock5 /mnt # cd /mnt # mv openwrt-ar71xx-nand-vmlinux.elf kernel
Well done… know the router boots from its NAND-Flash
By the way: I haven't find out, why my packages are not packed into the ram-loadable image .. but it seems, they where not included because of memory reasons… And I CAN'T beleive, that 32MB Memory is not enough for unpacking a 20Mb image.