自 OpenHarmony 問世后便受到了社會(huì)各界的廣泛關(guān)注,目前 OpenHarmony 生態(tài)系統(tǒng)正在如火如荼地發(fā)展中。
酷派技術(shù)團(tuán)隊(duì)宣布已成功實(shí)現(xiàn)將 OpenHarmony 系統(tǒng)接入到展訊平臺(tái)上,相信這是一個(gè)重要的里程碑,標(biāo)志著在推動(dòng) OpenHarmony 的發(fā)展環(huán)節(jié)取得了重要進(jìn)展。
在該項(xiàng)目中,酷派技術(shù)團(tuán)隊(duì)使用的是展訊 T606 平臺(tái)(Kernel5.4、Android 13) 。此次嘗試主要是關(guān)于 GPU (Mali-G57) 的開源方案(Mesa) 適配,OpenHarmony 版本是 3.2.2 Release 版本,包括了用戶層的 Mesa 3D 庫和內(nèi)核層的驅(qū)動(dòng)(panfrost),而 GPU 的適配則主要關(guān)注框架層的 Render Service(渲染服務(wù))。
經(jīng)查詢發(fā)現(xiàn),展訊 T606 采用 Mali-G57 GPU,而 OpenHarmony v3.2.2 的三方 Mesa 3D 不支持該 GPU,需要從上游版本移植(Mesa 22.2 開始支持)。
當(dāng)然,Arm 官方本身其實(shí)是提供 kbase 驅(qū)動(dòng)的,但由于其閉源,且采用私有 so 進(jìn)行交互的方式,所以無法應(yīng)用到 OpenHarmony 上。
探討之后,酷派團(tuán)隊(duì)認(rèn)為有三個(gè)方案可選:
方案一:基于原有版本,參考 Mesa 上游合入 Mali-G57 支持;
方案二:自行升級(jí) Mesa 版本至少到 22.2,并添加 OpenHarmony 支持;
方案三:直接使用 4.0 的 Mesa3d 倉(cāng),2023.8.30 已經(jīng)升級(jí)到 22.4;
經(jīng)過多次調(diào)試驗(yàn)證,雖然依然存在一些瑕疵,但技術(shù)團(tuán)隊(duì)最終仍是成功在該平臺(tái)上運(yùn)行起了 OpenHarmony,具體細(xì)節(jié)可查詢酷派技術(shù)團(tuán)隊(duì)原文。