1 /* SPDX-License-Identifier: BSD-3-Clause 2 * Copyright (c) 2022 Red Hat, Inc. 3 */ 4 5 #ifndef DEV_DRIVER_H 6 #define DEV_DRIVER_H 7 8 #include <rte_common.h> 9 #include <rte_dev.h> 10 11 /** 12 * A structure describing a device driver. 13 */ 14 struct rte_driver { 15 RTE_TAILQ_ENTRY(rte_driver) next; /**< Next in list. */ 16 const char *name; /**< Driver name. */ 17 const char *alias; /**< Driver alias. */ 18 }; 19 20 /** 21 * A structure describing a generic device. 22 */ 23 struct rte_device { 24 RTE_TAILQ_ENTRY(rte_device) next; /**< Next device */ 25 const char *name; /**< Device name */ 26 const char *bus_info; /**< Device bus specific information */ 27 const struct rte_driver *driver; /**< Driver assigned after probing */ 28 const struct rte_bus *bus; /**< Bus handle assigned on scan */ 29 int numa_node; /**< NUMA node connection */ 30 struct rte_devargs *devargs; /**< Arguments for latest probing */ 31 }; 32 33 #endif /* DEV_DRIVER_H */ 34