Lines Matching defs:xgbe_hw_if
730 struct xgbe_hw_if { struct
731 int (*tx_complete)(struct xgbe_ring_desc *);
733 int (*set_mac_address)(struct xgbe_prv_data *, u8 *addr);
734 int (*config_rx_mode)(struct xgbe_prv_data *);
736 int (*enable_rx_csum)(struct xgbe_prv_data *);
737 int (*disable_rx_csum)(struct xgbe_prv_data *);
739 int (*enable_rx_vlan_stripping)(struct xgbe_prv_data *);
740 int (*disable_rx_vlan_stripping)(struct xgbe_prv_data *);
741 int (*enable_rx_vlan_filtering)(struct xgbe_prv_data *);
742 int (*disable_rx_vlan_filtering)(struct xgbe_prv_data *);
743 int (*update_vlan_hash_table)(struct xgbe_prv_data *);
745 int (*read_mmd_regs)(struct xgbe_prv_data *, int, int);
746 void (*write_mmd_regs)(struct xgbe_prv_data *, int, int, int);
747 int (*set_speed)(struct xgbe_prv_data *, int);
749 int (*set_ext_mii_mode)(struct xgbe_prv_data *, unsigned int,
751 int (*read_ext_mii_regs)(struct xgbe_prv_data *, int, int);
752 int (*write_ext_mii_regs)(struct xgbe_prv_data *, int, int, u16);
754 int (*set_gpio)(struct xgbe_prv_data *, unsigned int);
755 int (*clr_gpio)(struct xgbe_prv_data *, unsigned int);
757 void (*enable_tx)(struct xgbe_prv_data *);
758 void (*disable_tx)(struct xgbe_prv_data *);
759 void (*enable_rx)(struct xgbe_prv_data *);
760 void (*disable_rx)(struct xgbe_prv_data *);
762 void (*powerup_tx)(struct xgbe_prv_data *);
763 void (*powerdown_tx)(struct xgbe_prv_data *);
764 void (*powerup_rx)(struct xgbe_prv_data *);
765 void (*powerdown_rx)(struct xgbe_prv_data *);
767 int (*init)(struct xgbe_prv_data *);
768 int (*exit)(struct xgbe_prv_data *);
770 int (*enable_int)(struct xgbe_channel *, enum xgbe_int);
771 int (*disable_int)(struct xgbe_channel *, enum xgbe_int);
772 void (*dev_xmit)(struct xgbe_channel *);
773 int (*dev_read)(struct xgbe_channel *);
774 void (*tx_desc_init)(struct xgbe_channel *);
775 void (*rx_desc_init)(struct xgbe_channel *);
776 void (*tx_desc_reset)(struct xgbe_ring_data *);
777 void (*rx_desc_reset)(struct xgbe_prv_data *, struct xgbe_ring_data *,
779 int (*is_last_desc)(struct xgbe_ring_desc *);
780 int (*is_context_desc)(struct xgbe_ring_desc *);
781 void (*tx_start_xmit)(struct xgbe_channel *, struct xgbe_ring *);
784 int (*config_tx_flow_control)(struct xgbe_prv_data *);
785 int (*config_rx_flow_control)(struct xgbe_prv_data *);
788 int (*config_rx_coalesce)(struct xgbe_prv_data *);
789 int (*config_tx_coalesce)(struct xgbe_prv_data *);
790 unsigned int (*usec_to_riwt)(struct xgbe_prv_data *, unsigned int);
791 unsigned int (*riwt_to_usec)(struct xgbe_prv_data *, unsigned int);
794 int (*config_rx_threshold)(struct xgbe_prv_data *, unsigned int);
795 int (*config_tx_threshold)(struct xgbe_prv_data *, unsigned int);
798 int (*config_rsf_mode)(struct xgbe_prv_data *, unsigned int);
799 int (*config_tsf_mode)(struct xgbe_prv_data *, unsigned int);
802 int (*config_osp_mode)(struct xgbe_prv_data *);
805 void (*rx_mmc_int)(struct xgbe_prv_data *);
806 void (*tx_mmc_int)(struct xgbe_prv_data *);
807 void (*read_mmc_stats)(struct xgbe_prv_data *);
810 int (*config_tstamp)(struct xgbe_prv_data *, unsigned int);
811 void (*update_tstamp_addend)(struct xgbe_prv_data *, unsigned int);
812 void (*set_tstamp_time)(struct xgbe_prv_data *, unsigned int sec,
814 u64 (*get_tstamp_time)(struct xgbe_prv_data *);
815 u64 (*get_tx_tstamp)(struct xgbe_prv_data *);
818 void (*config_tc)(struct xgbe_prv_data *);
819 void (*config_dcb_tc)(struct xgbe_prv_data *);
820 void (*config_dcb_pfc)(struct xgbe_prv_data *);
823 int (*enable_rss)(struct xgbe_prv_data *);
824 int (*disable_rss)(struct xgbe_prv_data *);
825 int (*set_rss_hash_key)(struct xgbe_prv_data *, const u8 *);
826 int (*set_rss_lookup_table)(struct xgbe_prv_data *, const u32 *);
829 void (*disable_ecc_ded)(struct xgbe_prv_data *);
830 void (*disable_ecc_sec)(struct xgbe_prv_data *, enum xgbe_ecc_sec);
833 void (*enable_vxlan)(struct xgbe_prv_data *);
834 void (*disable_vxlan)(struct xgbe_prv_data *);
835 void (*set_vxlan_id)(struct xgbe_prv_data *);