New upstream version 18.05
[deb_dpdk.git] / drivers / bus / fslmc / rte_fslmc.h
index 69d0fec..33552b4 100644 (file)
@@ -31,6 +31,7 @@ extern "C" {
 #include <rte_dev.h>
 #include <rte_bus.h>
 #include <rte_tailq.h>
+#include <rte_devargs.h>
 
 #include <fslmc_vfio.h>
 
@@ -49,6 +50,9 @@ struct rte_dpaa2_driver;
 TAILQ_HEAD(rte_fslmc_device_list, rte_dpaa2_device);
 TAILQ_HEAD(rte_fslmc_driver_list, rte_dpaa2_driver);
 
+#define RTE_DEV_TO_FSLMC_CONST(ptr) \
+       container_of(ptr, const struct rte_dpaa2_device, device)
+
 extern struct rte_fslmc_bus rte_fslmc_bus;
 
 enum rte_dpaa2_dev_type {
@@ -61,6 +65,7 @@ enum rte_dpaa2_dev_type {
        DPAA2_IO,       /**< DPIO type device */
        DPAA2_CI,       /**< DPCI type device */
        DPAA2_MPORTAL,  /**< DPMCP type device */
+       DPAA2_QDMA,     /**< DPDMAI type device */
        /* Unknown device placeholder */
        DPAA2_UNKNOWN,
        DPAA2_DEVTYPE_MAX,
@@ -91,6 +96,7 @@ struct rte_dpaa2_device {
        union {
                struct rte_eth_dev *eth_dev;        /**< ethernet device */
                struct rte_cryptodev *cryptodev;    /**< Crypto Device */
+               struct rte_rawdev *rawdev;          /**< Raw Device */
        };
        enum rte_dpaa2_dev_type dev_type;   /**< Device Type */
        uint16_t object_id;                 /**< DPAA2 Object ID */