/linux/drivers/net/ethernet/google/gve/ |
H A D | gve.h | 133 struct gve_priv; 220 struct gve_priv *gve; 621 struct gve_priv *priv; 725 struct gve_priv { struct 865 static inline bool gve_get_do_reset(struct gve_priv *priv) in gve_get_do_reset() argument 870 static inline void gve_set_do_reset(struct gve_priv *priv) in gve_set_do_reset() 875 static inline void gve_clear_do_reset(struct gve_priv *priv) in gve_clear_do_reset() 880 static inline bool gve_get_reset_in_progress(struct gve_priv *priv) in gve_get_reset_in_progress() 886 static inline void gve_set_reset_in_progress(struct gve_priv *priv) in gve_set_reset_in_progress() 891 static inline void gve_clear_reset_in_progress(struct gve_priv *priv) in gve_clear_reset_in_progress() [all …]
|
H A D | gve_dqo.h | 41 int gve_tx_alloc_rings_dqo(struct gve_priv *priv, 43 void gve_tx_free_rings_dqo(struct gve_priv *priv, 45 void gve_tx_start_ring_dqo(struct gve_priv *priv, int idx); 46 void gve_tx_stop_ring_dqo(struct gve_priv *priv, int idx); 47 int gve_rx_alloc_ring_dqo(struct gve_priv *priv, 51 void gve_rx_free_ring_dqo(struct gve_priv *priv, struct gve_rx_ring *rx, 53 int gve_rx_alloc_rings_dqo(struct gve_priv *priv, 55 void gve_rx_free_rings_dqo(struct gve_priv *priv, 57 void gve_rx_start_ring_dqo(struct gve_priv *priv, int idx); 58 void gve_rx_stop_ring_dqo(struct gve_priv *priv, int idx); [all …]
|
H A D | gve_adminq.h | 596 int gve_adminq_alloc(struct device *dev, struct gve_priv *priv); 597 void gve_adminq_free(struct device *dev, struct gve_priv *priv); 598 void gve_adminq_release(struct gve_priv *priv); 599 int gve_adminq_describe_device(struct gve_priv *priv); 600 int gve_adminq_configure_device_resources(struct gve_priv *priv, 605 int gve_adminq_deconfigure_device_resources(struct gve_priv *priv); 606 int gve_adminq_create_tx_queues(struct gve_priv *priv, u32 start_id, u32 num_queues); 607 int gve_adminq_destroy_tx_queues(struct gve_priv *priv, u32 start_id, u32 num_queues); 608 int gve_adminq_create_single_rx_queue(struct gve_priv *priv, u32 queue_index); 609 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 | 42 static int gve_verify_driver_compatibility(struct gve_priv *priv) in gve_verify_driver_compatibility() 89 struct gve_priv *priv = netdev_priv(dev); in gve_features_check() 99 struct gve_priv *priv = netdev_priv(dev); in gve_start_xmit() 109 struct gve_priv *priv = netdev_priv(dev); in gve_get_stats() 144 static int gve_alloc_flow_rule_caches(struct gve_priv *priv) in gve_alloc_flow_rule_caches() 177 static void gve_free_flow_rule_caches(struct gve_priv *priv) in gve_free_flow_rule_caches() 187 static int gve_alloc_counter_array(struct gve_priv *priv) in gve_alloc_counter_array() 200 static void gve_free_counter_array(struct gve_priv *priv) in gve_free_counter_array() 215 struct gve_priv *priv = container_of(work, struct gve_priv, in gve_stats_report_task() 223 static void gve_stats_report_schedule(struct gve_priv *priv) in gve_stats_report_schedule() [all …]
|
H A D | gve_adminq.c | 38 void gve_parse_device_option(struct gve_priv *priv, in gve_parse_device_option() 239 gve_process_device_options(struct gve_priv *priv, in gve_process_device_options() 279 int gve_adminq_alloc(struct device *dev, struct gve_priv *priv) in gve_adminq_alloc() 335 void gve_adminq_release(struct gve_priv *priv) in gve_adminq_release() 367 void gve_adminq_free(struct device *dev, struct gve_priv *priv) in gve_adminq_free() 377 static void gve_adminq_kick_cmd(struct gve_priv *priv, u32 prod_cnt) in gve_adminq_kick_cmd() 382 static bool gve_adminq_wait_for_cmd(struct gve_priv *priv, u32 prod_cnt) in gve_adminq_wait_for_cmd() 396 static int gve_adminq_parse_err(struct gve_priv *priv, u32 status) in gve_adminq_parse_err() 440 static int gve_adminq_kick_and_wait(struct gve_priv *priv) in gve_adminq_kick_and_wait() 473 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() 165 struct gve_priv *priv; in gve_get_ethtool_stats() 464 struct gve_priv *priv = netdev_priv(netdev); in gve_get_channels() 479 struct gve_priv *priv = netdev_priv(netdev); in gve_set_channels() 518 struct gve_priv *priv = netdev_priv(netdev); in gve_get_ringparam() 533 static int gve_adjust_ring_sizes(struct gve_priv *priv, in gve_adjust_ring_sizes() [all …]
|
H A D | gve_tx.c | 16 static inline void gve_tx_put_doorbell(struct gve_priv *priv, in gve_tx_put_doorbell() 23 void gve_xdp_tx_flush(struct gve_priv *priv, u32 xdp_qid) in gve_xdp_tx_flush() 39 static int gve_tx_fifo_init(struct gve_priv *priv, struct gve_tx_fifo *fifo) in gve_tx_fifo_init() 55 static void gve_tx_fifo_release(struct gve_priv *priv, struct gve_tx_fifo *fifo) in gve_tx_fifo_release() 157 static int gve_clean_xdp_done(struct gve_priv *priv, struct gve_tx_ring *tx, in gve_clean_xdp_done() 197 static int gve_clean_tx_done(struct gve_priv *priv, struct gve_tx_ring *tx, 200 void gve_tx_stop_ring_gqi(struct gve_priv *priv, int idx) in gve_tx_stop_ring_gqi() 217 static void gve_tx_free_ring_gqi(struct gve_priv *priv, struct gve_tx_ring *tx, in gve_tx_free_ring_gqi() 250 void gve_tx_start_ring_gqi(struct gve_priv *priv, int idx) in gve_tx_start_ring_gqi() 261 static int gve_tx_alloc_ring_gqi(struct gve_priv *priv, in gve_tx_alloc_ring_gqi() [all …]
|
H A D | gve_rx.c | 26 static void gve_rx_unfill_pages(struct gve_priv *priv, in gve_rx_unfill_pages() 71 static void gve_rx_reset_ring_gqi(struct gve_priv *priv, int idx) in gve_rx_reset_ring_gqi() 90 void gve_rx_stop_ring_gqi(struct gve_priv *priv, int idx) in gve_rx_stop_ring_gqi() 102 void gve_rx_free_ring_gqi(struct gve_priv *priv, struct gve_rx_ring *rx, in gve_rx_free_ring_gqi() 156 static int gve_rx_alloc_buffer(struct gve_priv *priv, struct device *dev, in gve_rx_alloc_buffer() 181 struct gve_priv *priv = rx->gve; in gve_rx_prefill_pages() 259 void gve_rx_start_ring_gqi(struct gve_priv *priv, int idx) in gve_rx_start_ring_gqi() 267 int gve_rx_alloc_ring_gqi(struct gve_priv *priv, in gve_rx_alloc_ring_gqi() 381 int gve_rx_alloc_rings_gqi(struct gve_priv *priv, in gve_rx_alloc_rings_gqi() 413 void gve_rx_free_rings_gqi(struct gve_priv *priv, in gve_rx_free_rings_gqi() [all …]
|
H A D | gve_tx_dqo.c | 191 void gve_tx_stop_ring_dqo(struct gve_priv *priv, int idx) in gve_tx_stop_ring_dqo() 206 static void gve_tx_free_ring_dqo(struct gve_priv *priv, struct gve_tx_ring *tx, in gve_tx_free_ring_dqo() 272 void gve_tx_start_ring_dqo(struct gve_priv *priv, int idx) in gve_tx_start_ring_dqo() 283 static int gve_tx_alloc_ring_dqo(struct gve_priv *priv, in gve_tx_alloc_ring_dqo() 378 int gve_tx_alloc_rings_dqo(struct gve_priv *priv, in gve_tx_alloc_rings_dqo() 423 void gve_tx_free_rings_dqo(struct gve_priv *priv, in gve_tx_free_rings_dqo() 925 static int gve_try_tx_skb(struct gve_priv *priv, struct gve_tx_ring *tx, in gve_try_tx_skb() 979 struct gve_priv *priv = netdev_priv(dev); in gve_tx_dqo() 1060 static void gve_handle_packet_completion(struct gve_priv *priv, in gve_handle_packet_completion() 1124 static void gve_handle_miss_completion(struct gve_priv *priv, in gve_handle_miss_completion() [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()
|