1 | #ifndef WLAN_PLATFORM_ETHERNET_H_ |
---|
2 | #define WLAN_PLATFORM_ETHERNET_H_ |
---|
3 | |
---|
4 | #include "xintc.h" |
---|
5 | |
---|
6 | //----------------------------------------------- |
---|
7 | // Top-level Ethernet Configuration |
---|
8 | // FIXME - support these in the rest of the code |
---|
9 | |
---|
10 | // ETH_PORTAL |
---|
11 | // - 0 ETH_A |
---|
12 | #define ETH_PORTAL 0 |
---|
13 | CASSERT((ETH_PORTAL == 0), invalid_eth_portal_selection) |
---|
14 | |
---|
15 | // ETH_WLAN_EXP |
---|
16 | // - 0 ETH_A (TODO) |
---|
17 | // - 1 ETH_B |
---|
18 | #define ETH_WLAN_EXP 1 |
---|
19 | CASSERT(((ETH_WLAN_EXP == 0)||(ETH_WLAN_EXP == 1)), invalid_eth_wlan_exp_selection) |
---|
20 | |
---|
21 | #if ETH_WLAN_EXP == 1 |
---|
22 | |
---|
23 | // Set to 1 to use polling peripheral, 0 to use interrupt peripheral |
---|
24 | #define WLAN_EXP_USE_POLL_PERIPH 0 |
---|
25 | |
---|
26 | #else |
---|
27 | |
---|
28 | #define WLAN_EXP_USE_POLL_PERIPH 0 |
---|
29 | |
---|
30 | #endif |
---|
31 | |
---|
32 | |
---|
33 | //----------------------------------------------- |
---|
34 | // xparameter.h definitions |
---|
35 | // |
---|
36 | // Ethernet A |
---|
37 | #define ETH_A_MAC_DEVICE_ID XPAR_ETH_A_MAC_DEVICE_ID |
---|
38 | #define ETH_A_DMA_DEVICE_ID XPAR_ETH_A_DMA_DEVICE_ID |
---|
39 | |
---|
40 | #define ETH_A_RX_INTR_ID XPAR_INTC_0_AXIDMA_0_S2MM_INTROUT_VEC_ID |
---|
41 | #define ETH_A_TX_INTR_ID XPAR_INTC_0_AXIDMA_0_MM2S_INTROUT_VEC_ID |
---|
42 | |
---|
43 | // Ethernet B |
---|
44 | #define ETH_B_MAC_DEVICE_ID XPAR_ETH_B_MAC_DEVICE_ID |
---|
45 | #define ETH_B_DMA_DEVICE_ID XPAR_ETH_B_DMA_DEVICE_ID |
---|
46 | |
---|
47 | #define ETH_B_RX_INTR_ID XPAR_INTC_0_AXIDMA_1_S2MM_INTROUT_VEC_ID |
---|
48 | #define ETH_B_TX_INTR_ID XPAR_INTC_0_AXIDMA_1_MM2S_INTROUT_VEC_ID |
---|
49 | |
---|
50 | |
---|
51 | //----------------------------------------------- |
---|
52 | // Ethernet PHY defines |
---|
53 | // |
---|
54 | #define ETH_A_MDIO_PHYADDR 0x6 |
---|
55 | #define ETH_B_MDIO_PHYADDR 0x7 |
---|
56 | |
---|
57 | |
---|
58 | //----------------------------------------------- |
---|
59 | // WLAN Ethernet defines |
---|
60 | // NOTE: Ethernet device associated with device ID must match Ethernet device associated |
---|
61 | // with MDIO PHY address |
---|
62 | // |
---|
63 | #if ETH_PORTAL == 0 |
---|
64 | #define PORTAL_ETH_DEV_ID ETH_A_MAC_DEVICE_ID |
---|
65 | #define PORTAL_ETH_MDIO_PHYADDR ETH_A_MDIO_PHYADDR |
---|
66 | #define PORTAL_ETH_RX_INTR_ID ETH_A_RX_INTR_ID |
---|
67 | #define PORTAL_ETH_TX_INTR_ID ETH_A_TX_INTR_ID |
---|
68 | #define PORTAL_ETH_LINK_SPEED 1000 |
---|
69 | #endif |
---|
70 | |
---|
71 | #if ETH_WLAN_EXP == 1 |
---|
72 | #define WLAN_EXP_ETH_DEV_ID ETH_B_MAC_DEVICE_ID |
---|
73 | #define WLAN_EXP_ETH_MDIO_PHYADDR ETH_B_MDIO_PHYADDR |
---|
74 | #define WLAN_EXP_ETH_RX_INTR_ID ETH_B_RX_INTR_ID |
---|
75 | #define WLAN_EXP_ETH_TX_INTR_ID ETH_B_TX_INTR_ID |
---|
76 | #define WLAN_EXP_ETH_LINK_SPEED 1000 |
---|
77 | #endif |
---|
78 | |
---|
79 | int wlan_platform_ethernet_send(u8* pkt_ptr, u32 length); |
---|
80 | int w3_wlan_platform_ethernet_init(); |
---|
81 | void w3_wlan_platform_ethernet_free_queue_entry_notify(); |
---|
82 | |
---|
83 | #endif //WLAN_PLATFORM_ETHERNET_H_ |
---|