一、前言
芯馳 X9HP 晶片,搭載多個操作系統協同運行,系統實現了儀表、空調、中控、副駕多媒體的四屏驅動控制,在人車智能交互上可以通過顯示屏、螢幕觸摸控制、語音控制、物理按鍵控制、車身協議的完美融合,使汽車更智能。讓車主及乘客有更好的體驗樂趣。在實際項目中客戶很可能會基於 Kanzi 開發儀表,本文重點介紹 X9HP 適配 Kanzi 的方法。
二、修改編譯 SDK
1. 修改 Json 配置文件
本文基於芯馳 PTG4.3 基線,使用 X9HP_MS_Isolation_AndroidUser_Linux_Serdes_8G_vemmc_4266.json 配置文件,是 android 和 linux 雙系統,修改 json 文件,關閉開機動畫,

android 配置為 userdebug 模式

yocto 中 distro 設置為 wayland。
2. 修改 Makefile
頂層 makefile 文件中把所有 core-image-base 替換為 core-image-weston
3. Yocto 配置
修改 machine 中 x9hp_ms_cluster_virt_emmc.conf 文件,刪除默認的 cluster、cluster-demo 應用 
4. 修改 bpt 文件
修改 res/partiotion/ab/emmc_standard/vmmc_android_3d-cluster/ 路徑中使用的 bpt 文件,增加 ap2 rootfs 容量到 2G,ap2 容量到 5G ,否則打包時會報錯。
5. 導出編譯工具鏈
在使用 Kanzi 開發應用程序時,需要我們提供編譯工具鏈,在 yocto 中設置環境變量,DISTRO=wayland MACHINE=x9hp_ms_cluster_virt_emmc source sd_setup.sh -b build-x9hp_ms_cluster_virt_emmc/
編譯生成工具鏈命令 bitbake core-image-weston -c do_populate_sdk,編譯完成後生成的工具鏈路徑,yocto/build-x9hp_ms_cluster_virt_emmc/tmp/deploy/sdk,將 .sh 文件提供給應用開發人員。
三、運行 Kanzi Demo
1. 燒錄 pac 包
全部配置完成後,make build_all,make genpac 生成 pac 包,並燒錄到板子中,確認板子可以正常啟動,螢幕可以點亮,adb 可以連接到板子。
2. 添加應用及庫文件
使用 adb 工具 push 應用程序及必要的庫文件等到板子內,因為是 android 系統,adb 可以 push 到 android 的目錄
然後通過 android 與 linux 的共享目錄,把上述文件拷貝至 linux 中,庫文件拷貝到 linux /lib 目錄,設置環境變量 export XDG_RUNTIME_DIR=/run/user/0 並修改應用程序執行權限

3. 應用文件配置
設置顯示解析度為 1920*720
默認運行顯示效果會有狀態欄,修改板端 /etc/xdg/weston/weston.ini 文件,添加 panel-position=none 可以關閉狀態欄,全屏顯示
4. 運行效果
儀表 Demo 全屏顯示效果如下圖
經過以上幾步的調試,X9HP 適配 Kanzi 已調通。
四、參考文檔
- 《SemiDrive_9_Series_Display應用指南》
- 《X9_SDK_用戶手冊》
- 《X9系列多媒體開發使用指南》
歡迎在博文下方留言評論,我們會及時回復您的問題。
如有更多需求,歡迎聯繫大聯大世平集團 ATU 部門:atu.sh@wpi-group.com 作者:清風
更多資訊,請掃碼關注我們! 
評論