Openwrt修改flash大小
2016-06-27 17:05
489 查看
前言:在我们编辑固件选择软件包的时候会使固件逐渐变大,但是要符合你使用的型号,所以就修改固件大小来改变它。由于openwrt下默认一些固件大小是8M,所以在此来修改成16M,来支持我们的使用。
在新的版本中,已经加了对16M的支持,openwrt/tools/firmware-utils/src/mktplinkfw.c
代码如下
所以这里就不进行修改了
修改处dts代码展示:
值得一提的是,7b=8M fb=16M
注意,这里是我修改之后的,以前是Default8M,现在改成16M,修改完之后编译,就可以看到你之前由于固件大于8M从而没有被编译出来的固件了。
在新的版本中,已经加了对16M的支持,openwrt/tools/firmware-utils/src/mktplinkfw.c
代码如下
static struct flash_layout layouts[] = { { .id = "4M", .fw_max_len = 0x3c0000, .kernel_la = 0x80060000, .kernel_ep = 0x80060000, .rootfs_ofs = 0x140000, }, { .id = "4Mlzma", .fw_max_len = 0x3c0000, .kernel_la = 0x80060000, .kernel_ep = 0x80060000, .rootfs_ofs = 0x100000, }, { .id = "8M", .fw_max_len = 0x7c0000, .kernel_la = 0x80060000, .kernel_ep = 0x80060000, .rootfs_ofs = 0x140000, }, { .id = "8Mlzma", .fw_max_len = 0x7c0000, .kernel_la = 0x80060000, .kernel_ep = 0x80060000, .rootfs_ofs = 0x100000, }, { .id = "16M", .fw_max_len = 0xf80000, .kernel_la = 0x80060000, .kernel_ep = 0x80060000, .rootfs_ofs = 0x140000, }, { .id = "16Mlzma", .fw_max_len = 0xf80000, .kernel_la = 0x80060000, .kernel_ep = 0x80060000, .rootfs_ofs = 0x100000, }, { .id = "16Mppc", .fw_max_len = 0xf80000, .kernel_la = 0x00000000, .kernel_ep = 0xc0000000, .rootfs_ofs = 0x2a0000, }, { /* terminating entry */ } };
所以这里就不进行修改了
1.修改dts
文件目录:openwrt/target/linux/ramips/dts,在该目录下找到自己想要修改的dts文件,这里以mt7620a_mt7610e做示例修改处dts代码展示:
partition@50000 { label = "firmware"; reg = <0x50000 0xfb0000>; };
值得一提的是,7b=8M fb=16M
2.修改Makefile
文件目录:openwrt/target/linux/ramips/image,由于我刚刚修改的是mt7620a_mt7610e,所以找到相关代码Image/Build/Profile/MT7620a_MT7610e=$(call BuildFirmware/Default16M/$(1),$(1),mt7620a_mt7610e,MT7620a_MT7610e)
注意,这里是我修改之后的,以前是Default8M,现在改成16M,修改完之后编译,就可以看到你之前由于固件大于8M从而没有被编译出来的固件了。
相关文章推荐
- nginx location 匹配规则
- 忘记root密码,使用救援模式,grup设置密码
- OpenGL shader使用
- Ubuntu 12.04嵌入式交叉编译环境arm-linux-gcc搭建过程图解
- OpenMP对临界区/变量的保护方法
- Linux内核同步机制--转发自蜗窝科技
- centos ddd 安装,注意版本
- Linux的文件,管理管理指令
- linux 命令pidof - 找出正在运行程序的进程PID
- centos 安装 rabbitmq
- Linux防火墙iptables详解(二)--参数指令
- centos7挂载U盘笔记
- 深入理解SELinux SEAndroid(最后部分)
- Linux防火墙iptables详解(一) --入门要领
- 各种系统架构图及其简介
- 深入理解SELinux SEAndroid之二
- 深入理解SELinux SEAndroid(第一部分)
- Linux进程间通信-匿名管道
- Jmeter中利用BeanShell Sampler与控制台进行交互
- HADOOP+SPARK安装