RK628是一款多功能視頻橋接芯片,支持多種顯示接口的轉(zhuǎn)換。本文基于RK3568平臺(tái),分享使用RK628橋接芯片實(shí)現(xiàn)RGB信號(hào)轉(zhuǎn)換為HDMI輸出的適配過(guò)程。
IDO-SOM3568-V2采用 Rockchip 新一代 64 位處理器 RK3568(四核A55, 主頻高達(dá) 2.0GHz, 22nm 工藝),集成雙核心架構(gòu) GPU 以及高效能 NPU;最大支持 8GB 內(nèi)存;內(nèi)置獨(dú)立的 NPU,32Bit位寬LPDDR4/LPDDR4x,頻率最高可達(dá)1600MHz,支持全鏈路ECC ,支持Android 11,Ubuntu , Debian,OpenHamoney,麒麟OS等多種系統(tǒng)。
產(chǎn)品規(guī)格書:IDO-SOM3568-V2(金手指) 產(chǎn)品手冊(cè)
硬件連接
RK628與RK3568的硬件連接,主要有以下幾點(diǎn):
24MHz時(shí)鐘:給RK628提供時(shí)鐘信號(hào);
I2S:用于音頻信號(hào)傳輸;
RGB:給RK628顯示信號(hào)源;
其它GPIO:控制供電和復(fù)位。
添加驅(qū)動(dòng)
本文調(diào)試使用的是RK的rk628-for-all v21驅(qū)動(dòng)。將驅(qū)動(dòng)補(bǔ)丁文件添加至 kernel/drivers/misc/rk628/ 目錄。
在原有的驅(qū)動(dòng)文件中添加
kernel/drivers/misc/Kconfig
source"drivers/misc/rk628/Kconfig"
kernel/drivers/misc/Makefile
obj-y += rk628/添加設(shè)備樹配置
dts配置分顯示和音頻兩部分,顯示部分在i2c中添加rk628節(jié)點(diǎn),并將其與rgb綁定;音頻部分使用i2s通信,新增一路simple-audio-card。
/ { rk628_hdmi_sound: rk628-hdmi-sound { compatible = "simple-audio-card"; simple-audio-card,format = "i2s"; simple-audio-card,name = "rk628-hdmi-sound"; status = "okay"; simple-audio-card,cpu { sound-dai = <&i2s1_8ch>; }; simple-audio-card,codec { sound-dai = <&rk628>; }; }; }; &i2s1_8ch { status = "okay"; rockchip,clk-trcm = <1>; pinctrl-names = "default"; pinctrl-0= <&i2s1m1_sclktx ?????????&i2s1m1_lrcktx ?????????&i2s1m1_sdo0>; }; &i2c1 { status = "okay"; clock-frequency = <400000>; rk628: rk628@50{ compatible = "rockchip,rk628"; reg = <0x50>; pinctrl-names = "default"; interrupt-parent = <&gpio1>; interrupts =運(yùn)行測(cè)試; enable-gpios = <&gpio3 RK_PD5 GPIO_ACTIVE_HIGH>; reset-gpios = <&gpio3 RK_PC4 GPIO_ACTIVE_LOW>; pinctrl-0= <&refclk_pins>; assigned-clocks = <&pmucru CLK_WIFI>; assigned-clock-rates = <24000000>; clocks = <&pmucru CLK_WIFI>; clock-names = "soc_24M"; #sound-dai-cells = <0>; rk628,rgb-in; rk628,hdmi-out; mode-sync-pol=<0>; status = "okay"; port { rgb_in_hdmi: endpoint { remote-endpoint = <&rgb_out_hdmi>; }; }; }; }; &rgb { status = "okay"; ports { port@1{ reg = <1>; rgb_out_hdmi: endpoint { remote-endpoint = <&rgb_in_hdmi>; }; }; }; }; &rgb_in_vp2 { status = "okay"; }; &route_rgb { status = "okay"; connect = <&vp2_out_rgb>; }; &pinctrl { refclk { /omit-if-no-ref/ refclk_pins: refclk-pins { rockchip,pins = /* refclk_ou */ <0?RK_PA0 1?&pcfg_pull_none>; }; }; }
修改驅(qū)動(dòng)編譯,更新內(nèi)核后;插入HDMI顯示器,正常的情況下可以成功顯示
查看顯示參數(shù)
cat /sys/kernel/debug/dri/0/summary
聲卡注冊(cè)情況如下,可通過(guò)播放音樂來(lái)測(cè)試HDMI是否有聲音輸出
問(wèn)題排查
確認(rèn)供電和復(fù)位時(shí)序是否正常
測(cè)量軟件24MHz時(shí)鐘信號(hào)是否正常輸出
審核編輯:劉清
-
處理器
+關(guān)注
關(guān)注
68文章
19414瀏覽量
231208 -
RGB
+關(guān)注
關(guān)注
4文章
801瀏覽量
58719 -
HDMI接口
+關(guān)注
關(guān)注
1文章
134瀏覽量
34185 -
GPIO
+關(guān)注
關(guān)注
16文章
1216瀏覽量
52391 -
RK3568
+關(guān)注
關(guān)注
4文章
525瀏覽量
5236
原文標(biāo)題:【技術(shù)分享】RK3568適配RK628 RGB to HDMI
文章出處:【微信號(hào):industio,微信公眾號(hào):深圳觸覺智能】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
RK628 HDMI In是否只能支持特定的幾個(gè)分辨率
ROC RK3568 PC源代碼RK3568/RK3588 RKNN SDK
![ROC <b class='flag-5'>RK3568</b> PC源代碼<b class='flag-5'>RK3568</b>/<b class='flag-5'>RK</b>3588 RKNN SDK](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
RK3568核心板數(shù)據(jù)手冊(cè)
【技術(shù)分享】RK3568適配RK628 RGB to HDMI
![【<b class='flag-5'>技術(shù)</b>分享】<b class='flag-5'>RK3568</b><b class='flag-5'>適配</b><b class='flag-5'>RK628</b> <b class='flag-5'>RGB</b> to <b class='flag-5'>HDMI</b>](https://file1.elecfans.com//web2/M00/8D/6D/wKgZomS6RqmAfpStAAFPtzLbn5c491.png)
RK3568適配RK628 RGB to HDMI
![<b class='flag-5'>RK3568</b><b class='flag-5'>適配</b><b class='flag-5'>RK628</b> <b class='flag-5'>RGB</b> to <b class='flag-5'>HDMI</b>](https://file1.elecfans.com/web2/M00/8F/50/wKgZomTMciWAD54NAABOGP2pQZY452.png)
rk3568和rk3399的區(qū)別
RK3568和RK3566的區(qū)別
rk3568有多少引腳?
rk3568是什么架構(gòu)的?
瑞芯微RK3568開發(fā)板多屏同顯方案
![瑞芯微<b class='flag-5'>RK3568</b>開發(fā)板多屏同顯<b class='flag-5'>方案</b>](https://file1.elecfans.com/web2/M00/A4/60/wKgaomUCojGAGS7CAABeUyTVygs930.png)
評(píng)論