您需要更新应用程序和相关 BSP,以为 RGMII 配置 TSE MAC。
在 BSP 中,您需要将 - DTSE_MY_SYSTEM添加到您定义的符号中。 这可以在Nios® II BSP 属性 页面更新Nios II BSP 属性页面中的定义符号来Eclipse的软件构建工具中完成。
对于命令行,在创建 BSP 时,在 BSP 参数列表中添加"--set hal.bsp_cflags_defined_symbols -DTSE_MY_SYSTEM"。
在应用程序中,您需要创建名为"tse_mac_device"的"alt_tse_system_info"类型的全局结构,该结构可定义您的 TSE 配置。 这可以是一个单独的源文件,或包含在您的应用程序源中。在初始化过程中,在配置 TSE MAC 时读取该结构。
将 C 文件添加到您的应用程序(即tse_my_system.c),包含以下内容:
#include"ipport.h" // MAXNETS
#include"system.h"//组件名称
#include "altera_avalon_tse.h" // phy_cfg_fp, alt_tse_system_info, TSE_PHY_AUTO_ADDRESS
#include"altera_avalon_tse_system_info.h"/TSE_SYSTEM_EXT_MEM_NO_SHARED_FIFO
alt_tse_system_info tse_mac_device[MAXNETS] = {
altera_avalon_tse_system_info 中定义的宏应与 TSE 配置相符
TSE_SYSTEM_EXT_MEM_NO_SHARED_FIFO(
TSE_MAC//tse_name
0、//offset
SGDMA_TX//sgdma_tx_name
SGDMA_RX//sgdma_rx_name
TSE_PHY_AUTO_ADDRESS//phy_address
&marvell_cfg_rgmii,//phy_cfg_fp
DESCRIPTOR_MEMORY)//desc_mem_name
};
对于 TSE 软件驱动程序不支持的 PHY,请参阅《三速以太网 MegaCore 功能用户指南》的 软件编程接口部分。