New upstream version 18.11-rc1
[deb_dpdk.git] / drivers / bus / fslmc / mc / fsl_dpdmai_cmd.h
index 618e19e..7e122de 100644 (file)
@@ -7,30 +7,32 @@
 
 /* DPDMAI Version */
 #define DPDMAI_VER_MAJOR               3
-#define DPDMAI_VER_MINOR               2
+#define DPDMAI_VER_MINOR               3
 
 /* Command versioning */
 #define DPDMAI_CMD_BASE_VERSION                1
+#define DPDMAI_CMD_VERSION_2           2
 #define DPDMAI_CMD_ID_OFFSET           4
 
 #define DPDMAI_CMD(id) ((id << DPDMAI_CMD_ID_OFFSET) | DPDMAI_CMD_BASE_VERSION)
+#define DPDMAI_CMD_V2(id) ((id << DPDMAI_CMD_ID_OFFSET) | DPDMAI_CMD_VERSION_2)
 
 /* Command IDs */
 #define DPDMAI_CMDID_CLOSE             DPDMAI_CMD(0x800)
 #define DPDMAI_CMDID_OPEN              DPDMAI_CMD(0x80E)
-#define DPDMAI_CMDID_CREATE            DPDMAI_CMD(0x90E)
+#define DPDMAI_CMDID_CREATE            DPDMAI_CMD_V2(0x90E)
 #define DPDMAI_CMDID_DESTROY           DPDMAI_CMD(0x98E)
 #define DPDMAI_CMDID_GET_API_VERSION   DPDMAI_CMD(0xa0E)
 
 #define DPDMAI_CMDID_ENABLE            DPDMAI_CMD(0x002)
 #define DPDMAI_CMDID_DISABLE           DPDMAI_CMD(0x003)
-#define DPDMAI_CMDID_GET_ATTR          DPDMAI_CMD(0x004)
+#define DPDMAI_CMDID_GET_ATTR          DPDMAI_CMD_V2(0x004)
 #define DPDMAI_CMDID_RESET             DPDMAI_CMD(0x005)
 #define DPDMAI_CMDID_IS_ENABLED                DPDMAI_CMD(0x006)
 
-#define DPDMAI_CMDID_SET_RX_QUEUE      DPDMAI_CMD(0x1A0)
-#define DPDMAI_CMDID_GET_RX_QUEUE      DPDMAI_CMD(0x1A1)
-#define DPDMAI_CMDID_GET_TX_QUEUE      DPDMAI_CMD(0x1A2)
+#define DPDMAI_CMDID_SET_RX_QUEUE      DPDMAI_CMD_V2(0x1A0)
+#define DPDMAI_CMDID_GET_RX_QUEUE      DPDMAI_CMD_V2(0x1A1)
+#define DPDMAI_CMDID_GET_TX_QUEUE      DPDMAI_CMD_V2(0x1A2)
 
 /* Macros for accessing command fields smaller than 1byte */
 #define DPDMAI_MASK(field)        \
@@ -47,7 +49,7 @@ struct dpdmai_cmd_open {
 };
 
 struct dpdmai_cmd_create {
-       uint8_t pad;
+       uint8_t num_queues;
        uint8_t priorities[2];
 };
 
@@ -66,6 +68,7 @@ struct dpdmai_rsp_is_enabled {
 struct dpdmai_rsp_get_attr {
        uint32_t id;
        uint8_t num_of_priorities;
+       uint8_t num_of_queues;
 };
 
 #define DPDMAI_DEST_TYPE_SHIFT 0
@@ -77,7 +80,7 @@ struct dpdmai_cmd_set_rx_queue {
        uint8_t priority;
        /* from LSB: dest_type:4 */
        uint8_t dest_type;
-       uint8_t pad;
+       uint8_t queue_idx;
        uint64_t user_ctx;
        uint32_t options;
 };
@@ -85,6 +88,7 @@ struct dpdmai_cmd_set_rx_queue {
 struct dpdmai_cmd_get_queue {
        uint8_t pad[5];
        uint8_t priority;
+       uint8_t queue_idx;
 };
 
 struct dpdmai_rsp_get_rx_queue {