0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

ArmSoM Rockchip系列產(chǎn)品 通用教程 之 Display 使用

Rockchip系列教程 ? 來(lái)源:Rockchip系列教程 ? 作者:Rockchip系列教程 ? 2024-03-06 15:50 ? 次閱讀

1. Display簡(jiǎn)介?

RK3588 的VOP (video output process)分為4個(gè)Port:

port 分辨率
VP0 4K
VP1 4K
VP2 4K
VP3 1080P

RK3588 VP 和各顯?接口的連接關(guān)系:

wKgaomXm29uANya2AAFC6yr5YRE190.png

需要注意的是,RK3588 的 HDMI 和 DP ?持 8K 輸出,但是在 8K 輸出模式下,?個(gè)顯?接口需要同時(shí)占? VP0 和 VP1 。所以如果產(chǎn) 品上需要?持 8K 顯?輸出,VP1 上要注意不要連接其他顯?接口。

1.2 RK3588支持的顯示接口?

2個(gè)DP

2個(gè)HDMI/eDP 共用接口

2個(gè)MIPI DSI

BT656/BT1120

2. ArmSoM-W3顯示接口?

ArmSoM-W3有著豐富的顯示接口。最多支持四路顯示輸出:兩路HDMI,一路MIPI-DSI,外加一路DP接口??梢宰龅蕉嗥镣@/異顯。

下面對(duì)各個(gè)顯示輸出接口的配置和使用作基本的介紹

3. HDMI?

ArmSoM-W3硬件上有兩個(gè) HDMI 顯示輸出接口:2x HDMI OUT2.1

其中一個(gè)HDMI OUT 支持 8K@60fps 或者 4K@120fps另一個(gè)HDMI OUT 支持 4K@60fps

3.1 HDMI相關(guān)的DTS配置?

kernelarcharm64bootdtsrockchiprk3588-armsom-w3.dts

//打開(kāi) HDMI0 功能&hdmi0 {        status = "okay";};//打開(kāi) HDMI0 的 硬件 phy&hdptxphy_hdmi0 {        status = "okay";};//配置HDMI0到VP0上面&hdmi0_in_vp0 {        status = "okay";};//打開(kāi) HDMI0 音頻輸出&hdmi0_sound {        status = "okay";};//配置HDMI0上面顯示開(kāi)機(jī)logo&route_hdmi0 {        status = "okay";};//打開(kāi) hdmi1 功能&hdmi1 {        status = "okay";};//打開(kāi) hdmi1 的 硬件 phy&hdptxphy_hdmi1 {    status = "okay";};//配置HDMI1到VP1上面&hdmi1_in_vp1 {        status = "okay";};//打開(kāi) HDMI1 音頻輸出&hdmi1_sound {        status = "okay";};//配置HDMI1上面顯示開(kāi)機(jī)logo&route_hdmi1 {        status = "okay";};

4. DP?

ArmSoM-W3硬件上有一個(gè) Type-C 接口輸出的DP,分辨率可達(dá) 8192x4320@30Hz, PHY 鏈路速率可以達(dá)到 8.1Gbps/lane。

4.1 DTS配置?

4.1.1 DP 控制器的配置如下:?

&dp0 {status = "okay";};&dp0_in_vp2 {status = "okay";};

4.1.2 PHY 配置如下:?

