We can just move rte_driver definition before rte_device (which depends on rte_driver).
Signed-off-by: Thomas Monjalon <tho...@monjalon.net> --- lib/librte_eal/common/include/rte_dev.h | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/lib/librte_eal/common/include/rte_dev.h b/lib/librte_eal/common/include/rte_dev.h index b63d0540d..759059889 100644 --- a/lib/librte_eal/common/include/rte_dev.h +++ b/lib/librte_eal/common/include/rte_dev.h @@ -123,8 +123,14 @@ struct rte_mem_resource { void *addr; /**< Virtual address, NULL when not mapped. */ }; -/* Forward declaration */ -struct rte_driver; +/** + * A structure describing a device driver. + */ +struct rte_driver { + TAILQ_ENTRY(rte_driver) next; /**< Next in list. */ + const char *name; /**< Driver name. */ + const char *alias; /**< Driver alias. */ +}; /** * A structure describing a generic device. @@ -138,15 +144,6 @@ struct rte_device { }; /** - * A structure describing a device driver. - */ -struct rte_driver { - TAILQ_ENTRY(rte_driver) next; /**< Next in list. */ - const char *name; /**< Driver name. */ - const char *alias; /**< Driver alias. */ -}; - -/** * Initialize a driver specified by name. * * @param name -- 2.12.2