主页 > 硬件 > openwrt学习-1

openwrt学习-1

2014年11月3日 openwrt学习-1无评论 阅读: 11,679 次

设备:TPLINK WR743N v2

DRAM:  64 MB

Flash:  8 MB

CPU revision is: 00019374 (MIPS 24Kc)
SoC: Atheros AR9330 rev 1
Clocks: CPU:400.000MHz, DDR:400.000MHz,

 

TTL串口连接:

ipp

 

TTL线刷步骤:

1.下载TFTP服务器程序
2.将你的网线的一端接入WR743N的WAN口,一端接在电脑的网卡上, 更改ip地址如:192.168.1.10, 255.255.255.0, 192.168.1.1
3.安装并打开Tftpd32,将Current Directory设为固件程序(openwrt-ar71xx-generic-tl-wr841nd-v7-squashfs-factory.bin)的存放目录,如C:\tmp
4.打开串口调试工具,给路由器上电可以看到引导信息,在“Autobooting in 1 seconds”之后快速按下tpl,可以进入Uboot的命令行
看到ar7240>
5.在命令行中输入("ar7240>”及括号部分不要输)
hornet> setenv ipaddr 192.168.1.1 (此地址为路由器地址)
hornet> setenv serverip 192.168.1.10(此地址为TFTP服务器即电脑的地址)
printenv (查看当前的环境,核对两个地址是否正确)
6.下一步是将固件拷到路由器内存里
hornet> tftpboot 0x80000000 openwrt-ar71xx-generic-tl-wr841nd-v7-squashfs-factory.bin
然后等它拷完(非常快)
7.擦写flash
hornet> erase 0x9f020000 +0x3c0000 (0x9f020000为内核的启动地址,在开机的引导信息中可以看到,见840N的U-boot32行“## Booting image at 9f020000 ...”,
0x3c0000为固件大小,这个输错了路由器会变砖,上一步返回信息的最后一句会给出)
等待擦除
hornet> cp.b 0x80000000 0x9f020000 0x3c0000
hornet> bootm 0x9f020000
之后,系统就开始重新启动了

flash分区:

5个分区,地址如下:

0x000000000000-0x000000020000 : "u-boot"
0x000000020000-0x0000000ffbbc : "kernel"
0x0000000ffbbc-0x0000007f0000 : "rootfs"
0x000000450000-0x0000007f0000 : "rootfs_data"
0x0000007f0000-0x000000800000 : "art"
0x000000020000-0x0000007f0000 : "firmware"

root@OpenWrt:/# cat /proc/mtd
MTD

rootfs_data大小为3.6M,挂载在/overlay,为可写,是mtdblock3分区

rootfs总大小为7.1M,除了可写的rootfs_data区外,还有不可写的区域,挂载在/rom,大小为3.5M

kernel区大小为894K,它和rootfs一起组成了firemware区,地址范围是0x20000-0x7f0000

"u-boot":128KB,设备初始化程序+引导程序代码本身
"art":64KB,EEPROM分区,在Atheros的方案中这个分区保存了无线的硬件参数

5-a1

 

 

rootfs的只读和可读写区采用透明挂载的方式,都对应了系统'/'目录,如果用户修改将配置文件修改的乱了,大家可以从/rom中将出厂配置复制出来,比如/etc/config/network被你修改怀了,那么恢复的方法为:

root@OpenWrt:~# cp /rom/etc/config/network /etc/config/

发表评论

新用户的评论需审核后才会显示;

电子邮件地址不会被公开;
必填项已用*标注