Lines Matching +full:ethernet +full:- +full:pse

1 /* SPDX-License-Identifier: GPL-2.0-only */
4 * Copyright (C) 2009-2016 John Crispin <[email protected]>
5 * Copyright (C) 2009-2016 Felix Fietkau <[email protected]>
6 * Copyright (C) 2013-2016 Michael Lee <[email protected]>
12 #include <linux/dma-mapping.h>
57 #define NEXT_DESP_IDX(X, Y) (((X) + 1) & ((Y) - 1))
62 #define MTK_PP_MAX_BUF_SIZE (PAGE_SIZE - MTK_PP_PAD)
136 /* Unicast Filter MAC Address Register - Low */
140 /* Unicast Filter MAC Address Register - High */
150 /* PSE Free Queue Flow Control */
156 /* PSE Input Queue Reservation Register*/
157 #define PSE_IQ_REV(x) (0x140 + (((x) - 1) << 2))
159 /* PSE Output Queue Threshold Register*/
160 #define PSE_OQ_TH(x) (0x160 + (((x) - 1) << 2))
332 #define TX_DMA_PLEN0(x) (((x) & eth->soc->tx.dma_max_len) << eth->soc->tx.dma_len_offset)
333 #define TX_DMA_PLEN1(x) ((x) & eth->soc->tx.dma_max_len)
353 #define RX_DMA_PREP_PLEN0(x) (((x) & eth->soc->rx.dma_max_len) << eth->soc->rx.dma_len_offset)
354 #define RX_DMA_GET_PLEN0(x) (((x) >> eth->soc->rx.dma_len_offset) & eth->soc->rx.dma_max_len)
513 /* ethernet subsystem chip id register */
520 /* ethernet system control register */
524 /* ethernet subsystem config register */
535 /* ethernet subsystem clock register */
542 /* ethernet reset control register */
556 /* ethernet reset check idle register */
559 /* ethernet dma channel agent map */
655 /* struct mtk_hw_stats - the structure that holds the traffic statistics.
686 /* PDMA descriptor can point at 1-2 segments. This enum allows us to
820 /* PSE Port Definition */
855 /* struct mtk_tx_buf - This struct holds the pointers to the memory pointed at
875 /* struct mtk_tx_ring - This struct holds info describing a TX ring
908 /* struct mtk_rx_ring - This struct holds info describing a RX ring
1017 /* 0: GDM1 -> GMAC1, 1: GDM1 -> ESW */
1020 /* 0: GMAC2 -> GEPHY, 1: GMAC0 -> GePHY */
1024 /* 0: U3 -> QPHY, 1: GMAC2 -> QPHY */
1028 /* 2: GMAC1 -> SGMII, 3: GMAC2 -> SGMII */
1033 /* 0: GMACx -> GEPHY, 1: GMACx -> SGMII where x is 1 or 2 */
1128 /* struct mtk_eth_data - This is the structure holding all differences
1186 /* struct mtk_eth - This is the main datasructure for holding the state
1205 * @sgmii_pcs: Pointers to mtk-pcs-lynxi phylink_pcs instances
1299 /* struct mtk_mac - the structure that holds the info about the MACs of the
1328 return eth->soc->version == 1; in mtk_is_netsys_v1()
1333 return eth->soc->version > 1; in mtk_is_netsys_v2_or_greater()
1338 return eth->soc->version > 2; in mtk_is_netsys_v3_or_greater()
1344 const struct mtk_soc_data *soc = ppe->eth->soc; in mtk_foe_get_entry()
1346 return ppe->foe_table + hash * soc->foe_entry_size; in mtk_foe_get_entry()