一、概述
本文介绍芯驰 G9H 平台外设 Safety_UART 如何配置到 AP 域使用的操作方法
1、硬件平台
G9H开发板(SD012_G9H)REF_A02)
2、软件基线版本:
G9_PTG5.1.2
3、编译配置:
G9H_Ref_LinuxK510_1G_mcal_emmc_Honister_3200.json
4、调试环境 & 工具:
芯驰 SDToolBox_R2.24.0501;
12V 电源适配器
5、开发板实物图片

图1 G9H 开发板
6、测试环境搭建:
给开发板供电,连接 log 串口
二、修改 & 测试步骤
1、修改代码:本文以 UART8 为例
① 删除 UATR8 在 safety 域的配置
步骤1:
修改文件位置:buildsystem/rtos/lk_boot/chipcfg/generate/g9h/projects/default/safety/domain_res.h

图2 uart8 在 safety 域的配置1
步骤2:
修改文件位置:buildsystem/rtos/lk_boot/chipcfg/generate/g9h/projects/default/safety/domain_res_cnt.h

图3 uart8 在 safety 域的配置2
② 在 dts 中增加 UART8 配置
修改文件位置:buildsystem/yocto/source/linux5.10/arch/arm64/boot/dts/semidrive/g9h_ref.dts

图4 dts 中的修改
③ UART8 做 handover
修改文件位置:buildsystem/rtos/lk_boot/chipcfg/generate/g9h/projects/default/handover_res.h

图5 uart8 做 handover
④ 删除 UART8 的 delete-node
修改文件位置:buildsystem/yocto/source/linux5.10/arch/arm64/boot/dts/semidrive/g9h_ap.dtsi

图6 delete-node
2、测试验证
修改以上代码后,进行编译,编译、打包后,将镜像通过 semidrive 的工具下载到开发板中,具体步骤方法不赘述
最终结果:
在 linux 下输入指令:ls -l /sys/class/tty/ttyS*
红框中圈出的 304C0000 设备对于的就是 UART8 的地址
图7 linux tty log
参考文档
《SemiDrive 高性能车载处理器基于 Domain 的资源分配指南》
《SemiDrive Linux BSP User Manual》
欢迎在博文下方留言评论,我们会及时回复您的问题。
如有更多需求,欢迎联系大联大世平集团 ATU 部门:atu.sh@wpi-group.com 作者:九
更多资讯,请扫码关注我们! 
