1 搭建编译环境
参考
【Realtek usdk2.3.1a】rtl8198de+8832cr+8192xbr 在ubuntu16.04上搭建usdk2.3.1a编译环境
2 编译boot的方法
2.1 cd bootcode/
2.2 bootcode的预配置:
如果需要编译 spi nor flash的boot,则
cp def-rtl8197fs_vg_8367rb_vc-config .config
如果需要编译 spi nand flash的boot,则
cp def-rtl8197fs_vg_8367rb_vc-spi_nand-config .config
即default setting中,带 nand 字样的,为nand flash config
否则为 nor flash config
2.3 make menuconfig
2.3.1 检查外部物理 switch 与软件配置是否一致
2.3.1.1 如果是 rtl8367rb-vb or rtl8367rb-bc,选项如下:
(RTL8367RB-VC/8367RB-VB) External Switch/PHY support
2.3.1.2 如果是 8363nb/8365MB,选项如下:
(RTL8363NB/8365MB) External Switch/PHY support
2.3.1.3 如果是 8366SC/8364NB/8367S,选项如下:
(RTL8366SC/8364NB/8367S) External Switch/PHY support
2.3.1.4 如果是 RTL8211F,选项如下:
(RTL8211F) External Switch/PHY support
2.3.2 结合HDK,检查外部switch 的 MDC MDIO Pin配置是否一致
本例中,8367rb-vc 的MDC on GPIOD1; MDIO on GPIOD7
故采用默认配置
(D1/D7) MDC/MDIO gpio pin usage
若是其它情况,例如: RTL8367S , MDC on GPIOH0, MDIO on GPIOG7
则配置如下:
(RTL8366SC/8364NB/8367S) External Switch/PHY support (H0/G7) MDC/MDIO gpio pin usage
2.4 save
2.5 make
生成的目标产物位于 ./boot/Output/boot and boot.bin
3 编译firmware.bin的方法
3.1 cd rtl819x
3.2 make menuconfig
Device Drivers --->
[*] Network device support --->
[*] Options for Realtek SoC --->
External Switch/PHY support (Enable RTL8367RB-VC/8367RB-VB support)
MDC/MDIO gpio pin usage (MDC/MDIO use GPIO H0/G7) --->
在外部switch 中,同样遵守 2.3.1 和 2.3.2
3.3 在kernel中,配置是否共振
3.4 save
3.5 make
产物位于 ./image/fw.bin。
若有更多疑问,微信号:dowellmore 联系。