基于開源mesa3d的GPU驅(qū)動(dòng),OpenHarmony-4.x版本圖形適配要點(diǎn)
前言
OpenHarmony-4.0-Beta1版本已經(jīng)發(fā)布有一段時(shí)間,大家伙都體驗(yàn)到了,也有很多開發(fā)者開始適配OpenHarmony-4.x版本,相信也會(huì)或多或少遇到一些問題,其中就有圖形相關(guān)的適配。
本文僅針對(duì)一種情況的適配問題給出參考解決方案。
問題現(xiàn)象
適配OpenHarmony-4.x版本后,圖形沒有正常顯示,調(diào)試發(fā)現(xiàn)render_service不能正常啟動(dòng),出錯(cuò)日志如下:

出現(xiàn)以上問題,大概率是基于開源mesa3d驅(qū)動(dòng)才會(huì)有這樣的問題
解決方案
調(diào)用eglGetProcAddress可以解決該問題。

具體修改
涉及的文件修改如下(以O(shè)penHarmony-4.0-Release分支的代碼為例):

1. BUILD.gn修改
增加宏控制(這里以本人適配的一加6T為例,其他,如樹莓派等采用mesa3d開源驅(qū)動(dòng)的可參考如下,根據(jù)自己的產(chǎn)品型號(hào)具體修改)

2. CPP源碼修改
以rs_sub_thread.cpp修改為例(其他CPP參考修改即可)

視頻演示
?https://www.bilibili.com/video/BV1Fu4y1r7pH
標(biāo)簽:OpenHarmony