添加板级指南

优质
小牛编辑
130浏览
2023-12-01

以 gx8010 ssd 1v 板级为例:

1 修改 target/linux/leo/Makefile,为 SUBTARGETS 变量添加板级目录名称,例如 gx8010-ssd-1v,该 Makefile 调用 BuildTarget 宏实现该板级的定义,该宏在 $(INCLUDE_DIR)/target.mk 里定义。

2 创建板级目录 gx8010-ssd-1v,名称须与 target/linux/leo/Makefile 的 SUBTARGETS 变量中添加的名称一致,以下是该目录的内容:

  • 2.1 target.mk:板级描述,该文件会被$(INCLUDE_DIR)/package.mk 引用。
  • 2.2 profiles/01-leo_gx8009_bd3m.mk:板级 profile,定义了 dts 配置,制作 ubi 文件系统的参数,然后调用宏 Profile 导入子板配置。
  • 2.3 download.sh: 供 linux 主机使用的固件下载脚本。
  • 2.4 config-default:板级 kernel 的差异化 config, 编译时会和 target/linux/leo/config-4.4 合并。如果没有差异化,不用理会。该配置可以通过命令生成:
    make kernel_menuconfig CONFIG_TARGET=subtarget。
    

3 为 uboot package 添加配置选项,修改 package/boot/uboot-leo/Makefile:

  • 3.1 定义 uboot 板级信息:uboot/leo-gx8010-ssd-1v TITLE:menuconfig 中 uboot 的描述 CONFIG:与 uboot 工程的默认配置对应
  • 3.2 将板级信息加入 UBOOTS 变量,该 Makeflie 会从 UBOOTS 生成各板级配置

4 创建默认配置,使用 make menuconfig 完成配置后,可通过./scripts/diffconfig.sh 生成默认配置:

./scripts/diffconfig.sh > configs/leo_gx8010_ssd_1v_defconfig