&usbdp_phy0 {    status = "okay";    orientation-switch;    svid = ;    sbu1-dc-gpios = ;    sbu2-dc-gpios = ;    port {        #address-cells = ;        #size-cells = ;        usbdp_phy0_orientation_switch: endpoint@0 {            reg = ;            remote-endpoint = ;        };        usbdp_phy0_dp_altmode_mux: endpoint@1 {            reg = ;            remote-endpoint = ;        };    };};

4.1.3 Type-C 接口配置PD 芯片?

Type-C 接口需要通過(guò) Type-C 的 CC 檢測(cè)和 PD 協(xié)商來(lái)配置 lane 和 HPD 的狀態(tài), 所以還需要配置 PD 芯 ?(當(dāng)前?持的 PD 芯?有 fusb302, husb311):

&i2c4 {    status = "okay";    pinctrl-names = "default";    pinctrl-0 = ;    usbc0: fusb302@22 {        compatible = "fcs,fusb302";        reg = ;        interrupt-parent = ;        interrupts = ;        int-n-gpios = ;        pinctrl-names = "default";        pinctrl-0 = ;        //vbus-supply = ;        vbus-supply = ;        status = "okay";        ports {            #address-cells = ;            #size-cells = ;            port@0 {                reg = ;                usbc0_role_sw: endpoint@0 {                    remote-endpoint = ;                };            };        };        usb_con: connector {            compatible = "usb-c-connector";            label = "USB-C";            data-role = "dual";            power-role = "dual";            try-power-role = "sink";            op-sink-microwatt = ;            sink-pdos =                ;            source-pdos =                ;            altmodes {                #address-cells = ;                #size-cells = ;                altmode@0 {                    reg = ;                    svid = ;                    vdo = ;                };            };            ports {                #address-cells = ;                #size-cells = ;                port@0 {                    reg = ;                    usbc0_orien_sw: endpoint {                        remote-endpoint = ;                    };                };                port@1 {                    reg = ;                    dp_altmode_mux: endpoint {                        remote-endpoint = ;                    };                };            };        };    };};

4.1.4 配置DP開(kāi)機(jī) logo?

 &route_dp0 {    status = "okay";    connect = ;};

需要注意的是,這?的 connect 屬性配置 DP 在 U-Boot 階段綁定 VOP Port2, 所以 dtsi 中的配置要允許 DP綁定 VOP Port2:

&dp0_in_vp2 {    status = "okay";};

提示

?前不?持 Type-C 接口的 DP 開(kāi)機(jī) logo!

4.2 調(diào)試?

4.2.1 查看 connector 狀態(tài):?

在 /sys/class/drm ?錄下可以看到驅(qū)動(dòng)注冊(cè)的各個(gè) card,其中 card0-DP-1 是 DP 顯?設(shè)備

armsom@armsom:~$ ls /sys/class/drm/card0  card0-DP-1  card0-HDMI-A-1  card0-Writeback-1  card1  renderD128  renderD129  version

以 card0-DP-1 為例,其?錄下有如下內(nèi)容:

armsom@armsom:~$ ls /sys/class/drm/card0-DP-1/device  dpms  edid  enabled  modes  power  status  subsystem  uevent

enable 查看使能狀態(tài):

armsom@armsom:~$ cat /sys/class/drm/card0-DP-1/enableddisabled

status 查看連接狀態(tài):

armsom@armsom:~$ cat /sys/class/drm/card0-DP-1/statusdisconnected

4.2.2 強(qiáng)制使能/禁? DP?

#強(qiáng)制禁? DPrk3588_s:/ # echo off > /sys/class/drm/card0-DP-1/status#強(qiáng)制使能 DPrk3588_s:/ # echo on > /sys/class/drm/card0-DP-1/status#恢復(fù)熱插拔檢測(cè)rk3588_s:/ # echo detect > /sys/class/drm/card0-DP-1/status

5. MIPI DSI?

ArmSoM-W3硬件上有一個(gè) MIPI-DSI 顯示輸出接口,支持 DPHY2.0 和 4 Lane 的數(shù)據(jù)輸出,分辨率可達(dá) 4K@60Hz

5.1 原理圖?

wKgZomXm2-GAL4XuAAHdZa8iSho165.png

5.3 MIPI DSI相關(guān)的DTS配置?

5.3.1背光配置?

dsi1_backlight: dsi1-backlight {        status = "okay";        compatible = "pwm-backlight";        pwms = ;        brightness-levels = <              0  20  20  21  21  22  22  23             23  24  24  25  25  26  26  27             27  28  28  29  29  30  30  31             31  32  32  33  33  34  34  35             35  36  36  37  37  38  38  39             40  41  42  43  44  45  46  47             48  49  50  51  52  53  54  55             56  57  58  59  60  61  62  63             64  65  66  67  68  69  70  71             72  73  74  75  76  77  78  79             80  81  82  83  84  85  86  87             88  89  90  91  92  93  94  95             96  97  98  99 100 101 102 103            104 105 106 107 108 109 110 111            112 113 114 115 116 117 118 119            120 121 122 123 124 125 126 127            128 129 130 131 132 133 134 135            136 137 138 139 140 141 142 143            144 145 146 147 148 149 150 151            152 153 154 155 156 157 158 159            160 161 162 163 164 165 166 167            168 169 170 171 172 173 174 175            176 177 178 179 180 181 182 183            184 185 186 187 188 189 190 191            192 193 194 195 196 197 198 199            200 201 202 203 204 205 206 207            208 209 210 211 212 213 214 215            216 217 218 219 220 221 222 223            224 225 226 227 228 229 230 231            232 233 234 235 236 237 238 239            240 241 242 243 244 245 246 247            248 249 250 251 252 253 254 255        >;        default-brightness-level = ;        enable-gpios = ;        pinctrl-names = "default";        pinctrl-0 = ;    };

5.3.2 屏幕上電時(shí)序以及參數(shù)配置?

&dsi1 {    status = "okay";    dsi1_panel: panel@0 {        status = "okay";        compatible = "simple-panel-dsi";        reg = ;        power-supply = ;  //使用gpio模擬regulator        reset-gpios = ;        backlight = ;        pinctrl-names = "default";        pinctrl-0 = ;        reset-delay-ms = ;        enable-delay-ms = ;        prepare-delay-ms = ;        unprepare-delay-ms = ;        disable-delay-ms = ;        dsi,flags = ;        dsi,format = ;        dsi,lanes  = ;        panel-init-sequence = [            15 00 02 B0 01            15 00 02 C0 26            15 00 02 C1 10            15 00 02 C2 0E            15 00 02 C3 00            15 00 02 C4 00            15 00 02 C5 23            15 00 02 C6 11            15 00 02 C7 22            15 00 02 C8 20            15 00 02 C9 1E            15 00 02 CA 1C            15 00 02 CB 0C            15 00 02 CC 0A            15 00 02 CD 08            15 00 02 CE 06            15 00 02 CF 18            15 00 02 D0 02            15 00 02 D1 00            15 00 02 D2 00            15 00 02 D3 00            15 00 02 D4 26            15 00 02 D5 0F            15 00 02 D6 0D            15 00 02 D7 00            15 00 02 D8 00            15 00 02 D9 23            15 00 02 DA 11            15 00 02 DB 21            15 00 02 DC 1F            15 00 02 DD 1D            15 00 02 DE 1B            15 00 02 DF 0B            15 00 02 E0 09            15 00 02 E1 07            15 00 02 E2 05            15 00 02 E3 17            15 00 02 E4 01            15 00 02 E5 00            15 00 02 E6 00            15 00 02 E7 00            15 00 02 B0 03            15 00 02 BE 04            15 00 02 B9 40            15 00 02 CC 88            15 00 02 C8 0C            15 00 02 C9 07            15 00 02 CD 01            15 00 02 CA 40            15 00 02 CE 1A            15 00 02 CF 60            15 00 02 D2 08            15 00 02 D3 08            15 00 02 DB 01            15 00 02 D9 06            15 00 02 D4 00            15 00 02 D5 01            15 00 02 D6 04            15 00 02 D7 03            15 00 02 C2 00            15 00 02 C3 0E            15 00 02 C4 00            15 00 02 C5 0E            15 00 02 DD 00            15 00 02 DE 0E            15 00 02 E6 00            15 00 02 E7 0E            15 00 02 C2 00            15 00 02 C3 0E            15 00 02 C4 00            15 00 02 C5 0E            15 00 02 DD 00            15 00 02 DE 0E            15 00 02 E6 00            15 00 02 E7 0E            15 00 02 B0 06            15 00 02 C0 A5            15 00 02 D5 1C            15 00 02 C0 00            15 00 02 B0 00            15 00 02 BD 30            15 00 02 F9 5C            15 00 02 C2 14            15 00 02 C4 14            15 00 02 BF 15            15 00 02 C0 0C            15 00 02 B0 00            15 00 02 B1 79            15 00 02 BA 8F            05 78 01 11            05 78 01 29        ];        panel-exit-sequence = [            05 32 01 28            05 78 01 10        ];        disp_timings1: display-timings {            native-mode = ;            dsi1_timing0: timing0 {                clock-frequency = ;                hactive = ;                vactive = ;                hfront-porch = ;                hsync-len = ;                hback-porch = ;                vfront-porch = ;                vsync-len = ;                vback-porch = ;                hsync-active = ;                vsync-active = ;                de-active = ;                pixelclk-active = ;            };        };        ports {            #address-cells = ;            #size-cells = ;            port@0 {                reg = ;                panel_in_dsi1: endpoint {                    remote-endpoint = ;                };            };        };    };    ports {        #address-cells = ;        #size-cells = ;        port@1 {            reg = ;            dsi1_out_panel: endpoint {                remote-endpoint = ;            };        };    };};

5.3.3 打開(kāi)對(duì)應(yīng)的dsi節(jié)點(diǎn),開(kāi)機(jī)logo?

//打開(kāi)背光的pwm節(jié)點(diǎn)    &pwm2 {        status = "okay";        pinctrl-names = "active";        pinctrl-0 = ;    };        //在dsi1上接了一個(gè)mipi屏,這個(gè)配置開(kāi)啟dsi1     &dsi1 {        status = "okay";    };        &mipi_dcphy1 {        status = "okay";    };        //默認(rèn)dsi配置vp2和vp3上面,這里配置為dsi使用vp3,可以根據(jù)屏的分辨率來(lái)確認(rèn)使用vp2還是vp3,vp2支持4K,vp3只支持 2048x1536    &dsi1_in_vp2 {        status = "disabled";    };        &dsi1_in_vp3 {        status = "okay";    };        //配置dsi1顯示開(kāi)機(jī)logo    &route_dsi1 {        status = "okay";        connect = ;    };

5.4. 調(diào)試?

通過(guò)如下指令即可查詢 VOP 的狀態(tài):

cat /sys/kernel/debug/dri/0/summary

獲取的 VOP 狀態(tài)如下圖:

wKgZomXm2-iASeomAADWEINzaDM335.png

Video Portx: 表?當(dāng)前的 Video Port 的狀態(tài)

Connector: Video Port 當(dāng)前連接的輸出接口

Display mode: Video Port 當(dāng)前輸出時(shí)序

Clusterx-winx(Esmartx-winx): 圖層信息

5.5 MIPI-DSI 預(yù)覽

wKgaomSD5VmABtCNADawuVLUPwg57.jpeg


審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Display
    +關(guān)注

    關(guān)注

    1

    文章

    51

    瀏覽量

    24684
  • Rockchip
    +關(guān)注

    關(guān)注

    0

    文章

    70

    瀏覽量

    18500
  • RK3588
    +關(guān)注

    關(guān)注

    6

    文章

    294

    瀏覽量

    4070
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    RK3588開(kāi)發(fā)板(armsom-w3)PWM實(shí)操

    RK3588開(kāi)發(fā)板(armsom-w3) PWM實(shí)操
    的頭像 發(fā)表于 06-10 10:38 ?1945次閱讀
    RK3588開(kāi)發(fā)板(<b class='flag-5'>armsom</b>-w3)<b class='flag-5'>之</b>PWM實(shí)操

    ArmSoM Rockchip系列產(chǎn)品通用教程之Camera使用

    1. Camera 簡(jiǎn)介 ? ArmSoM系列產(chǎn)品使用的是mipi-csi接口的攝像頭 ArmSoM-Sige7支持雙攝同顯: 2. RK3588硬件通路框圖 ? rk3588支持2個(gè)isp硬件
    的頭像 發(fā)表于 04-10 14:59 ?1393次閱讀
    <b class='flag-5'>ArmSoM</b> <b class='flag-5'>Rockchip</b><b class='flag-5'>系列產(chǎn)品</b><b class='flag-5'>通用</b>教程之Camera使用

    54600系列產(chǎn)品說(shuō)明

    54600系列產(chǎn)品說(shuō)明
    發(fā)表于 01-21 08:44

    客戶為什么會(huì)選擇3700系列產(chǎn)品?

    客戶為什么會(huì)選擇3700系列產(chǎn)品?3700系列產(chǎn)品有什么優(yōu)點(diǎn)?
    發(fā)表于 05-07 06:33

    RX系列產(chǎn)品分別分為哪幾種?RX系列產(chǎn)品具備哪些功能?

    RX系列產(chǎn)品分別分為哪幾種?RX系列微控制器有哪些性能?RX系列產(chǎn)品具備哪些功能?
    發(fā)表于 07-01 10:57

    產(chǎn)品介紹】武漢芯源Cortex-M0+通用 MCU CW32F系列產(chǎn)品介紹

    Cortex-M0+ 通用 MCU CW32F系列家族型號(hào)展示2021年10月14日,經(jīng)過(guò)多年的市場(chǎng)調(diào)研和潛心研發(fā),武漢芯源半導(dǎo)體自主研發(fā)的首款基于 Cortex-M0+ 內(nèi)核微控制器產(chǎn)品
    發(fā)表于 08-09 10:17

    RK3588平臺(tái)產(chǎn)測(cè)ArmSoM-W3 DDR壓力測(cè)試

    root@linaro-alip:/rockchip-test# ./rockchip_test.sh DDR壓力測(cè)試開(kāi)始: ArmSoM 產(chǎn)品介紹: http
    發(fā)表于 10-09 19:29

    RK3588平臺(tái)產(chǎn)測(cè)ArmSoM產(chǎn)品高溫環(huán)境測(cè)試

    1. 簡(jiǎn)介 ArmSoM團(tuán)隊(duì)在產(chǎn)品量產(chǎn)之前都會(huì)對(duì)產(chǎn)品做幾次專業(yè)化的功能測(cè)試以及性能壓力測(cè)試,以此來(lái)保證產(chǎn)品的質(zhì)量以及穩(wěn)定性 優(yōu)秀的產(chǎn)品都要進(jìn)
    發(fā)表于 10-12 09:57

    armsom:為何選擇rk3588開(kāi)發(fā)與Jetson Nano引腳兼容的嵌入式產(chǎn)品

    引言: 當(dāng)armsom決定采用RK3588芯片開(kāi)發(fā)一款與Jetson Nano引腳兼容的產(chǎn)品時(shí),這意味著一次重要的技術(shù)決策,為開(kāi)發(fā)者和制造商提供了更大的靈活性。這篇文章將解釋我們選擇RK3588
    發(fā)表于 10-18 17:35

    ASDX系列產(chǎn)品手冊(cè)

    ASDX系列產(chǎn)品手冊(cè)。
    發(fā)表于 04-28 11:45 ?10次下載

    ArmSom--攝像頭開(kāi)發(fā)指南(二)

    一.簡(jiǎn)介RK3588從入門到精通開(kāi)發(fā)板:ArmSoM-W3Kernel:5.10.160OS:Debian11上篇文檔介紹了rockchip平臺(tái)怎么配置MIPI-CSI的通路,本?主要介紹在
    的頭像 發(fā)表于 11-06 10:30 ?1501次閱讀
    <b class='flag-5'>ArmSom</b>--攝像頭開(kāi)發(fā)指南(二)

    ArmSoM-W3應(yīng)用開(kāi)發(fā)安裝docker

    1.簡(jiǎn)介RK3588從入門到精通系列專題開(kāi)發(fā)板:ArmSoM-W3Kernel:5.10.160OS:Debian11本?介紹ArmSoM-W3在Debian11下如何安裝
    的頭像 發(fā)表于 11-20 10:05 ?378次閱讀
    <b class='flag-5'>ArmSoM</b>-W3應(yīng)用開(kāi)發(fā)<b class='flag-5'>之</b>安裝docker

    ArmSoM Rockchip系列產(chǎn)品 通用教程 CAN 使用

    都采用CAN總線來(lái)實(shí)現(xiàn)汽車內(nèi)部控制系統(tǒng)之間的數(shù)據(jù)通信。 RK3568/RK3588的CAN驅(qū)動(dòng)文件:drivers/net/can/rockchip/rockchip_canfd.c 在
    的頭像 發(fā)表于 02-29 16:52 ?663次閱讀
    <b class='flag-5'>ArmSoM</b> <b class='flag-5'>Rockchip</b><b class='flag-5'>系列產(chǎn)品</b> <b class='flag-5'>通用</b>教程 <b class='flag-5'>之</b> CAN 使用

    ArmSoM Rockchip系列產(chǎn)品 通用教程 RTC 使用

    1. RTC 簡(jiǎn)介? RTC:(Real_Time Clock):實(shí)時(shí)時(shí)鐘 HYM8563是一種低功耗實(shí)時(shí)時(shí)鐘(RTC)芯片,用于提供精確的時(shí)間和日期信息。它提供一個(gè)可編程的時(shí)鐘輸出,一個(gè)中斷輸出和一個(gè)掉電檢測(cè)器,所有的地址和數(shù)據(jù)都通過(guò)I2C總線接口串行傳遞。最大總線速度為 400Kbits/s,每次讀寫數(shù)據(jù)后,內(nèi)嵌的字地址寄存器會(huì)自動(dòng)遞增 以下是HYM8563芯片的主要特點(diǎn)和功能: 時(shí)鐘和日歷功能:HYM8563具有時(shí)鐘和日歷功能,可提供準(zhǔn)確的時(shí)間和日期信息。它支持年、月、日、星期、小時(shí)、
    的頭像 發(fā)表于 03-05 16:57 ?416次閱讀
    <b class='flag-5'>ArmSoM</b> <b class='flag-5'>Rockchip</b><b class='flag-5'>系列產(chǎn)品</b> <b class='flag-5'>通用</b>教程 <b class='flag-5'>之</b> RTC 使用

    ArmSoM Rockchip系列產(chǎn)品 通用教程 UART 使用

    1. UART 簡(jiǎn)介 ? Rockchip UART (Universal Asynchronous Receiver/Transmitter) 基于16550A串口標(biāo)準(zhǔn),完整模塊支持以下功能
    的頭像 發(fā)表于 03-08 14:39 ?716次閱讀