hi3531 SDK 編譯 uboot, 改動PHY地址, 改動 uboot 引數 .

weixin_34119545發表於2016-04-03
一,編譯uboot
SDK文件寫得比較清楚了,寫一下須要注意的地方吧.
1. 之前用SDK裡和別人給的已經編譯好的uboot,使用fastboot工具都刷不到板子上.最後自己用SDK裡uboot原始碼編譯的則成功刷了進去,不知道詳細什麼問題,可是一直沒試試有點不應該了.
2. 文件中說要用一個Excel表格做配置然後用mkboot.sh將配置檔案和uboot.bin檔案一起生成終於的uboot,我一直糾結那個Excel不能配置,裡面的引數也看不懂.誰知道事實上不用配影響也不大.
3. 之前用別人的uboot刷到板子上一直提示SPI 不識別,用自己編譯的就能夠了,可能我用的是最新的SDK,SPI支援的比較多吧.

二, 改動PHY 地址

板子之前事實上就有uboot, 可是網口不通,這是PHY地址設定的問題. 事實上到如今我對PHY地址瞭解的仍然不太多.PHY應該就是網路OSI模型的物理層(Physical),Hi3531 晶片支援雙網路卡,因此有兩個 PHY 地址,PHYADDR0,PHYADDR1, 如今就是要把PHY地址設對,詳細原理不太懂,反正就一個個的試吧.網友給了好多幫助,以下是一位網友從海思那邊得到的郵件回覆內容.


1. 核心下的方法:
在osdvr/kernel/linux -3.0.y資料夾下執行
“make ARCH=arm CROSS_COMPILE=arm-hisiv200-linux- menuconfig”
在 menuconfig 選單下, 選擇下面選項:
 
        Device Drivers  --->
             [*] Network device support  --->
                 [*]   Ethernet (1000 Mbit)  --->
                     <M>   STMicroelectronics 10/100/1000 Ethernet driver  --->
                        (1)     STMMAC MAC #0 PHY ID     << 表示 phy 地址是 1.
                        (2)     STMMAC MAC #1 PHY ID     << 表示 phy 地址是 2.
 
2. u-boot 程式碼中, 改動方法例如以下:
u-boot程式碼中,改動 “include\configs\godnet.h” 檔案:
#define CONFIG_NET_STMMAC
#define CONFIG_TNK
#ifdef CONFIG_NET_STMMAC
        #define STMMAC_GMACADDR                (0x101c0000)
        #define STMMAC_DMAADDR                            (0x101c1000)
        #define STMMAC_IOSIZE                                     (0x10000)
        #define STMMAC_FRQDIV                         (0)
       #define STMMAC_PHYADDR0                            (1)           << 表示 phy 地址是 1.
        #define STMMAC_PHYADDR1                            (2)              << 表示 phy 地址是 2.
        #define STMMAC_PHYNAME                    "0:01"
        #define STMMAC_RGMII
        #define CONFIG_PHY_GIGE
#endif /* CONFIG_NET_STMMAC */
詳細我沒試過哦!

這個是海思給我的


  看了這個至少能定位到uboot改動的位置了,但一開始一直在改下 邊 0:01 類似

相關文章