ID do artigo: 000077513 Tipo de conteúdo: Documentação e informações do produto Última revisão: 11/09/2012

Como altero os drivers mac ethernet Nios II velocidade tripla para usar as configurações RGMII?

Ambiente

BUILT IN - ARTICLE INTRO SECOND COMPONENT
Descrição

Você precisará atualizar seu aplicativo e BSP associado para configurar o MAC TSE para RGMII.

Em seu BSP, você precisará adicionar -DTSE_MY_SYSTEM aos seus símbolos definidos.  Isso pode ser feito em Nios® II ferramentas de compilação de software para Eclipse atualizando os símbolos definidos na página propriedades Nios II BSP.

Para a linha de comando, adicione "--set hal.make.bsp_cflags_defined_symbols -DTSE_MY_SYSTEM" à lista de argumentos BSP ao criar seu BSP.

Em sua aplicação, você precisará criar uma estrutura global do tipo "alt_tse_system_info", chamada "tse_mac_device", que desbastrói sua configuração TSE.  Este pode ser um arquivo de origem separado ou incluído na fonte do seu aplicativo. Esta estrutura será lida durante a inicialização enquanto configura o MAC TSE.

Adicione um arquivo C ao seu aplicativo (ou seja, tse_my_system.c) com o seguinte:

#include "ipport.h" // MAXNETS
#include "system.h" // nomes de componentes
#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] = {
Macro definida em altera_avalon_tse_system_info, deve corresponder à configuração do 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

};

Para PHYs não suportados pelos drivers de software TSE, consulte a seção Interface de programação de software do Guia do usuário de função Ethernet MegaCore de velocidade tripla.

Produtos relacionados

Este artigo aplica-se a 1 produtos

Dispositivos programáveis Intel®

O conteúdo desta página é uma combinação de tradução humana e por computador do conteúdo original em inglês. Este conteúdo é fornecido para sua conveniência e apenas para informação geral, e não deve ser considerado completo ou exato. Se houver alguma contradição entre a versão em inglês desta página e a tradução, a versão em inglês prevalecerá e será a determinante. Exibir a versão em inglês desta página.