uboot研读笔记 | 07 - 移植uboot 2012.04到JZ2440(裁剪uboot大小)

项目开源地址:https://github.com/Mculover666/uboot-jz2440

0. 教程完整目录

  • 00 - 嵌入式Linux系统中Bootloader的作用和基本运行原理
  • 01 - 下载uboot源码并使用VSCode远程查看源码、编译uboot(2012.04.01版本)
  • 02 - 详细探索uboot启动过程(基于S3C2410处理器)
  • 03 - 初步移植uboot 2012.04到JZ2440(修改时钟,配置串口)
  • 04 - 移植uboot 2012.04到JZ2440(支持Nor Flash读写)
  • 05 - 移植uboot 2012.04到JZ2440(支持Nand Flash读写)
  • 06 - 移植uboot 2012.04到JZ2440(支持DM9000C网卡)
  • 07 - 移植uboot 2012.04到JZ2440(裁剪uboot大小)
  • 08 - 移植uboot 2012.04到JZ2440(设置mtd分区表)
  • 09 - 移植uboot 2012.04到JZ2440(设置默认环境变量参数)
  • 10 - 移植uboot 2012.04到JZ2440(烧写Linux内核、烧写yaffs2文件系统)
  • 11 - 移植uboot 2012.04到JZ2440(移植完成,制作uboot补丁)

1. 裁剪方法

目前一步一步移植完成的uboot.bin文件有327KB,太大了,可以进行一定的裁剪,将用不到的代码不加入编译,减小uboot.bin文件的大小。

裁剪方法非常简单:修改单板配置文件include/configs/smdk2440.h,去除不必要的宏定义

2. 裁剪过程

去除USB支持

uboot研读笔记 | 07 - 移植uboot 2012.04到JZ2440(裁剪uboot大小)_第1张图片

去除RTC支持

uboot研读笔记 | 07 - 移植uboot 2012.04到JZ2440(裁剪uboot大小)_第2张图片

去除BOOTP支持

uboot研读笔记 | 07 - 移植uboot 2012.04到JZ2440(裁剪uboot大小)_第3张图片

去除DHCP、DATE、USB命令支持

uboot研读笔记 | 07 - 移植uboot 2012.04到JZ2440(裁剪uboot大小)_第4张图片

去除文件系统支持

uboot研读笔记 | 07 - 移植uboot 2012.04到JZ2440(裁剪uboot大小)_第5张图片

3. 重新编译查看大小

make distclean
make smdk2440_config
make

编译完成之后大小裁剪到217KB,比之前的327KB小了足足110KB:
uboot研读笔记 | 07 - 移植uboot 2012.04到JZ2440(裁剪uboot大小)_第6张图片
下载到开发板中,在串口终端中看看是否可以正常启动:
uboot研读笔记 | 07 - 移植uboot 2012.04到JZ2440(裁剪uboot大小)_第7张图片

接收更多精彩文章及资源推送,欢迎订阅我的微信公众号:『mculover666』

uboot研读笔记 | 07 - 移植uboot 2012.04到JZ2440(裁剪uboot大小)_第8张图片

你可能感兴趣的:(#,uboot研读笔记)