202409012在飞凌的OK3588-C的核心板上使用Rockchip原厂的Buildroot点MIPI屏【绿色点纹】

202409012在飞凌的OK3588-C的核心板上使用Rockchip原厂的Buildroot点MIPI屏【绿色点纹】
2024/9/12 16:05


【由于现象没有复现,但是还是记录已被查阅。】
现象:MIPI屏出现绿色的点纹,但是HDMI显示正常。在Android12下也没有复现!


缘起,拿到一块MIPI屏,需要使用飞凌的OK3588-C的核心板在Android12下点亮。
在飞凌的Linux R4下修改部分屏参之后即可直接点亮。

但是在飞凌的Android12下竖屏横用之后,播放MP4视频时内核跑飞。
因此需要使用Rockchip原厂的SDK来进行比对。
但是Rockchip原厂的Android12的过于庞大,我于是决定先在Buildroot下点亮屏之后再迁移到Android12上了。


根据百度/CSDN的资料,点屏先开背光/屏不亮首先检查背光。
Z:\OK3588_Linux_fs\kernel\arch\arm64\boot\dts\rockchip\OK3588-C-common.dtsi
Z:\repo_RK3588_Buildroot20240508\kernel\arch\arm64\boot\dts\rockchip\rk3588-evb7-v11.dtsi


经过DTSI的比对,最有可能的地方是配置:&vp3的地方。
Z:\repo_RK3588_Buildroot20240508\kernel\arch\arm64\boot\dts\rockchip\rk3588-evb7-v11.dtsi
&work_led {
    gpios = <&gpio1 RK_PC6 GPIO_ACTIVE_HIGH>;
    pinctrl-names = "default";
    pinctrl-0 = <&work_leds_gpio>;
};

&combphy2_psu {
    status = "okay";
};

///* Should work with at least 128MB cma reserved above. */
//&hdmirx_ctrler {
//    status = "okay";
//    pinctrl-names = "default";
//    pinctrl-0 = <&hdmim2_rx_cec &hdmim2_rx_hpdin &hdmim2_rx_scl &hdmim2_rx_sda &hdmirx_det_gpio>;
//
//    /* Effective level used to trigger HPD: 0-low, 1-high */
//    hpd-trigger-level = <1>;
//    hdmirx-det-gpios = <&gpio1 RK_PD5 GPIO_ACTIVE_LOW>;
//};

&av1d_mmu {
    status = "okay";
};

&cpu_l0 {
    cpu-supply = <&vdd_cpu_lit_s0>;
    mem-supply = <&vdd_cpu_lit_mem_s0>;
};

&cpu_b0 {
    cpu-supply = <&vdd_cpu_big0_s0>;
    mem-supply = <&vdd_cpu_big0_mem_s0>;
};

&cpu_b2 {
    cpu-supply = <&vdd_cpu_big1_s0>;
    mem-supply = <&vdd_cpu_big1_mem_s0>;
};

&gpu {
    mali-supply = <&vdd_gpu_s0>;
    mem-supply = <&vdd_gpu_mem_s0>;
    status = "okay";
};

&iep {
    status = "okay";
};

&iep_mmu {
    status = "okay";
};

&jpegd {
    status = "okay";
};

&jpegd_mmu {
    status = "okay";
};

&jpege_ccu {
    status = "okay";
};

&jpege0 {
    status = "okay";
};

&jpege0_mmu {
    status = "okay";
};

&jpege1 {
    status = "okay";
};

&jpege1_mmu {
    status = "okay";
};

&jpege2 {
    status = "okay";
};

&jpege2_mmu {
    status = "okay";
};

&jpege3 {
    status = "okay";
};

&jpege3_mmu {
    status = "okay";
};

&mpp_srv {
    status = "okay";
};

&rga3_core0 {
    status = "okay";
};

&rga3_0_mmu {
    status = "okay";
};

&rga3_core1 {
    status = "okay";
};

&rga3_1_mmu {
    status = "okay";
};

&rga2 {
    status = "okay";
};

&rknpu {
    rknpu-supply = <&vdd_npu_s0>;
    mem-supply = <&vdd_npu_mem_s0>;
    status = "okay";
};

&rknpu_mmu {
    status = "okay";
};

&rkvdec_ccu {
    status = "okay";
};

&rkvdec0 {
    status = "okay";
};

&rkvdec0_mmu {
    status = "okay";
};

&rkvdec1 {
    status = "okay";
};

&rkvdec1_mmu {
    status = "okay";
};

&rkvenc_ccu {
    status = "okay";
};

&rkvenc0 {
    status = "okay";
};

&rkvenc0_mmu {
    status = "okay";
};

