ngswfx

ngswfx

1个粉丝

55

问答

1

专栏

40

资料

ngswfx  发布于  2016-05-11 02:26:40
采纳率 0%
55个问答
3770

[已解决,附解决方案]3535 Uboot小型化怎么搞,1.02SDK

 
本帖最后由 ngswfx 于 2016-5-11 13:46 编辑

如题,3520里面能把U-boot搞成90K左右,我也想把3525的U-boot搞小一些。但1.02SDK里面没有相关文档,我按照3520的做法,发现缺少


/home/ngs/Hi3520DSDK_NGS/osdrv/uboot/u-boot-2010.06/arch/arm/cpu/hi3520d/compressed

压缩目录。

有哪位大侠搞过,介绍一下。能节省128K闪存,以及内存呢:curse:

//////////////////////////////////////////////////////////////////////////2016_5_12已经解决 最终的U-boot被压缩到70K左右,使用2个64K单元即可。

参考了3520D里面小型化的做法,主要将compressed拷贝过去,然后修改makefile配置,将里面的REG2信息删除,调整2000的大小,改为4096+64(最开始没搞对,3520用了2个reg.bin,每个不超过2K,3535的reg.bin要大一些,这里需要调整为4096+64)。使用方法,和3520一样。


/////////我项目中的编译流程,可以参考

cd /home/ngs/Hi3535_SDK_V1.0.2.0/osdrv/uboot/u-boot-2010.06

cp -a -f /home/ngs/hi3535_512.h /home/ngs/Hi3535_SDK_V1.0.2.0/osdrv/uboot/u-boot-2010.06/include/configs/hi3535.h



cp -a -f /home/ngs/Hi3535_SDK_V1.0.2.0/osdrv/tools/pc_tools/uboot_tools/reg_info_hi3535.bin /home/ngs/Hi3535_SDK_V1.0.2.0/osdrv/uboot/u-boot-2010.06/.reg1

cp -a -f /home/ngs/Hi3535_SDK_V1.0.2.0/osdrv/tools/pc_tools/uboot_tools/mkboot.sh /home/ngs/Hi3535_SDK_V1.0.2.0/osdrv/uboot/u-boot-2010.06/


cd /home/ngs/Hi3535_SDK_V1.0.2.0/osdrv/uboot/u-boot-2010.06
make distclean
make ARCH=arm CROSS_COMPILE=arm-hisiv100nptl-linux- hi3535_config
make ARCH=arm CROSS_COMPILE=arm-hisiv100nptl-linux-





##########################################################

sudo -S chmod 777 /home/ngs/Hi3535_SDK_V1.0.2.0/osdrv/uboot/u-boot-2010.06/mkboot.sh

###########################################

sudo -S ./mkboot.sh .reg1 ./full-boot.bin
sudo -S chmod 777 ./full-boot.bin
cp ./full-boot.bin /nfsroot/HI3535/3535_full-boot.bin
cp ./full-boot.bin /nfsroot/3535_full-boot.bin
///////////////////////////////////////前面都没用,只不过生成一个full-uboot。真正干活的是下面这句,搞成小型化的压缩过的mini-boot
make ARCH=arm CROSS_COMPILE=arm-hisiv100nptl-linux- mini-boot.bin

/////////////////////////附件中的compressed,解压到/home/ngs/Hi3535_SDK_V1.0.2.0/osdrv/uboot/u-boot-2010.06/arch/arm/cpu/hi3535目录内,目录名字还是compressed

//其他不用变,具体可以参考3520D小型化文档。

易百纳技术社区文件: compressed.tar.gz
下载
我来回答
回答5个
时间排序
认可量排序

zhuangweiye

8个粉丝

0

问答

0

专栏

0

资料

zhuangweiye 2016-05-11 08:00:30
认可0
莫非要用 8M 的FLASH ?

如果用16M的FLASH, 就不要纠结在U-boot上了, 其他地方哪里不能省个64k--128kFLASH出来

fancong

0个粉丝

15

问答

0

专栏

2

资料

fancong 2016-05-11 08:13:22
认可0
u-boot可以去掉不必要的驱动和一些命令!可以裁剪到很小的体积!

falloutmx

1个粉丝

15

问答

0

专栏

0

资料

falloutmx 2016-05-11 09:01:03
认可0
手动裁剪uboot也不是什么麻烦事

ngswfx

1个粉丝

55

问答

1

专栏

40

资料

ngswfx 2016-05-11 12:58:52
认可0
本帖最后由 ngswfx 于 2016-5-11 13:43 编辑

已经提前裁剪了,弄到了170K左右,但是这个64K要求,只能分配192K。我希望搞到128K以内。

我尝试了一下,添加compressed目录以及文件,然后修改makefile,弄出来只有80K的mini-uboot.bin。仿照3520修改的。但是烧写后失败了。应该还是有个关键点没有搞对。简单对比了一下,连最前面的2K左右的reg好像也没对

////////////////////应该是可行的。这个和3520没啥本质区别,都是重新再次封装,然后通过LZMA压缩解压缩。u-boot写入后。CPU启动,先装载几个s文件,然后装载解压缩代码,把bin解到内存中。应该是这个流程。

有空我在细细看看流程。要是100K左右,又省出来一个64K,呵呵。能放不少配置文件了。:lol

kibin

0个粉丝

6

问答

0

专栏

1

资料

kibin 2016-05-11 16:07:09
认可0
路过看看大神秀操作
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
+ 添加网盘链接/附件

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
相关问答
无更多相似问答 去提问
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

易百纳技术社区