[英]DRM/KMS disable connector and crtc
我的設備上裝有 Android。 我在 Android 完成加載之前畫圖。 我有高 DDR 使用率(平均頻率太高)的問題,由 cat /sys/kernel/debug/clk/measure_only_mccc_clk/clk_measure 檢查
我找到了臨時解決方案 - 在 Andoid 之前釋放 drm 資源。 但這對我不利,因為我的圖片和 Android 顯示之間有黑屏差距。
如果我在 Android 之后按時釋放資源,我會再次收到高 DDR 頻率的問題。
我檢查了 /sys/kernel/debug/dri/0/state 的狀態,找出了 DDR 成功與失敗之間的區別。
所以區別:
connector[168]: shared-disp-1
crtc=(null)
和
connector[168]: shared-disp-1
crtc=crtc-6
和 crtc 的
crtc[170]: crtc-6
enable=0
active=0
planes_changed=1
mode_changed=1
active_changed=1
和
crtc[170]: crtc-6
enable=1
active=1
planes_changed=1
mode_changed=0
active_changed=0
所以問題是:
所以我找到了在我的情況下如何禁用 CRTC 只需要在我的程序結束時調用
bufferId = 0;
x, y = 0;
arrayOfConnectors = nullptr;
numberOfConnectors = 0;
mode = nullptr;
drmModeSetCrtc(fd, crtcId, bufferId, x, y, arrayOfConnectors, numberOfConnectors, mode);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.