Qualcomm msm8996 调试AMOLED屏
由調(diào)試AMOLED屏的重要點(diǎn)在于給屏提供的兩個(gè)電,OVDD(4.6V)與OVSS(-2.9V),電是由平臺(tái)的PMU pm8996提供的,由SWIRE信號(hào)控制,主要修改了供電的方式,先寫在內(nèi)核中點(diǎn)亮的過程。
點(diǎn)亮內(nèi)核
在項(xiàng)目的dtsi文件中修改如下幾個(gè)屬性,其他的與LCD屏調(diào)試一樣。
1.在msm-pmi8994.dtsi文件中添加如下屬性。添加最后一行: qcom,disp-type-amoled;
注釋掉屬性
/qcom,en-ext-pfet-sc-pro;/
2.在項(xiàng)目dtsi中修如下屬性。
labibb {qpnp,qpnp-labibb-mode = “l(fā)cd"; /* remove this line */qpnp,qpnp-labibb-mode = "amoled"; /* add this line */qpnp,swire-control; /* add this line*/ };4.增加如下的節(jié)點(diǎn),名字添加的屏的dtsi文件決定
&dsi_XXXX_1080p_video {qcom,mdss-dsi-bl-pmic-control-type = "bl_ctrl_dcs";qcom,mdss-dsi-bl-min-level = <1>;qcom,mdss-dsi-bl-max-level = <255>;qcom,mdss-brightness-max-level = <255>;qcom,cont-splash-enabled;qcom,panel-supply-entries = <&dsi_panel_pwr_supply_amoled>;};5.修改dsi_panel_pwr_supply_amoled 的電壓lab(4.6V)ibb(-2.9V)
qcom,supply-max-voltage = <46000000>;qcom,supply-min-voltage = <2900000>; qcom,supply-max-voltage = <2900000>;點(diǎn)亮bootloader(lk)
1.在lk中只需要在panel_XXX_video.h 中增加如下數(shù)據(jù)結(jié)構(gòu)
static struct labibb_desc panel_truly_1080p_video_labibb = {1, // lcd = 0, amoled = 11, // force_config 0 to use default value2900000, // IBB minimum voltage in μV 這個(gè)電壓由屏的SPEC決定。2900000, // IBB maximum voltage in μV4600000, // LAB minimum voltage in μV4600000, // LAB maximum voltage in μV3, // power up delay3, //power down delay1, //IBB discharge enable1 // SWIRE control };增加了這個(gè)節(jié)點(diǎn)后還是不能點(diǎn)亮。器測量電壓發(fā)現(xiàn)LAB與IBB不受SWIRE信號(hào)控制。通過對(duì)比舊基線與新基線發(fā)現(xiàn)是高通代碼bug,缺失了一部分代碼,然后發(fā)現(xiàn)AVDD上電比較早導(dǎo)致時(shí)序不對(duì).是mpp信號(hào)不對(duì).在xbl中增加代碼,拉低mpp.就可以了。
調(diào)節(jié)avdd的電壓為5.8V,默認(rèn)值為7.6V
在節(jié)點(diǎn)qcom,leds@d800中增加屬性
在lk中修改如下
dev/qpnp_wled/include/qpnp_wled.h #define QPNP_WLED_AVDD_DEFAULT_VOLTAGE_MV 5800 dev/qpnp_wled/qpnp_wled.c wled->ovp_mv = QPNP_WLED_OVP_17800_MV;總結(jié)
以上是生活随笔為你收集整理的Qualcomm msm8996 调试AMOLED屏的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微服务-Nacos动态配置中心
- 下一篇: [dpdk]rte_mempool_op