drm/mcde ST-Ericsson MCDE 多通道顯示引擎¶
MCDE(多通道顯示引擎的縮寫)是一種圖形控制器,可在 Ux500 晶片組(例如 NovaThor U8500)中找到。 它最初由 ST Microelectronics 為 Nomadik 系列的繼任者 STn8500 構思,但在 ST-Ericsson U8500 中實現產品化,並在三星和索尼愛立信的 Android 手機中用於大眾市場部署。
它可以在 SDTV CCIR656、DPI-2、DBI-2 或 DSI 上以 1080p30 的解析度執行,適用於帶有或不帶有幀緩衝的面板,並且可以轉換大多數輸入格式,包括 RGB 和 YUV 的大多數變體。
硬體有四個顯示通道,佈局有點像這樣
Memory -> Overlay -> Channel -> FIFO -> 8 formatters -> DSI/DPI
External 0..5 0..3 A,B, 6 x DSI bridge
source 0..9 C0,C1 2 x DPI
FIFO A 和 B 用於 LCD 和 HDMI,而 FIFO CO/C1 用於帶有嵌入式緩衝區的面板。 6 個格式化器用於 DSI,分別為 VID/CMD 各 3 對。 2 個格式化器用於 DPI。
在格式化器之後是 DSI 或 DPI 埠,它們路由到晶片的外部引腳。 由於有 3 個 DSI 埠和 1 個 DPI 埠,因此可以配置最多 4 個顯示管道(有效地使用通道 0..3)以供同時使用。
在當前的 DRM/KMS 設定中,我們使用一個外部源、一個覆蓋、一個 FIFO 和一個格式化器,我們將它們連線到簡單的 DMA 幀緩衝區助手。 然後我們提供一個到 DSI 埠的橋,並在 DSI 埠橋上掛載一個面板橋或其他橋。 隨著我們利用更多的硬體功能,這可能會發生變化。
待辦事項
使用
drm_plane_enable_fb_damage_clips()啟用損壞的矩形,以便我們可以有選擇地僅將損壞的區域傳輸到僅命令的顯示器。啟用更多平面的混合,可能會以遠離使用簡單的幀緩衝區管道為代價。
啟用輸出到橋,例如來自 DSI 橋的 AV8100 HDMI 編碼器。