&rkvenc1 {
    status = "okay";
};

&rkvenc1_mmu {
    status = "okay";
};

&rockchip_suspend {
    status = "okay";
    rockchip,sleep-debug-en = <1>;
};

&saradc {
    status = "okay";
    vref-supply = <&vcc_1v8_s0>;
};

&tsadc {
    status = "okay";
};

&vdpu {
    status = "okay";
};

&vdpu_mmu {
    status = "okay";
};

&avsd {
    status = "okay";
};

&vepu {
    status = "okay";
};

&vop {
    status = "okay";
};

&vop_mmu {
    status = "okay";
};

/* vp0 & vp1 splice for 8K output */
&vp0 {
    rockchip,plane-mask = <(1 << ROCKCHIP_VOP2_CLUSTER0 | 1 << ROCKCHIP_VOP2_ESMART0)>;
    rockchip,primary-plane = <ROCKCHIP_VOP2_ESMART0>;
};

&vp1 {
    assigned-clocks = <&cru DCLK_VOP1_SRC>;
    assigned-clock-parents = <&cru PLL_V0PLL>;
    rockchip,plane-mask = <(1 << ROCKCHIP_VOP2_CLUSTER1 | 1 << ROCKCHIP_VOP2_ESMART1)>;
    rockchip,primary-plane = <ROCKCHIP_VOP2_ESMART1>;
};

&vp2 {
    rockchip,plane-mask = <(1 << ROCKCHIP_VOP2_CLUSTER2 | 1 << ROCKCHIP_VOP2_ESMART2)>;
    rockchip,primary-plane = <ROCKCHIP_VOP2_ESMART2>;
};

&vp3 {
    rockchip,plane-mask = <(1 << ROCKCHIP_VOP2_CLUSTER3 | 1 << ROCKCHIP_VOP2_ESMART3)>;
    rockchip,primary-plane = <ROCKCHIP_VOP2_ESMART3>;
};

参考资料:

https://blog.csdn.net/weixin_43244476/article/details/130217892?ops_request_misc=&request_id=&biz_id=102&utm_term=rockchip%20rk3588%20mipi%20dsi&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-1-130217892.142^v100^pc_search_result_base4&spm=1018.2226.3001.4187

https://blog.csdn.net/weixin_43244476/article/details/130217892
Rockchip RK3588 MIPI DSI 显示驱动调试记录

调试步骤:

1、LCD背光配置
&backlight {
    pwms = <&pwm1 0 25000 0>;
    status = "okay";
};
 
&pwm1 {
    /* mipi lcd backlight: pwm1_m1 */
    pinctrl-0 = <&pwm1m1_pins>;
    status = "okay";
};


百度:rockchip,plane-mask = <(1 << ROCKCHIP_VOP2_CLUSTER3 | 1 << ROCKCHIP_VOP2_ESM


【比较像这里的情况】
https://blog.csdn.net/weixin_44618557/article/details/131983987
rk3588 kylin出现鼠标拖影

/*路径
a/arch/arm64/boot/dts/rockchip/rk3588-evb.dtsi
*/
 
/* vp0 & vp1 splice for 8K output */
 &vp0 {
+    cursor-win-id = <ROCKCHIP_VOP2_CLUSTER0>;
     rockchip,plane-mask = <(1 << ROCKCHIP_VOP2_CLUSTER0 | 1 << ROCKCHIP_VOP2_ESMART0)>;
     rockchip,primary-plane = <ROCKCHIP_VOP2_ESMART0>;
 };
 
 &vp1 {
+    cursor-win-id = <ROCKCHIP_VOP2_CLUSTER1>;
     rockchip,plane-mask = <(1 << ROCKCHIP_VOP2_CLUSTER1 | 1 << ROCKCHIP_VOP2_ESMART1)>;
     rockchip,primary-plane = <ROCKCHIP_VOP2_ESMART1>;
 };
 
 &vp2 {
+    cursor-win-id = <ROCKCHIP_VOP2_CLUSTER2>;
     rockchip,plane-mask = <(1 << ROCKCHIP_VOP2_CLUSTER2 | 1 << ROCKCHIP_VOP2_ESMART2)>;
     rockchip,primary-plane = <ROCKCHIP_VOP2_ESMART2>;
 };
 
 &vp3 {
+    cursor-win-id = <ROCKCHIP_VOP2_CLUSTER3>;
     rockchip,plane-mask = <(1 << ROCKCHIP_VOP2_CLUSTER3 | 1 << ROCKCHIP_VOP2_ESMART3)>;
     rockchip,primary-plane = <ROCKCHIP_VOP2_ESMART3>;
 };

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值