X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=lib%2Feventdev%2Feventdev_pmd.h;h=9b2aec8371b17fab8be7f2fa5c6857c3c63a8dbd;hb=26f14535ed10a7422a10915b8c0aa74dadb9f367;hp=94d99f4903076c92cb8350afb373cb42de3c8bf6;hpb=7a335720575507f55b723b1e10bfea7daeba1386;p=dpdk.git diff --git a/lib/eventdev/eventdev_pmd.h b/lib/eventdev/eventdev_pmd.h index 94d99f4903..9b2aec8371 100644 --- a/lib/eventdev/eventdev_pmd.h +++ b/lib/eventdev/eventdev_pmd.h @@ -87,9 +87,6 @@ struct rte_eventdev_global { uint8_t nb_devs; /**< Number of devices found */ }; -extern struct rte_eventdev *rte_eventdevs; -/** The pool of rte_eventdev structures. */ - /** * Get the rte_eventdev structure device pointer for the named device. * @@ -99,6 +96,7 @@ extern struct rte_eventdev *rte_eventdevs; * @return * - The rte_eventdev structure pointer for the given device ID. */ +__rte_internal static inline struct rte_eventdev * rte_event_pmd_get_named_dev(const char *name) { @@ -127,6 +125,7 @@ rte_event_pmd_get_named_dev(const char *name) * @return * - If the device index is valid (1) or not (0). */ +__rte_internal static inline unsigned rte_event_pmd_is_valid_dev(uint8_t dev_id) { @@ -557,6 +556,32 @@ typedef int (*eventdev_eth_rx_adapter_queue_del_t) const struct rte_eth_dev *eth_dev, int32_t rx_queue_id); +/** + * Retrieve Rx adapter queue config information for the specified + * rx queue ID. + * + * @param dev + * Event device pointer + * + * @param eth_dev + * Ethernet device pointer + * + * @param rx_queue_id + * Ethernet device receive queue index. + * + * @param[out] queue_conf + * Pointer to rte_event_eth_rx_adapter_queue_conf structure + * + * @return + * - 0: Success + * - <0: Error code on failure. + */ +typedef int (*eventdev_eth_rx_adapter_queue_conf_get_t) + (const struct rte_eventdev *dev, + const struct rte_eth_dev *eth_dev, + uint16_t rx_queue_id, + struct rte_event_eth_rx_adapter_queue_conf *queue_conf); + /** * Start ethernet Rx adapter. This callback is invoked if * the caps returned from eventdev_eth_rx_adapter_caps_get(.., eth_port_id) @@ -663,32 +688,6 @@ typedef int (*eventdev_eth_rx_adapter_vector_limits_get_t)( const struct rte_eventdev *dev, const struct rte_eth_dev *eth_dev, struct rte_event_eth_rx_adapter_vector_limits *limits); -struct rte_event_eth_rx_adapter_event_vector_config; -/** - * Enable event vector on an given Rx queue of a ethernet devices belonging to - * the Rx adapter. - * - * @param dev - * Event device pointer - * - * @param eth_dev - * Ethernet device pointer - * - * @param rx_queue_id - * The Rx queue identifier - * - * @param config - * Pointer to the event vector configuration structure. - * - * @return - * - 0: Success. - * - <0: Error code returned by the driver function. - */ -typedef int (*eventdev_eth_rx_adapter_event_vector_config_t)( - const struct rte_eventdev *dev, const struct rte_eth_dev *eth_dev, - int32_t rx_queue_id, - const struct rte_event_eth_rx_adapter_event_vector_config *config); - typedef uint32_t rte_event_pmd_selftest_seqn_t; extern int rte_event_pmd_selftest_seqn_dynfield_offset; @@ -1056,7 +1055,7 @@ typedef int (*eventdev_eth_tx_adapter_stats_reset_t)(uint8_t id, const struct rte_eventdev *dev); /** Event device operations function pointer table */ -struct rte_eventdev_ops { +struct eventdev_ops { eventdev_info_get_t dev_infos_get; /**< Get device info. */ eventdev_configure_t dev_configure; /**< Configure device. */ eventdev_start_t dev_start; /**< Start device. */ @@ -1103,6 +1102,8 @@ struct rte_eventdev_ops { /**< Add Rx queues to ethernet Rx adapter */ eventdev_eth_rx_adapter_queue_del_t eth_rx_adapter_queue_del; /**< Delete Rx queues from ethernet Rx adapter */ + eventdev_eth_rx_adapter_queue_conf_get_t eth_rx_adapter_queue_conf_get; + /**< Get Rx adapter queue info */ eventdev_eth_rx_adapter_start_t eth_rx_adapter_start; /**< Start ethernet Rx adapter */ eventdev_eth_rx_adapter_stop_t eth_rx_adapter_stop; @@ -1114,9 +1115,6 @@ struct rte_eventdev_ops { eventdev_eth_rx_adapter_vector_limits_get_t eth_rx_adapter_vector_limits_get; /**< Get event vector limits for the Rx adapter */ - eventdev_eth_rx_adapter_event_vector_config_t - eth_rx_adapter_event_vector_config; - /**< Configure Rx adapter with event vector */ eventdev_timer_adapter_caps_get_t timer_adapter_caps_get; /**< Get timer adapter capabilities */ @@ -1174,6 +1172,7 @@ struct rte_eventdev_ops { * @return * - Slot in the rte_dev_devices array for a new device; */ +__rte_internal struct rte_eventdev * rte_event_pmd_allocate(const char *name, int socket_id); @@ -1185,6 +1184,7 @@ rte_event_pmd_allocate(const char *name, int socket_id); * @return * - 0 on success, negative on error */ +__rte_internal int rte_event_pmd_release(struct rte_eventdev *eventdev);