
??網(wǎng)口驅動移植的準備
本次我們使用的平臺是致遠電子M3568系列核心板,網(wǎng)口模塊是致遠電子ePort系列的ePort-G型號產(chǎn)品,速率可達千兆,而且簡化硬件設計,縮短開發(fā)時間。

??驅動程序的移植及設備樹的修改
調試之前需要根據(jù)官方說明去修改drivers/net/phy下的Makefile和Kconfig,然后將官方的驅動拷貝到該目錄下。或者直接修改Makefile將該驅動文件編譯到內核,不修改Kconfig,這樣就不用make menuconfig去勾選上網(wǎng)口驅動。之后在RK平臺下調整設備樹部分,由于ePort-G該網(wǎng)口型號支持千兆,官方說明千兆時鐘應設為125M,如下參考(注:其他如復位引腳和設置pinctrl的引腳未寫出),根據(jù)原理圖實際配置來修改設備樹。
&gmac1 {
phy-mode = "rgmii"; //PHY接口模式
clock_in_out = "output"; //時鐘輸入輸出方向,該為MAC輸出給PHY,input則相反
//設置千兆所需要的時鐘
assigned-clocks = <&cru SCLK_GMAC0_RX_TX>, <&cru SCLK_GMAC0>;
assigned-clock-parents = <&cru SCLK_GMAC0_RGMII_SPEED>, <&cru CLK_MAC0_2TOP>;
assigned-clock-rates = <0>, <125000000>;
//根據(jù)PCB布線不同修改值
tx_delay = <0x21>;
rx_delay = <0x2f>;
phy-handle = <&rgmii_phy0>;
status = "okay";
};
&mdio1 {
rgmii_phy1: phy@2 {
compatible = "ethernet-phy-ieee802.3-c22";
reg = <7>; //PHY的物理地址,原理圖上有標出
};
}之后編譯內核,查看drivers/net/phy下有無生成對應驅動的.o文件,若驅動程序在編譯過程出現(xiàn)報錯,可能要根據(jù)自己內核版本去修改官方的驅動程序,將一些沒有的函數(shù)屏蔽或替換。編譯完成后將boot.img燒錄到開發(fā)板上(內核和設備樹)。
查看網(wǎng)口是否配置成功及網(wǎng)口調試
1. 配置檢查

輸入命令ifconfig ethx dowm和ifconfig ethx up(x為網(wǎng)口號)檢查是否能正常起來,嘗試更改設置ip地址,連接網(wǎng)線進行ping命令查看可否通同一網(wǎng)段下的網(wǎng)線另一端地址。
在ping通外網(wǎng)之后可以嘗試使用iperf3來進行網(wǎng)絡測試,測試通過iperf3功能從板子做服務器接收速度和板子做客戶端發(fā)送速度的數(shù)據(jù)來觀測是否達到要求。如下圖:

當然,也可能存在丟包情況,這種情況需要適當?shù)恼{整MAC的tx_delay和rx_delay,也可以通過在驅動程序中調整寄存器值的方式來控制phy的tx_delay和rx_delay,一般調整MAC。通過RK平臺下中/sys/device/platform/fe….ethernet/rgmii_delay可以調試修改tx_delay和rx_delay,輸入命令echo 0x2a 0x26 > rgmii_delay(第一個延遲參數(shù)為tx,第二個為rx),修改的數(shù)值可以根據(jù)該目錄下的phy_ld_scan工具來查看。拔掉網(wǎng)線,輸入命令echo 1000> phy_ld_scan后,如下圖所示:

有0的表示通路,根據(jù)橫(TX的延時)縱(RX的延時)坐標來觀察出TX和RX的延時應設置為多少。如果根本沒有0或者0很少的情況則考慮下硬件走線是否過長導致。
技術交流群








原文標題:【技術分享】在M3568上移植ePort-G驅動及調試技巧
文章出處:【微信公眾號:ZLG致遠電子】歡迎添加關注!文章轉載請注明出處。
-
致遠電子
+關注
關注
13文章
422瀏覽量
32550
原文標題:【技術分享】在M3568上移植ePort-G驅動及調試技巧
文章出處:【微信號:ZLG_zhiyuan,微信公眾號:ZLG致遠電子】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
尋求 IOT-MKC3568-Main-v1.1 (基于 EVB1-V10) 開發(fā)板的移植幫助.
【迅為工業(yè)RK3568穩(wěn)定可靠】itop-3568開發(fā)板Linux驅動開發(fā)實戰(zhàn):RK3568內核模塊符號導出詳解
【迅為工業(yè)RK3568穩(wěn)定可靠】itop-3568開發(fā)板驅動開發(fā)第4章驅動模塊傳參實驗
【作品合集】視美泰M-K1HSE、3568開發(fā)板測評
M3568系列核心板:多屏同顯異顯,智能交互新體驗
【RA-Eco-RA6M4開發(fā)板評測】2、I2C外設驅動OLED屏幕和移植u8g2
【HZ-RK3568開發(fā)板免費體驗】合眾HZ-RK3568開發(fā)板測評
高效開發(fā) | 瑞迅基于瑞芯微系列主板QT移植部署(上)
【HZ-RK3568開發(fā)板免費體驗】HZ-RK3568開發(fā)板初步接觸
北京迅為RK3568開發(fā)板OpenHarmony系統(tǒng)南向驅動開發(fā)內核HDF驅動框架架構
【技術分享】在M3568上移植ePort-G驅動及調試技巧
評論