mac_device_info
struct mac_device_info;
static int loongson_dwmac_setup(void *apriv, struct mac_device_info *mac)
static int sun8i_dwmac_setup(void *ppriv, struct mac_device_info *mac)
static void sun8i_dwmac_dump_mac_regs(struct mac_device_info *hw,
static void sun8i_dwmac_core_init(struct mac_device_info *hw,
static void sun8i_dwmac_set_umac_addr(struct mac_device_info *hw,
static void sun8i_dwmac_get_umac_addr(struct mac_device_info *hw,
static int sun8i_dwmac_rx_ipc_enable(struct mac_device_info *hw)
static void sun8i_dwmac_set_filter(struct mac_device_info *hw,
static void sun8i_dwmac_flow_ctrl(struct mac_device_info *hw,
static void dwmac1000_set_umac_addr(struct mac_device_info *hw,
static void dwmac1000_get_umac_addr(struct mac_device_info *hw,
static void dwmac1000_set_filter(struct mac_device_info *hw,
static void dwmac1000_flow_ctrl(struct mac_device_info *hw, unsigned int duplex,
static void dwmac1000_pmt(struct mac_device_info *hw, unsigned long mode)
static int dwmac1000_set_lpi_mode(struct mac_device_info *hw,
static void dwmac1000_set_eee_pls(struct mac_device_info *hw, int link)
static void dwmac1000_set_eee_timer(struct mac_device_info *hw, int ls, int tw)
static void dwmac1000_core_init(struct mac_device_info *hw,
struct mac_device_info *mac = priv->hw;
static void dwmac1000_irq_modify(struct mac_device_info *hw, u32 disable,
static int dwmac1000_rx_ipc_enable(struct mac_device_info *hw)
static void dwmac1000_dump_regs(struct mac_device_info *hw, u32 *reg_space)
static void dwmac100_flow_ctrl(struct mac_device_info *hw, unsigned int duplex,
static void dwmac100_pmt(struct mac_device_info *hw, unsigned long mode)
struct mac_device_info *mac = priv->hw;
static void dwmac100_core_init(struct mac_device_info *hw,
static void dwmac100_dump_mac_regs(struct mac_device_info *hw, u32 *reg_space)
static int dwmac100_rx_ipc_enable(struct mac_device_info *hw)
static void dwmac100_set_umac_addr(struct mac_device_info *hw,
static void dwmac100_get_umac_addr(struct mac_device_info *hw,
static void dwmac100_set_filter(struct mac_device_info *hw,
struct mac_device_info *mac = priv->hw;
static void dwmac4_tx_queue_priority(struct mac_device_info *hw,
static void dwmac4_rx_queue_routing(struct mac_device_info *hw,
static void dwmac4_prog_mtl_rx_algorithms(struct mac_device_info *hw,
static void dwmac4_prog_mtl_tx_algorithms(struct mac_device_info *hw,
struct mac_device_info *hw,
static void dwmac4_map_mtl_dma(struct mac_device_info *hw, u32 queue, u32 chan)
struct mac_device_info *hw,
static void dwmac4_dump_regs(struct mac_device_info *hw, u32 *reg_space)
static int dwmac4_rx_ipc_enable(struct mac_device_info *hw)
static void dwmac4_pmt(struct mac_device_info *hw, unsigned long mode)
static void dwmac4_core_init(struct mac_device_info *hw,
static void dwmac4_set_umac_addr(struct mac_device_info *hw,
static void dwmac4_get_umac_addr(struct mac_device_info *hw,
static int dwmac4_set_lpi_mode(struct mac_device_info *hw,
static void dwmac4_set_eee_pls(struct mac_device_info *hw, int link)
static void dwmac4_set_eee_timer(struct mac_device_info *hw, int ls, int tw)
static void dwmac4_set_filter(struct mac_device_info *hw,
static void dwmac4_flow_ctrl(struct mac_device_info *hw, unsigned int duplex,
static void dwmac4_irq_modify(struct mac_device_info *hw, u32 disable,
struct mac_device_info *hw, u32 chan)
static void dwmac4_set_arp_offload(struct mac_device_info *hw, bool en,
static void dwmac4_rx_queue_enable(struct mac_device_info *hw,
static int dwmac4_config_l3_filter(struct mac_device_info *hw, u32 filter_no,
static int dwmac4_config_l4_filter(struct mac_device_info *hw, u32 filter_no,
static void dwmac4_rx_queue_priority(struct mac_device_info *hw,
static int dwxgmac2_get_mac_tx_timestamp(struct mac_device_info *hw, u64 *ts)
static int dwxgmac2_filter_wait(struct mac_device_info *hw)
static int dwxgmac2_filter_read(struct mac_device_info *hw, u32 filter_no,
static int dwxgmac2_filter_write(struct mac_device_info *hw, u32 filter_no,
static int dwxgmac2_config_l3_filter(struct mac_device_info *hw, u32 filter_no,
static int dwxgmac2_config_l4_filter(struct mac_device_info *hw, u32 filter_no,
static void dwxgmac2_tx_queue_prio(struct mac_device_info *hw, u32 prio,
static void dwxgmac2_set_arp_offload(struct mac_device_info *hw, bool en,
static void dwxlgmac2_rx_queue_enable(struct mac_device_info *hw, u8 mode,
struct mac_device_info *mac = priv->hw;
static void dwxgmac2_rx_queue_routing(struct mac_device_info *hw,
struct mac_device_info *mac = priv->hw;
static void dwxgmac2_core_init(struct mac_device_info *hw,
static void dwxgmac2_prog_mtl_rx_algorithms(struct mac_device_info *hw,
static void dwxgmac2_prog_mtl_tx_algorithms(struct mac_device_info *hw,
struct mac_device_info *hw,
static void dwxgmac2_map_mtl_to_dma(struct mac_device_info *hw, u32 queue,
struct mac_device_info *hw,
static void dwxgmac2_dump_regs(struct mac_device_info *hw, u32 *reg_space)
static void dwxgmac2_irq_modify(struct mac_device_info *hw, u32 disable,
struct mac_device_info *hw, u32 chan)
static void dwxgmac2_flow_ctrl(struct mac_device_info *hw, unsigned int duplex,
static void dwxgmac2_pmt(struct mac_device_info *hw, unsigned long mode)
static void dwxgmac2_set_umac_addr(struct mac_device_info *hw,
static void dwxgmac2_get_umac_addr(struct mac_device_info *hw,
static int dwxgmac2_set_lpi_mode(struct mac_device_info *hw,
static void dwxgmac2_set_eee_pls(struct mac_device_info *hw, int link)
static void dwxgmac2_set_eee_timer(struct mac_device_info *hw, int ls, int tw)
static void dwxgmac2_set_filter(struct mac_device_info *hw,
static int dwxgmac2_rss_configure(struct mac_device_info *hw,
static int dwxgmac2_rx_ipc(struct mac_device_info *hw)
static void dwxgmac2_rx_queue_enable(struct mac_device_info *hw, u8 mode,
static void dwxgmac2_rx_queue_prio(struct mac_device_info *hw, u32 prio,
struct mac_device_info *mac;
struct mac_device_info *mac = priv->hw;
struct mac_device_info *mac = priv->hw;
struct mac_device_info;
void (*core_init)(struct mac_device_info *hw, struct net_device *dev);
void (*irq_modify)(struct mac_device_info *hw, u32 disable, u32 enable);
int (*rx_ipc)(struct mac_device_info *hw);
void (*rx_queue_enable)(struct mac_device_info *hw, u8 mode, u32 queue);
void (*rx_queue_prio)(struct mac_device_info *hw, u32 prio, u32 queue);
void (*tx_queue_prio)(struct mac_device_info *hw, u32 prio, u32 queue);
void (*rx_queue_routing)(struct mac_device_info *hw, u8 packet,
void (*prog_mtl_rx_algorithms)(struct mac_device_info *hw, u32 rx_alg);
void (*prog_mtl_tx_algorithms)(struct mac_device_info *hw, u32 tx_alg);
struct mac_device_info *hw,
void (*map_mtl_to_dma)(struct mac_device_info *hw, u32 queue, u32 chan);
void (*config_cbs)(struct stmmac_priv *priv, struct mac_device_info *hw,
void (*dump_regs)(struct mac_device_info *hw, u32 *reg_space);
struct mac_device_info *hw, u32 chan);
void (*set_filter)(struct mac_device_info *hw, struct net_device *dev);
void (*flow_ctrl)(struct mac_device_info *hw, unsigned int duplex,
void (*pmt)(struct mac_device_info *hw, unsigned long mode);
void (*set_umac_addr)(struct mac_device_info *hw,
void (*get_umac_addr)(struct mac_device_info *hw, unsigned char *addr,
int (*set_lpi_mode)(struct mac_device_info *hw,
void (*set_eee_timer)(struct mac_device_info *hw, int ls, int tw);
void (*set_eee_pls)(struct mac_device_info *hw, int link);
int (*rss_configure)(struct mac_device_info *hw,
int (*get_mac_tx_timestamp)(struct mac_device_info *hw, u64 *ts);
int (*config_l3_filter)(struct mac_device_info *hw, u32 filter_no,
int (*config_l4_filter)(struct mac_device_info *hw, u32 filter_no,
void (*set_arp_offload)(struct mac_device_info *hw, bool en, u32 addr);
void (*update_vlan_hash)(struct mac_device_info *hw, u32 hash,
void (*enable_vlan)(struct mac_device_info *hw, u32 type);
void (*rx_hw_vlan)(struct mac_device_info *hw, struct dma_desc *rx_desc,
void (*set_hw_vlan_mode)(struct mac_device_info *hw);
struct mac_device_info *hw,
struct mac_device_info *hw,
struct mac_device_info *hw);
struct mac_device_info *hw;
struct mac_device_info *hw,
struct mac_device_info *hw)
static void vlan_update_hash(struct mac_device_info *hw, u32 hash,
static void vlan_enable(struct mac_device_info *hw, u32 type)
static void vlan_rx_hw(struct mac_device_info *hw,
struct mac_device_info *hw,
static void vlan_set_hw_mode(struct mac_device_info *hw)
static void dwxgmac2_update_vlan_hash(struct mac_device_info *hw, u32 hash,
struct mac_device_info *hw,
struct mac_device_info;
int (*mac_setup)(void *priv, struct mac_device_info *mac);