net/ice/base: change address parameter to 16-bit
[dpdk.git] / drivers / net / dpaa2 / mc / fsl_dpdmux_cmd.h
index a60b2eb..2ab4d75 100644 (file)
@@ -1,7 +1,7 @@
 /* SPDX-License-Identifier: (BSD-3-Clause OR GPL-2.0)
  *
  * Copyright 2013-2016 Freescale Semiconductor Inc.
- * Copyright 2018-2019 NXP
+ * Copyright 2018-2021 NXP
  *
  */
 #ifndef _FSL_DPDMUX_CMD_H
@@ -9,30 +9,35 @@
 
 /* DPDMUX Version */
 #define DPDMUX_VER_MAJOR               6
-#define DPDMUX_VER_MINOR               3
+#define DPDMUX_VER_MINOR               9
 
 #define DPDMUX_CMD_BASE_VERSION                1
 #define DPDMUX_CMD_VERSION_2           2
+#define DPDMUX_CMD_VERSION_3           3
+#define DPDMUX_CMD_VERSION_4           4
 #define DPDMUX_CMD_ID_OFFSET           4
 
 #define DPDMUX_CMD(id) (((id) << DPDMUX_CMD_ID_OFFSET) |\
                                DPDMUX_CMD_BASE_VERSION)
 #define DPDMUX_CMD_V2(id) (((id) << DPDMUX_CMD_ID_OFFSET) | \
                                DPDMUX_CMD_VERSION_2)
+#define DPDMUX_CMD_V3(id)      (((id) << DPDMUX_CMD_ID_OFFSET) |\
+                               DPDMUX_CMD_VERSION_3)
+#define DPDMUX_CMD_V4(id)      (((id) << DPDMUX_CMD_ID_OFFSET) |\
+                               DPDMUX_CMD_VERSION_4)
 
 /* Command IDs */
 #define DPDMUX_CMDID_CLOSE                     DPDMUX_CMD(0x800)
 #define DPDMUX_CMDID_OPEN                      DPDMUX_CMD(0x806)
-#define DPDMUX_CMDID_CREATE                    DPDMUX_CMD(0x906)
+#define DPDMUX_CMDID_CREATE                    DPDMUX_CMD_V4(0x906)
 #define DPDMUX_CMDID_DESTROY                   DPDMUX_CMD(0x986)
 #define DPDMUX_CMDID_GET_API_VERSION           DPDMUX_CMD(0xa06)
 
 #define DPDMUX_CMDID_ENABLE                    DPDMUX_CMD(0x002)
 #define DPDMUX_CMDID_DISABLE                   DPDMUX_CMD(0x003)
-#define DPDMUX_CMDID_GET_ATTR                  DPDMUX_CMD(0x004)
+#define DPDMUX_CMDID_GET_ATTR                  DPDMUX_CMD_V2(0x004)
 #define DPDMUX_CMDID_RESET                     DPDMUX_CMD(0x005)
 #define DPDMUX_CMDID_IS_ENABLED                        DPDMUX_CMD(0x006)
-
 #define DPDMUX_CMDID_SET_MAX_FRAME_LENGTH      DPDMUX_CMD(0x0a1)
 
 #define DPDMUX_CMDID_UL_RESET_COUNTERS         DPDMUX_CMD(0x0a3)
 #define DPDMUX_CMDID_IF_GET_LINK_STATE         DPDMUX_CMD_V2(0x0b4)
 
 #define DPDMUX_CMDID_SET_CUSTOM_KEY            DPDMUX_CMD(0x0b5)
-#define DPDMUX_CMDID_ADD_CUSTOM_CLS_ENTRY      DPDMUX_CMD(0x0b6)
+#define DPDMUX_CMDID_ADD_CUSTOM_CLS_ENTRY      DPDMUX_CMD_V2(0x0b6)
 #define DPDMUX_CMDID_REMOVE_CUSTOM_CLS_ENTRY   DPDMUX_CMD(0x0b7)
 
 #define DPDMUX_CMDID_IF_SET_DEFAULT            DPDMUX_CMD(0x0b8)
 #define DPDMUX_CMDID_IF_GET_DEFAULT            DPDMUX_CMD(0x0b9)
 
+#define DPDMUX_CMDID_SET_RESETABLE             DPDMUX_CMD(0x0ba)
+#define DPDMUX_CMDID_GET_RESETABLE             DPDMUX_CMD(0x0bb)
+#define DPDMUX_CMDID_SET_ERRORS_BEHAVIOR       DPDMUX_CMD(0x0bf)
+
 #define DPDMUX_MASK(field)        \
        GENMASK(DPDMUX_##field##_SHIFT + DPDMUX_##field##_SIZE - 1, \
                DPDMUX_##field##_SHIFT)
@@ -72,12 +81,13 @@ struct dpdmux_cmd_create {
        uint8_t method;
        uint8_t manip;
        uint16_t num_ifs;
-       uint32_t pad;
+       uint16_t default_if;
+       uint16_t pad;
 
        uint16_t adv_max_dmat_entries;
        uint16_t adv_max_mc_groups;
        uint16_t adv_max_vlan_ids;
-       uint16_t pad1;
+       uint16_t mem_size;
 
        uint64_t options;
 };
@@ -100,7 +110,7 @@ struct dpdmux_rsp_get_attr {
        uint8_t manip;
        uint16_t num_ifs;
        uint16_t mem_size;
-       uint16_t pad;
+       uint16_t default_if;
 
        uint64_t pad1;
 
@@ -204,7 +214,7 @@ struct dpdmux_set_custom_key {
 struct dpdmux_cmd_add_custom_cls_entry {
        uint8_t pad[3];
        uint8_t key_size;
-       uint16_t pad1;
+       uint16_t entry_index;
        uint16_t dest_if;
        uint64_t key_iova;
        uint64_t mask_iova;
@@ -217,5 +227,26 @@ struct dpdmux_cmd_remove_custom_cls_entry {
        uint64_t key_iova;
        uint64_t mask_iova;
 };
+
+#define DPDMUX_SKIP_RESET_FLAGS_SHIFT    0
+#define DPDMUX_SKIP_RESET_FLAGS_SIZE     3
+
+struct dpdmux_cmd_set_skip_reset_flags {
+       uint8_t skip_reset_flags;
+};
+
+struct dpdmux_rsp_get_skip_reset_flags {
+       uint8_t skip_reset_flags;
+};
+
+#define DPDMUX_ERROR_ACTION_SHIFT              0
+#define DPDMUX_ERROR_ACTION_SIZE               4
+
+struct dpdmux_cmd_set_errors_behavior {
+       uint32_t errors;
+       uint16_t flags;
+       uint16_t if_id;
+};
+
 #pragma pack(pop)
 #endif /* _FSL_DPDMUX_CMD_H */