NVIDIA DOCA SDK Data Center on a Chip Framework Documentation
doca_eth_txq_gpu_data_path.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2023 NVIDIA CORPORATION & AFFILIATES, ALL RIGHTS RESERVED.
3  *
4  * This software product is a proprietary product of NVIDIA CORPORATION &
5  * AFFILIATES (the "Company") and all right, title, and interest in and to the
6  * software product, including all associated intellectual property rights, are
7  * and shall remain exclusively with the Company.
8  *
9  * This software product is governed by the End User License Agreement
10  * provided with the software product.
11  *
12  */
13 
23 #ifndef DOCA_ETH_TXQ_GPU_DATA_PATH_H_
24 #define DOCA_ETH_TXQ_GPU_DATA_PATH_H_
25 
26 #include <doca_compat.h>
27 #include <doca_error.h>
28 #include <doca_types.h>
29 
30 #ifdef __cplusplus
31 extern "C" {
32 #endif
33 
37 struct doca_eth_txq;
38 
43 struct doca_eth_txq_gpu_event_error_send_packet;
44 struct doca_eth_txq_gpu_event_notify_send_packet;
56  struct doca_eth_txq_gpu_event_error_send_packet *event_error,
57  union doca_data event_user_data);
58 
69  struct doca_eth_txq_gpu_event_notify_send_packet *event_notify,
70  union doca_data event_user_data);
71 
93  struct doca_eth_txq *eth_txq,
94  doca_eth_txq_gpu_event_error_send_packet_cb_t event_error_send_packet_cb,
95  union doca_data event_user_data);
96 
118  struct doca_eth_txq *eth_txq,
119  doca_eth_txq_gpu_event_notify_send_packet_cb_t event_notify_send_packet_cb,
120  union doca_data event_user_data);
121 
141  const struct doca_eth_txq_gpu_event_error_send_packet *event_error,
142  uint16_t *packet_index);
143 
163  const struct doca_eth_txq_gpu_event_notify_send_packet *event_notify,
164  uint16_t *packet_index);
165 
185  const struct doca_eth_txq_gpu_event_notify_send_packet *event_notify,
186  uint64_t *packet_timestamp);
187 
206 
207 #ifdef __cplusplus
208 } /* extern "C" */
209 #endif
210 
211 #endif /* DOCA_ETH_TXQ_GPU_DATA_PATH_H_ */
212 
#define DOCA_EXPERIMENTAL
To set a Symbol (or specifically a function) as experimental.
Definition: doca_compat.h:103
enum doca_error doca_error_t
DOCA API return codes.
DOCA_EXPERIMENTAL doca_error_t doca_eth_txq_gpu_event_notify_send_packet_register(struct doca_eth_txq *eth_txq, doca_eth_txq_gpu_event_notify_send_packet_cb_t event_notify_send_packet_cb, union doca_data event_user_data)
This method registers a doca_eth_txq_gpu_event_notify_send_packet event. can only be called before ca...
DOCA_EXPERIMENTAL doca_error_t doca_eth_txq_gpu_event_error_send_packet_register(struct doca_eth_txq *eth_txq, doca_eth_txq_gpu_event_error_send_packet_cb_t event_error_send_packet_cb, union doca_data event_user_data)
This method registers a doca_eth_txq_gpu_event_error_send_packet event. can only be called before cal...
void(* doca_eth_txq_gpu_event_error_send_packet_cb_t)(struct doca_eth_txq_gpu_event_error_send_packet *event_error, union doca_data event_user_data)
Function to be executed on send packet error event occurrence.
DOCA_EXPERIMENTAL doca_error_t doca_eth_txq_gpu_event_notify_send_packet_get_position(const struct doca_eth_txq_gpu_event_notify_send_packet *event_notify, uint16_t *packet_index)
This method returns the index in the send queue of the packet which reported the notify info.
DOCA_EXPERIMENTAL doca_error_t doca_eth_txq_gpu_event_notify_send_packet_get_timestamp(const struct doca_eth_txq_gpu_event_notify_send_packet *event_notify, uint64_t *packet_timestamp)
This method returns the timestamp at which the packet in the send queue was actually sent (fired over...
void(* doca_eth_txq_gpu_event_notify_send_packet_cb_t)(struct doca_eth_txq_gpu_event_notify_send_packet *event_notify, union doca_data event_user_data)
Function to be executed on send packet notify event occurrence.
DOCA_EXPERIMENTAL doca_error_t doca_eth_txq_gpu_event_error_send_packet_get_position(const struct doca_eth_txq_gpu_event_error_send_packet *event_error, uint16_t *packet_index)
This method returns the index in the send queue of the packet which caused the error.
DOCA_EXPERIMENTAL doca_error_t doca_eth_txq_gpu_set_completion_on_gpu(struct doca_eth_txq *eth_txq)
By default, the Eth Txq completion can be checked on th CPU. With this method set the Eth Txq complet...
Convenience type for representing opaque data.
Definition: doca_types.h:56