Rockchip顯示操作---MIPI螢屏
- uboot驅動
- 介面說明
- kernel 驅動
- 常用的debug手段
uboot驅動
/*核心驅動*/
drivers/video/drm/rockchip_display.c
drivers/video/drm/rockchip_panel.c
/*MIPI-DSI*/
drivers/video/drm/rockchip_mipi_dsi.c
drivers/video/drm/rockchip-dw-mipi-dsi.c
/*Panel*/
drivers/video/drm/rockchip_dsi_panel.c
drivers/video/drm/panel_simple.c
介面說明
void rockchip_show_logo(void)
顯示uboot logo和kernel logovoid rockchip_show_bmp(const char *bmp)
顯示指定的bmp圖片,目前只要用于uboot logo充電的顯示rockchip_display_fixup(void *blob)
將uboot中確定的一些變數通過dtb檔案傳遞給內核,包括kernel logo的大小,地址,格式,輸出掃描時序以及過掃描的配置等資訊
kernel 驅動
driver/gpu/drm/panel/panel_simple.c
- 驅動一般不需要更改,但需注意函式
static int panel_simple_prepare(struct drm_panel *panel)需要與螢屏規格書中保持一致 - dts配置如下參考
&dsi0 {
status = "okay";
rockchip,lane-rate = <750>;
panel: panel {
compatible = "simple-panel-dsi";
reg = <0>;
backlight = <&backlight>;
enable-gpios = <&gpio7 3 GPIO_ACTIVE_HIGH>;
reset-gpios = <&gpio7 4 GPIO_ACTIVE_LOW>;
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST | MIPI_DSI_MODE_LPM)>;
dsi,format = <MIPI_DSI_FMT_RGB888>;
dsi,lanes = <4>;
reset-delay-ms = <50>;
init-delay-ms = <120>;
enable-delay-ms = <50>;
prepare-delay-ms = <50>;
status = "okay";
panel-init-sequence = [
29 00 04 FF 98 81 03
13 00 02 cb 63
13 00 02 cc 18
13 00 02 cd 16
13 00 02 ce 4d
13 00 02 cf 1f
13 00 02 d0 2a
13 00 02 d1 4f
13 00 02 d2 5f
13 00 02 d3 39
29 00 04 ff 98 81 00
05 78 01 11
05 14 01 29
];
panel-exit-sequence = [
05 14 01 28
05 78 01 10
];
disp_timings: display-timings {
native-mode = <&timing0>;
timing0: timing0 {
clock-frequency = <68800000>;
hactive = <800>;
vactive = <1280>;
hback-porch = <20>;
hfront-porch = <20>;
vback-porch = <20>;
vfront-porch = <30>;
hsync-len = <20>;
vsync-len = <4>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
};
};
};
&route_dsi0 {
status = "okay";
};
&dsi0_in_vopl {
status = "okay";
};
&dsi0_in_vopb {
status = "disabled";
};
panel-init-sequence中的29,13,05表示包名,一般為39,15,05,具體情況需要看螢屏規格書
常用的debug手段
cat d/dri/0/summary
查看vop的打開在狀態以及螢屏介面
cat /sys/kernel/debug/gpio
查看gpio狀態,確認gpio配置是否正常
第一次發表文章,也不知道怎么寫比較合適,若有緣看見,望指正

轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/232120.html
標籤:其他
上一篇:Android學習筆記--活動:活動創建、生命周期、顯示/隱式切換活動、傳遞資料的切換活動、BACK鍵銷毀活動
下一篇:Lay the carpet
