| /linux/drivers/net/ethernet/google/gve/ |
| H A D | gve.h | 146 struct gve_priv; 211 struct gve_priv *gve; 243 struct gve_priv *gve; 673 struct gve_priv *priv; 797 struct gve_priv *priv; 800 struct gve_priv { struct 952 static inline bool gve_get_do_reset(struct gve_priv *priv) in gve_get_do_reset() argument 957 static inline void gve_set_do_reset(struct gve_priv *priv) in gve_set_do_reset() 962 static inline void gve_clear_do_reset(struct gve_priv *priv) in gve_clear_do_reset() 967 static inline bool gve_get_reset_in_progress(struct gve_priv *priv) in gve_get_reset_in_progress() [all …]
|
| H A D | gve_adminq.h | 622 int gve_adminq_alloc(struct device *dev, struct gve_priv *priv); 623 void gve_adminq_free(struct gve_priv *priv); 624 void gve_adminq_release(struct gve_priv *priv); 625 int gve_adminq_describe_device(struct gve_priv *priv); 626 int gve_adminq_configure_device_resources(struct gve_priv *priv, 631 int gve_adminq_deconfigure_device_resources(struct gve_priv *priv); 632 int gve_adminq_create_tx_queues(struct gve_priv *priv, u32 start_id, u32 num_queues); 633 int gve_adminq_destroy_tx_queues(struct gve_priv *priv, u32 start_id, u32 num_queues); 634 int gve_adminq_create_single_rx_queue(struct gve_priv *priv, u32 queue_index); 635 int gve_adminq_create_rx_queues(struct gve_priv *priv, u32 num_queues); [all …]
|
| H A D | gve_utils.h | 14 bool gve_tx_was_added_to_block(struct gve_priv *priv, int queue_idx); 15 void gve_tx_remove_from_block(struct gve_priv *priv, int queue_idx); 16 void gve_tx_add_to_block(struct gve_priv *priv, int queue_idx); 18 bool gve_rx_was_added_to_block(struct gve_priv *priv, int queue_idx); 19 void gve_rx_remove_from_block(struct gve_priv *priv, int queue_idx); 20 void gve_rx_add_to_block(struct gve_priv *priv, int queue_idx); 31 void gve_add_napi(struct gve_priv *priv, int ntfy_idx, 33 void gve_remove_napi(struct gve_priv *priv, int ntfy_idx);
|
| H A D | gve_main.c | 44 static int gve_verify_driver_compatibility(struct gve_priv *priv) in gve_verify_driver_compatibility() 91 struct gve_priv *priv = netdev_priv(dev); in gve_features_check() 101 struct gve_priv *priv = netdev_priv(dev); in gve_start_xmit() 111 struct gve_priv *priv = netdev_priv(dev); in gve_get_stats() 146 static int gve_alloc_flow_rule_caches(struct gve_priv *priv) in gve_alloc_flow_rule_caches() 179 static void gve_free_flow_rule_caches(struct gve_priv *priv) in gve_free_flow_rule_caches() 189 static int gve_alloc_rss_config_cache(struct gve_priv *priv) in gve_alloc_rss_config_cache() 216 static void gve_free_rss_config_cache(struct gve_priv *priv) in gve_free_rss_config_cache() 226 static int gve_alloc_counter_array(struct gve_priv *priv) in gve_alloc_counter_array() 239 static void gve_free_counter_array(struct gve_priv *priv) in gve_free_counter_array() [all …]
|
| H A D | gve_utils.c | 11 bool gve_tx_was_added_to_block(struct gve_priv *priv, int queue_idx) in gve_tx_was_added_to_block() 19 void gve_tx_remove_from_block(struct gve_priv *priv, int queue_idx) in gve_tx_remove_from_block() 27 void gve_tx_add_to_block(struct gve_priv *priv, int queue_idx) in gve_tx_add_to_block() 41 bool gve_rx_was_added_to_block(struct gve_priv *priv, int queue_idx) in gve_rx_was_added_to_block() 49 void gve_rx_remove_from_block(struct gve_priv *priv, int queue_idx) in gve_rx_remove_from_block() 57 void gve_rx_add_to_block(struct gve_priv *priv, int queue_idx) in gve_rx_add_to_block() 108 void gve_add_napi(struct gve_priv *priv, int ntfy_idx, in gve_add_napi() 118 void gve_remove_napi(struct gve_priv *priv, int ntfy_idx) in gve_remove_napi()
|
| H A D | gve_adminq.c | 38 void gve_parse_device_option(struct gve_priv *priv, in gve_parse_device_option() 257 gve_process_device_options(struct gve_priv *priv, in gve_process_device_options() 299 int gve_adminq_alloc(struct device *dev, struct gve_priv *priv) in gve_adminq_alloc() 356 void gve_adminq_release(struct gve_priv *priv) in gve_adminq_release() 388 void gve_adminq_free(struct gve_priv *priv) in gve_adminq_free() 398 static void gve_adminq_kick_cmd(struct gve_priv *priv, u32 prod_cnt) in gve_adminq_kick_cmd() 403 static bool gve_adminq_wait_for_cmd(struct gve_priv *priv, u32 prod_cnt) in gve_adminq_wait_for_cmd() 417 static int gve_adminq_parse_err(struct gve_priv *priv, u32 status) in gve_adminq_parse_err() 461 static int gve_adminq_kick_and_wait(struct gve_priv *priv) in gve_adminq_kick_and_wait() 493 static int gve_adminq_issue_cmd(struct gve_priv *priv, in gve_adminq_issue_cmd() [all …]
|
| H A D | gve_ethtool.c | 16 struct gve_priv *priv = netdev_priv(netdev); in gve_get_drvinfo() 25 struct gve_priv *priv = netdev_priv(netdev); in gve_set_msglevel() 32 struct gve_priv *priv = netdev_priv(netdev); in gve_get_msglevel() 94 struct gve_priv *priv = netdev_priv(netdev); in gve_get_strings() 132 struct gve_priv *priv = netdev_priv(netdev); in gve_get_sset_count() 167 struct gve_priv *priv; in gve_get_ethtool_stats() 488 struct gve_priv *priv = netdev_priv(netdev); in gve_get_channels() 503 struct gve_priv *priv = netdev_priv(netdev); in gve_set_channels() 548 struct gve_priv *priv = netdev_priv(netdev); in gve_get_ringparam() 565 static int gve_validate_req_ring_size(struct gve_priv *priv, u16 new_tx_desc_cnt, in gve_validate_req_ring_size() [all …]
|
| H A D | gve_ptp.c | 14 int gve_clock_nic_ts_read(struct gve_priv *priv) in gve_clock_nic_ts_read() 50 struct gve_priv *priv = ptp->priv; in gve_ptp_do_aux_work() 74 static int gve_ptp_init(struct gve_priv *priv) in gve_ptp_init() 102 static void gve_ptp_release(struct gve_priv *priv) in gve_ptp_release() 116 int gve_init_clock(struct gve_priv *priv) in gve_init_clock() 154 void gve_teardown_clock(struct gve_priv *priv) in gve_teardown_clock()
|
| H A D | gve_rx_dqo.c | 24 struct gve_priv *priv = rx->gve; in gve_rx_starvation_timer() 31 static void gve_rx_free_hdr_bufs(struct gve_priv *priv, struct gve_rx_ring *rx) in gve_rx_free_hdr_bufs() 80 static void gve_rx_reset_ring_dqo(struct gve_priv *priv, int idx) in gve_rx_reset_ring_dqo() 123 void gve_rx_stop_ring_dqo(struct gve_priv *priv, int idx) in gve_rx_stop_ring_dqo() 139 void gve_rx_free_ring_dqo(struct gve_priv *priv, struct gve_rx_ring *rx, in gve_rx_free_ring_dqo() 206 static int gve_rx_alloc_hdr_bufs(struct gve_priv *priv, struct gve_rx_ring *rx, in gve_rx_alloc_hdr_bufs() 219 void gve_rx_start_ring_dqo(struct gve_priv *priv, int idx) in gve_rx_start_ring_dqo() 229 int gve_rx_alloc_ring_dqo(struct gve_priv *priv, in gve_rx_alloc_ring_dqo() 321 void gve_rx_write_doorbell_dqo(const struct gve_priv *priv, int queue_idx) in gve_rx_write_doorbell_dqo() 329 int gve_rx_alloc_rings_dqo(struct gve_priv *priv, in gve_rx_alloc_rings_dqo() [all …]
|
| H A D | gve_tx_dqo.c | 115 void gve_xdp_tx_flush_dqo(struct gve_priv *priv, u32 xdp_qid) in gve_xdp_tx_flush_dqo() 211 void gve_tx_stop_ring_dqo(struct gve_priv *priv, int idx) in gve_tx_stop_ring_dqo() 227 static void gve_tx_free_ring_dqo(struct gve_priv *priv, struct gve_tx_ring *tx, in gve_tx_free_ring_dqo() 295 void gve_tx_start_ring_dqo(struct gve_priv *priv, int idx) in gve_tx_start_ring_dqo() 307 static int gve_tx_alloc_ring_dqo(struct gve_priv *priv, in gve_tx_alloc_ring_dqo() 411 int gve_tx_alloc_rings_dqo(struct gve_priv *priv, in gve_tx_alloc_rings_dqo() 450 void gve_tx_free_rings_dqo(struct gve_priv *priv, in gve_tx_free_rings_dqo() 980 static int gve_try_tx_skb(struct gve_priv *priv, struct gve_tx_ring *tx, in gve_try_tx_skb() 1064 struct gve_priv *priv = netdev_priv(dev); in gve_tx_dqo() 1084 static bool gve_xsk_tx_dqo(struct gve_priv *priv, struct gve_tx_ring *tx, in gve_xsk_tx_dqo() [all …]
|
| H A D | gve_flow_rule.c | 106 static int gve_generate_flow_rule(struct gve_priv *priv, struct ethtool_rx_flow_spec *fsp, in gve_generate_flow_rule() 196 int gve_get_flow_rule_entry(struct gve_priv *priv, struct ethtool_rxnfc *cmd) in gve_get_flow_rule_entry() 233 int gve_get_flow_rule_ids(struct gve_priv *priv, struct ethtool_rxnfc *cmd, u32 *rule_locs) in gve_get_flow_rule_ids() 263 int gve_add_flow_rule(struct gve_priv *priv, struct ethtool_rxnfc *cmd) in gve_add_flow_rule() 290 int gve_del_flow_rule(struct gve_priv *priv, struct ethtool_rxnfc *cmd) in gve_del_flow_rule()
|