Lines Matching defs:stmmac_ops
316 struct stmmac_ops { struct
318 void (*core_init)(struct mac_device_info *hw, struct net_device *dev);
320 void (*update_caps)(struct stmmac_priv *priv);
322 void (*set_mac)(void __iomem *ioaddr, bool enable);
324 int (*rx_ipc)(struct mac_device_info *hw);
326 void (*rx_queue_enable)(struct mac_device_info *hw, u8 mode, u32 queue);
328 void (*rx_queue_prio)(struct mac_device_info *hw, u32 prio, u32 queue);
330 void (*tx_queue_prio)(struct mac_device_info *hw, u32 prio, u32 queue);
332 void (*rx_queue_routing)(struct mac_device_info *hw, u8 packet,
335 void (*prog_mtl_rx_algorithms)(struct mac_device_info *hw, u32 rx_alg);
337 void (*prog_mtl_tx_algorithms)(struct mac_device_info *hw, u32 tx_alg);
339 void (*set_mtl_tx_queue_weight)(struct stmmac_priv *priv,
343 void (*map_mtl_to_dma)(struct mac_device_info *hw, u32 queue, u32 chan);
345 void (*config_cbs)(struct stmmac_priv *priv, struct mac_device_info *hw,
349 void (*dump_regs)(struct mac_device_info *hw, u32 *reg_space);
351 int (*host_irq_status)(struct mac_device_info *hw,
354 int (*host_mtl_irq_status)(struct stmmac_priv *priv,
357 void (*set_filter)(struct mac_device_info *hw, struct net_device *dev);
359 void (*flow_ctrl)(struct mac_device_info *hw, unsigned int duplex,
362 void (*pmt)(struct mac_device_info *hw, unsigned long mode);
364 void (*set_umac_addr)(struct mac_device_info *hw,
367 void (*get_umac_addr)(struct mac_device_info *hw, unsigned char *addr,
369 int (*set_lpi_mode)(struct mac_device_info *hw,
372 void (*set_eee_timer)(struct mac_device_info *hw, int ls, int tw);
373 void (*set_eee_pls)(struct mac_device_info *hw, int link);
374 void (*debug)(struct stmmac_priv *priv, void __iomem *ioaddr,
378 void (*pcs_ctrl_ane)(void __iomem *ioaddr, bool ane, bool srgmi_ral,
380 void (*pcs_get_adv_lp)(void __iomem *ioaddr, struct rgmii_adv *adv);
382 int (*safety_feat_config)(void __iomem *ioaddr, unsigned int asp,
384 int (*safety_feat_irq_status)(struct net_device *ndev,
387 int (*safety_feat_dump)(struct stmmac_safety_stats *stats,
390 int (*rxp_config)(void __iomem *ioaddr, struct stmmac_tc_entry *entries,
393 int (*flex_pps_config)(void __iomem *ioaddr, int index,
397 void (*set_mac_loopback)(void __iomem *ioaddr, bool enable);
399 int (*rss_configure)(struct mac_device_info *hw,
402 void (*update_vlan_hash)(struct mac_device_info *hw, u32 hash,
404 void (*enable_vlan)(struct mac_device_info *hw, u32 type);
405 void (*rx_hw_vlan)(struct mac_device_info *hw, struct dma_desc *rx_desc,
407 void (*set_hw_vlan_mode)(struct mac_device_info *hw);
408 int (*add_hw_vlan_rx_fltr)(struct net_device *dev,
411 int (*del_hw_vlan_rx_fltr)(struct net_device *dev,
414 void (*restore_hw_vlan_rx_fltr)(struct net_device *dev,
417 int (*get_mac_tx_timestamp)(struct mac_device_info *hw, u64 *ts);
419 void (*sarc_configure)(void __iomem *ioaddr, int val);
421 int (*config_l3_filter)(struct mac_device_info *hw, u32 filter_no,
424 int (*config_l4_filter)(struct mac_device_info *hw, u32 filter_no,
427 void (*set_arp_offload)(struct mac_device_info *hw, bool en, u32 addr);
428 int (*fpe_map_preemption_class)(struct net_device *ndev,