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>;
};