ZHCAAX6 May 2021 DRA710 , DRA712 , DRA714 , DRA716 , DRA718 , DRA722 , DRA724 , DRA725 , DRA726 , DRA745 , DRA746 , DRA74P , DRA750 , DRA756 , DRA75P , DRA76P , DRA77P , DRA780 , DRA781 , DRA782 , DRA783 , DRA785 , DRA786 , DRA787 , DRA788 , DRA790 , DRA791 , DRA793 , DRA797 , TDA2EG-17 , TDA2HF , TDA2HG , TDA2HV , TDA2LF , TDA2P-ABZ , TDA2P-ACD , TDA2SA , TDA2SG , TDA2SX
圖 1-3 vDRM 框架在此框架中,需要在 Linux 中禁用 omapdrm,因?yàn)?DSS 由在 IPU 上運(yùn)行的軟件控制?;?DRM 的 Linux 應(yīng)用程序?qū)o法工作,因?yàn)闆]有能夠進(jìn)行模式設(shè)置(顯示內(nèi)容)的 DRM 器件。
虛擬 DRM 可創(chuàng)建多個能夠進(jìn)行模式設(shè)置的 DRM 器件,并將它們顯示在用戶空間中。每個 DRM 器件可包含多個 DRM 連接器,每個連接器能夠配置為將預(yù)定義的分辨率和幀速率公開。每個 DRM 連接器都會在內(nèi)部創(chuàng)建一個 DRM 編碼器、一個 DRM 層面(主要)和一個 DRM CRTC,這些是 DRM API 正常工作所必需的。
此外,每個 DRM 器件創(chuàng)建一個 vdrm 控制器器件,Linux 應(yīng)用程序可打開該器件以讀取 DRM 應(yīng)用程序提交的緩沖區(qū)。Vision SDK 可使用 dispDistSrcLink 的多個實(shí)例運(yùn)行鏈(用例),其中每個鏈接讀取一個 vdrm 控制器器件,以獲取 DRM 應(yīng)用程序提交給虛擬 DRM 器件中特定 CRTC 的緩沖區(qū)。
Linux 應(yīng)用程序可以繼續(xù)調(diào)用 DRM API 以在 DRM CRTC 上顯示 DRM 幀緩沖區(qū),即使 vision SDK 應(yīng)用程序/鏈未運(yùn)行,或者運(yùn)行的鏈不包含與 CRTC 關(guān)聯(lián)的 dispDistSrcLink。
從 VISION SDK 0304 開始,SDK 中提供了 vDRM 框架支持。