恩山无线论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 350|回复: 6

能修改MTD分区表吗

[复制链接]
发表于 2020-1-29 00:39 | 显示全部楼层 |阅读模式
原厂固件的分区表如下,kernel大小被固定了,实在不够用。不知道能不能修改大一点?他这个kernel位置又是在后面,不知道修改了分区表后breed还能不能找到位置?
  1. partitions {
  2.                         compatible = "fixed-partitions";
  3.                         #address-cells = <1>;
  4.                         #size-cells = <1>;

  5.                         partition@0 {
  6.                                 label = "u-boot";
  7.                                 reg = <0x000000 0x40000>;
  8.                                 read-only;
  9.                         };

  10.                         partition@40000 {
  11.                                 label = "u-boot-env";
  12.                                 reg = <0x040000 0x10000>;
  13.                                 read-only;
  14.                         };

  15.                         partition@50000 {
  16.                                 label = "firmware";
  17.                                 reg = <0x050000 0xfa0000>;

  18.                                 compatible = "fixed-partitions";
  19.                                 #address-cells = <1>;
  20.                                 #size-cells = <1>;

  21.                                 partition@0 {
  22.                                         label = "rootfs";
  23.                                         reg = <0x000000 0xe30000>;
  24.                                 };

  25.                                 partition@e30000 {
  26.                                         label = "kernel";
  27.                                         reg = <0xe30000 0x170000>;
  28.                                 };
  29.                         };

  30.                         art: partition@ff0000 {
  31.                                 label = "art";
  32.                                 reg = <0xff0000 0x010000>;
  33.                         };
  34.                 };
复制代码
我的恩山、我的无线 The best wifi forum is right here.
发表于 2020-1-29 01:10 | 显示全部楼层
分区表要和bl配合的,不是你随便改的

点评

我kernel编译出来有1.61M,稍大了一点。那现在就只能想办法裁剪内核大小吗?感觉能下手的也只有ipv6了。 难受啊,没想到挑了个flash足够用的又被闪存布局坑了。  详情 回复 发表于 2020-1-29 11:10
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2020-1-29 11:10 来自手机 | 显示全部楼层
paldier 发表于 2020-1-29 01:10
分区表要和bl配合的,不是你随便改的

我kernel编译出来有1.61M,稍大了一点。那现在就只能想办法裁剪内核大小吗?感觉能下手的也只有ipv6了。

难受啊,没想到挑了个flash足够用的又被闪存布局坑了。
我的恩山、我的无线 The best wifi forum is right here.
发表于 2020-1-29 11:16 | 显示全部楼层
目前好像就一种方式不用定死kernel具体位置,那就是使用ubi,这样bl只需要知道kernel分区名或者id就可以在ubi分区内自动找出kernel的位置,而用spi的bl基本都不支持ubi

点评

同方案的K2T是整个firmware不再分区(kernel后紧跟rootfs) 如果我直接在DTS中按照K2T的方式定义firmware分区,然后按照K2T的方式生成固件,bl能找到内核吗  详情 回复 发表于 2020-1-29 12:06
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2020-1-29 12:06 | 显示全部楼层
本帖最后由 fyyo429 于 2020-1-29 12:08 编辑
paldier 发表于 2020-1-29 11:16
目前好像就一种方式不用定死kernel具体位置,那就是使用ubi,这样bl只需要知道kernel分区名或者id就可以在u ...

同方案的K2T是整个firmware不再分区(kernel后紧跟rootfs)
如果我直接在DTS中按照K2T的方式定义firmware分区,然后按照K2T的方式生成固件,bl能找到内核吗

好吧,不能,breed直接无法识别固件类型

我的恩山、我的无线 The best wifi forum is right here.
发表于 2020-1-29 12:13 | 显示全部楼层
具体你看下k2t的代码吧,我不确定
我的恩山、我的无线 The best wifi forum is right here.
发表于 2020-1-29 19:48 | 显示全部楼层
修改dst后,你编译2个固件,小固件用breed刷,然后用大固件的升级包升级就ok了。
来自安卓客户端来自安卓客户端
我的恩山、我的无线 The best wifi forum is right here.
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )|网站地图

GMT+8, 2020-10-29 22:02

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表