前言
- Android 系统源码大而全,包括 uboot与Linux kernel,【迅为iMX6Q】开发板中的Android 源码中,包含开发板相关的 uboot 与 Linux 内核源码
- 直接使用Android源码查看与搜索代码,效率较低,先把其中的uboot 提取出来,了解板级的差异的移植实现方法,如1G与2G内存的差异配置
- 上篇已经解压了 【iTOP-iMX6_android4.4.2 】,这是个Android 4.4.2的源码,编译环境需要配置,代码量较大,不适合【把玩】
- uboot的路径:
iTOP-iMX6_android4.4.2/bootable/bootloader/uboot-imx
文章图片
- 【迅为iMX6Q】 开发板BSP相关的:
路径:iTOP-iMX6_android4.4.2/bootable/bootloader/uboot-imx/board/freescale/mx6q_topeet
# ls -la
total 124
drwxr-xr-x2 root root4096 Apr 102019 .
drwxr-xr-x 70 root root4096 Mar12017 ..
-rw-r--r--1 root root164 Mar12017 config.mk
-rw-r--r--1 root root 15498 Apr 102019 flash_header.S
-rw-r--r--1 root root 15498 Mar12017 flash_header.S_1G
-rw-r--r--1 root root 15498 Mar12017 flash_header.S_2G
-rw-r--r--1 root root3939 Mar12017 lowlevel_init.S
-rw-r--r--1 root root1383 Mar12017 Makefile
-rw-r--r--1 root root 52044 Apr 102019 mx6q_topeet.c
-rw-r--r--1 root root2382 Mar12017 u-boot.lds
对比mx6q_sabresd
- 对比 mx6q_sabresd发现,板级内存的差异为1G 与2G的配置有部分差异
文章图片
- 默认 android 下的
flash_header.S
配置为2G的,我的开发板也是2G的,所以可以直接把mx6q_topeet
整个目录copy到原 uboot的指定目录
- 编译 uboot时,需要指定 config文件,或者使用menuconfig 配置生成
文章图片
- 查看了下 andriod uboot 与 默认 uboot的差异, android 增加了
topeet
的配置,用于指定mx6q_topeet
的开发板board
目录
- 了解如何通过【迅为iMX6Q】开发板光盘的 Android 4.4.2 系统源码,获取开发板 uboot的 板级开发包,用于uboot的移植与启动
- 了解Android目录结构与uboot的目录结构
- 了解增加新的
board
的方法