RK3588 編解碼盒子 之 RTL8211FS-CG光口調(diào)試
1. 簡介
本文是基于RK3588平臺,SDK版本:RK3588_ANDROID12.0 RTL8211FS-CG光口調(diào)試總結(jié)。
視頻橋接芯片:RTL8211FS-CG
驅(qū)動代碼:“kernel/drivers/net/phy/realtek.c”
本次調(diào)試的方案功能:RK3588 調(diào)試RTL8211FS-CG 轉(zhuǎn)接出光口
2. 硬件部分
硬件工程師參考RTL8211FS-CG發(fā)布的設(shè)計圖設(shè)計
以下為部分截圖
在設(shè)計過程中參考realtek發(fā)過的參考設(shè)計,建議咨詢一下phy廠家,看有哪些注意地方
注意: 8211FS使用外部3.3V,電平要與主控GMAC1相匹配;
使用UTP<->RGMII的接法,且CFG_MODE2:0=010兼容光口和電口;
3. 軟件部分
建議先調(diào)電口RJ45,調(diào)通后再接光口,可能更容易;調(diào)電口時先插百兆網(wǎng)線調(diào)百兆,成功后再換千兆網(wǎng)線
3.1 代碼
3.1.1 Realtek phy的內(nèi)核配置
在kernel下輸入make menuconfig
這樣realtek.c就可以編譯到kernel了
3.1.2 dts配置
3.1.3 代碼驗證
插千兆網(wǎng)線有相關(guān)打印且可以ping通百度
此時插光口沒有分配IP地址
3.1.4 調(diào)試
打開IO調(diào)試命令
CONFIG_DEVMEM=y
3.1.5 操作寄存器
如果修改無效,參閱PHY規(guī)格書的8.5章節(jié)修改
3.1.6 將芯片強制固定光口模式
setup_fiber_mode
編譯燒寫之后網(wǎng)口燈狀態(tài)已經(jīng)變?yōu)楣饪谀J搅?,此時插入光口還是無法分配IP地址
3.1.7 補丁
將補丁加進去
上電之后再復(fù)位reset腳一次可以識別到光口了
3.1.7 phy reset
io -4 0xFEC40000 0x80000000 拉低
sleep 0.1
io -4 0xFEC40000 0x80008000 拉高
RTL8211F(S) Gigabit Ethernet stmmac-1:01: Copper Mode
總結(jié)
RTL8211FS,只要硬件線路配置為RGMII to Fiber 等涉及到Fiber的模式,即可工作。Fiber相關(guān)的模式設(shè)定可參考RTL8211FS數(shù)據(jù)手冊中寄存器描述,公司推動 realtek 跟進解決。
