基于芯驰 X9HP PTG4.3 修改 4G DDR Layout

以下操作都基于 Docker 编译环境,使用方法请参考原厂文档《使用Docker 搭建X9 平台代码编译环境》。


1.下载 buildsystem

git clone ssh://customer_c@isupport.semidrive.com:29418/x9c/buildsystem_X9_PTG4.3/buildsystem.git -b X9_PTG4.3

 
2.配置编译环境

source lunch_sd.sh -c X9H_MS_NativeAndroidUser_Serdes_4G_emmc_4266.json -b X9_PTG4.3 -u customer_c

 
3.初始化编译工具

make inittools

 
4.同步全部代码

make sync_all


5.编译前的配置

(1)export SHELL=/bin/bash

(2)buildsystem/atf/atf/arm-trusted-firmware/sml_setup.mk 文件修改为如下

 ATF_CROSS_COMPILE := /tool/gcc_linaro/gcc-linaro-7.3.1-2018.05-x86_64_aarch64-elf/bin/aarch64-elf-

6.编译

6.1编译全部:

make build_all

6.2 分步编译:

make lk

make baremetal

make freertos

make atf

make android 2>&1 | tee xxx.log

编译结束增加如下一个 android log 文件

xxx.log

编译得到的二进制文件在如下目录

binary_X9H_MS_NativeAndroidUserdebug_Serdes_4G_emmc_4266

6.3 打包命令

make genpac

genpac 打包得到的镜像文件

image_X9H_MS_NativeAndroidUserdebug_Serdes_4G_emmc_4266


7.镜像测试

7.1 无修改镜像测试

这份无修改代码编译的镜像可在芯驰 X9H_MS Demo 板显示两路 Android 屏,控制台 log 如下。

7.2 无修改镜像烧写到 4G DDR 的客户 Demo 板

       无修改镜像烧写进客户板子屏幕,控制台 log 如下,Android 无法启动,无 adb 设备,无法使用 scrcpy 工具。

8.修改代码适配 4G DDR

8.1 修改 json 配置

       修改 X9H_MS_NativeAndroidUserdebug_Serdes_4G_emmc_4266.json 文件的内存大小适配于客户的 X9HP 4G 内存


8.2 使用 SDToolBox 工具修改配置

      (1)使用 SDToolBox 工具修改 DDR 内存为 4G 并生成新的代码文件。

     


(2)生成的文件与8G配置文件对比如下

(3)替换或修改文件

一般把生成的文件替换或修改到如下目录:

buildsystem/rtos/lk_boot/chipcfg/generate/x9_high/projects/ms_serdes/image_cfg.h

buildsystem/rtos/lk_boot/chipcfg/generate/x9_high/projects/ms_serdes/image_cfg.mk

buildsystem/android10/kernel/include/dt-bindings/memmap/x9_high/projects/ms_serdes/ image_cfg.h

本次编译工程没有linux 系统,故不需替换 buildsystem/yocto/ 下的内容。

(4)重新配置编译环境

        修改之后,记得重新配置编译环境,否则修改无法生效:

        source lunch_sd.sh -c X9H_MS_NativeAndroidUser_Serdes_4G_emmc_4266.json -b X9_PTG4.3 -u customer_c

(5)重新编译

全编:

make build_all(单编 make bootimage 反而更慢)

分步编译:

make freertos

make android (之前编译过会比较块,一般几分钟~十几分钟)


(6)修改为 4G DDR 的配置后的镜像可以运行在 X9H_MS Demo 板,X9H_MS Demo 板显示屏,各控制台 log 状态如图。


        (7)修改为 4G DDR 的配置后的镜像可以运行在客户 Demo 板,客户显示屏还未适配所以无法显示,使用 scrcpy 工具显示,各控制台 log 状态如图。


参考资料

        [1]《SD_X9_PTG4.1_release_notes》

        [2]《X9_SDK_用户手册_Rev1.7》

        [3]《Hands-On_x9 如何修改 memory layout》


我是好景虚设,欢迎在大大通上关注我!


芯驰 X9 相关博文:

      《基于芯驰 X9HP 的设备树文件 dts 的编译和 dtb 文件的反编译》

      《基于芯驰 X9HP Demo 板使用 tinyplay 命令调试音频接口》

 
欢迎在博文下方留言评论,我们会及时回复您的问题。如有更多需求,欢迎联系大联大世平集团 ATU 部门:atu.sh@wpi-group.com
作者:Stark Liu / 刘沛

更多资讯,请关注下方公众号:

 登录大大通,了解更多详情,解锁1500+完整应用方案,更有大联大700+FAE在线答疑解惑!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值