#ifndef WLAN_PLATFORM_ETHERNET_H_ #define WLAN_PLATFORM_ETHERNET_H_ #include "xintc.h" //----------------------------------------------- // Top-level Ethernet Configuration // FIXME - support these in the rest of the code // ETH_PORTAL // - 0 ETH_A #define ETH_PORTAL 0 CASSERT((ETH_PORTAL == 0), invalid_eth_portal_selection) // ETH_WLAN_EXP // - 0 ETH_A (TODO) // - 1 ETH_B #define ETH_WLAN_EXP 1 CASSERT(((ETH_WLAN_EXP == 0)||(ETH_WLAN_EXP == 1)), invalid_eth_wlan_exp_selection) #if ETH_WLAN_EXP == 1 // Set to 1 to use polling peripheral, 0 to use interrupt peripheral #define WLAN_EXP_USE_POLL_PERIPH 0 #else #define WLAN_EXP_USE_POLL_PERIPH 0 #endif //----------------------------------------------- // xparameter.h definitions // // Ethernet A #define ETH_A_MAC_DEVICE_ID XPAR_ETH_A_MAC_DEVICE_ID #define ETH_A_DMA_DEVICE_ID XPAR_ETH_A_DMA_DEVICE_ID #define ETH_A_RX_INTR_ID XPAR_INTC_0_AXIDMA_0_S2MM_INTROUT_VEC_ID #define ETH_A_TX_INTR_ID XPAR_INTC_0_AXIDMA_0_MM2S_INTROUT_VEC_ID // Ethernet B #define ETH_B_MAC_DEVICE_ID XPAR_ETH_B_MAC_DEVICE_ID #define ETH_B_DMA_DEVICE_ID XPAR_ETH_B_DMA_DEVICE_ID #define ETH_B_RX_INTR_ID XPAR_INTC_0_AXIDMA_1_S2MM_INTROUT_VEC_ID #define ETH_B_TX_INTR_ID XPAR_INTC_0_AXIDMA_1_MM2S_INTROUT_VEC_ID //----------------------------------------------- // Ethernet PHY defines // #define ETH_A_MDIO_PHYADDR 0x6 #define ETH_B_MDIO_PHYADDR 0x7 //----------------------------------------------- // WLAN Ethernet defines // NOTE: Ethernet device associated with device ID must match Ethernet device associated // with MDIO PHY address // #if ETH_PORTAL == 0 #define PORTAL_ETH_DEV_ID ETH_A_MAC_DEVICE_ID #define PORTAL_ETH_MDIO_PHYADDR ETH_A_MDIO_PHYADDR #define PORTAL_ETH_RX_INTR_ID ETH_A_RX_INTR_ID #define PORTAL_ETH_TX_INTR_ID ETH_A_TX_INTR_ID #define PORTAL_ETH_LINK_SPEED 1000 #endif #if ETH_WLAN_EXP == 1 #define WLAN_EXP_ETH_DEV_ID ETH_B_MAC_DEVICE_ID #define WLAN_EXP_ETH_MDIO_PHYADDR ETH_B_MDIO_PHYADDR #define WLAN_EXP_ETH_RX_INTR_ID ETH_B_RX_INTR_ID #define WLAN_EXP_ETH_TX_INTR_ID ETH_B_TX_INTR_ID #define WLAN_EXP_ETH_LINK_SPEED 1000 #endif int wlan_platform_ethernet_send(u8* pkt_ptr, u32 length); int w3_wlan_platform_ethernet_init(); void w3_wlan_platform_ethernet_free_queue_entry_notify(); #endif //WLAN_PLATFORM_ETHERNET_H_