天天看點

[RK3288][Android6.0] Display中的Composition機制

Platform: Rockchip

OS: Android 6.0

Kernel: 3.10.92

系統有很多層layer,Composition就是要需要将不同layer組成一層,然後顯示,如圖:

[RK3288][Android6.0] Display中的Composition機制

而compose有兩條路徑:

1. 通過HWC,也就是通過硬體顯示子產品完成,這裡是RGA子產品。

2. 通過GPU,需要傳到DDR再處理,相對會增加功耗。

RK對composition的設定如下:

[email protected]:/ $ getprop | grep hwc

[sys.ghwc.version]: [2.10-3288-MID-version:ce2090f+2017-05-18 17:31:00]

[sys.hwc.compose_policy]: [6]

預設值6表示使用HWC去做composition.如果是想用GPU做合成,那麼可以設定 sys.hwc.compose_policy=0

注意: 通過setprop sys.hwc.compose_policy 0 重新開機之後會無效,可以通過直接修改build.prop來實作。

對于無法通過log定位的UI顯示異常(遊戲直接用的是GPU),就可以通過切換合成方式來确定是否是合成(HWC或者GPU)引起的。

參考:

http://tieba.baidu.com/p/3423131047

http://blog.csdn.net/alien75/article/details/39290109

https://source.android.com/devices/graphics/arch-sf-hwc

繼續閱讀