net/virtio: allocate fake mbuf in Rx queue
[dpdk.git] / drivers / net / ice / base / ice_adminq_cmd.h
index 09d0f17..4b78da9 100644 (file)
@@ -111,6 +111,7 @@ struct ice_aqc_list_caps_elem {
 #define ICE_AQC_CAPS_MAX_MTU                           0x0047
 #define ICE_AQC_CAPS_IWARP                             0x0051
 #define ICE_AQC_CAPS_PCIE_RESET_AVOIDANCE              0x0076
+#define ICE_AQC_CAPS_POST_UPDATE_RESET_RESTRICT                0x0077
 #define ICE_AQC_CAPS_NVM_MGMT                          0x0080
 
        u8 major_ver;
@@ -358,6 +359,40 @@ struct ice_aqc_get_allocd_res_desc {
        __le32 addr_low;
 };
 
+/* Request buffer for Set VLAN Mode AQ command (indirect 0x020C) */
+struct ice_aqc_set_vlan_mode {
+       u8 reserved;
+       u8 l2tag_prio_tagging;
+#define ICE_AQ_VLAN_PRIO_TAG_S                 0
+#define ICE_AQ_VLAN_PRIO_TAG_M                 (0x7 << ICE_AQ_VLAN_PRIO_TAG_S)
+#define ICE_AQ_VLAN_PRIO_TAG_NOT_SUPPORTED     0x0
+#define ICE_AQ_VLAN_PRIO_TAG_STAG              0x1
+#define ICE_AQ_VLAN_PRIO_TAG_OUTER_CTAG                0x2
+#define ICE_AQ_VLAN_PRIO_TAG_OUTER_VLAN                0x3
+#define ICE_AQ_VLAN_PRIO_TAG_INNER_CTAG                0x4
+#define ICE_AQ_VLAN_PRIO_TAG_MAX               0x4
+#define ICE_AQ_VLAN_PRIO_TAG_ERROR             0x7
+       u8 l2tag_reserved[64];
+       u8 rdma_packet;
+#define ICE_AQ_VLAN_RDMA_TAG_S                 0
+#define ICE_AQ_VLAN_RDMA_TAG_M                 (0x3F << ICE_AQ_VLAN_RDMA_TAG_S)
+#define ICE_AQ_SVM_VLAN_RDMA_PKT_FLAG_SETTING  0x10
+#define ICE_AQ_DVM_VLAN_RDMA_PKT_FLAG_SETTING  0x1A
+       u8 rdma_reserved[2];
+       u8 mng_vlan_prot_id;
+#define ICE_AQ_VLAN_MNG_PROTOCOL_ID_OUTER      0x10
+#define ICE_AQ_VLAN_MNG_PROTOCOL_ID_INNER      0x11
+       u8 prot_id_reserved[30];
+};
+
+/* Response buffer for Get VLAN Mode AQ command (indirect 0x020D) */
+struct ice_aqc_get_vlan_mode {
+       u8 vlan_mode;
+#define ICE_AQ_VLAN_MODE_DVM_ENA       BIT(0)
+       u8 l2tag_prio_tagging;
+       u8 reserved[98];
+};
+
 /* Add VSI (indirect 0x0210)
  * Update VSI (indirect 0x0211)
  * Get VSI (indirect 0x0212)
@@ -500,7 +535,7 @@ struct ice_aqc_vsi_props {
 #define ICE_AQ_VSI_OUTER_TAG_VLAN_8100         0x2
 #define ICE_AQ_VSI_OUTER_TAG_VLAN_9100         0x3
 #define ICE_AQ_VSI_OUTER_VLAN_PORT_BASED_INSERT                BIT(4)
-#define ICE_AQ_VSI_OUTER_VLAN_PORT_BASED_ACCEPT_HOST           BIT(4)
+#define ICE_AQ_VSI_OUTER_VLAN_PORT_BASED_ACCEPT_HOST   BIT(6)
 #define ICE_AQ_VSI_OUTER_VLAN_TX_MODE_S                        5
 #define ICE_AQ_VSI_OUTER_VLAN_TX_MODE_M                        (0x3 << ICE_AQ_VSI_OUTER_VLAN_TX_MODE_S)
 #define ICE_AQ_VSI_OUTER_VLAN_TX_MODE_ACCEPTUNTAGGED   0x1
@@ -1472,11 +1507,13 @@ struct ice_aqc_get_link_status_data {
 #define ICE_AQ_LINK_TOPO_UNDRUTIL_MEDIA        BIT(6)
 #define ICE_AQ_LINK_TOPO_UNSUPP_MEDIA  BIT(7)
        u8 link_cfg_err;
-#define ICE_AQ_LINK_CFG_ERR            BIT(0)
-#define ICE_AQ_LINK_ACT_PORT_OPT_INVAL BIT(2)
+#define ICE_AQ_LINK_CFG_ERR                    BIT(0)
+#define ICE_AQ_LINK_ACT_PORT_OPT_INVAL         BIT(2)
 #define ICE_AQ_LINK_FEAT_ID_OR_CONFIG_ID_INVAL BIT(3)
 #define ICE_AQ_LINK_TOPO_CRITICAL_SDP_ERR      BIT(4)
 #define ICE_AQ_LINK_MODULE_POWER_UNSUPPORTED   BIT(5)
+#define ICE_AQ_LINK_EXTERNAL_PHY_LOAD_FAILURE  BIT(6)
+#define ICE_AQ_LINK_INVAL_MAX_POWER_LIMIT      BIT(7)
        u8 link_info;
 #define ICE_AQ_LINK_UP                 BIT(0)  /* Link Status */
 #define ICE_AQ_LINK_FAULT              BIT(1)
@@ -1682,6 +1719,25 @@ struct ice_aqc_sw_gpio {
        u8 rsvd[12];
 };
 
+/* Program topology device NVM (direct, 0x06F2) */
+struct ice_aqc_program_topology_device_nvm {
+       u8 lport_num;
+       u8 lport_num_valid;
+       u8 node_type_ctx;
+       u8 index;
+       u8 rsvd[12];
+};
+
+/* Read topology device NVM (indirect, 0x06F3) */
+struct ice_aqc_read_topology_device_nvm {
+       u8 lport_num;
+       u8 lport_num_valid;
+       u8 node_type_ctx;
+       u8 index;
+       __le32 start_address;
+       u8 data_read[8];
+};
+
 /* NVM Read command (indirect 0x0701)
  * NVM Erase commands (direct 0x0702)
  * NVM Write commands (indirect 0x0703)
@@ -1711,6 +1767,7 @@ struct ice_aqc_nvm {
 #define ICE_AQC_NVM_POR_FLAG   0       /* Used by NVM Write completion on ARQ */
 #define ICE_AQC_NVM_PERST_FLAG 1
 #define ICE_AQC_NVM_EMPR_FLAG  2
+#define ICE_AQC_NVM_EMPR_ENA           BIT(0)
        __le16 module_typeid;
        __le16 length;
 #define ICE_AQC_NVM_ERASE_LEN  0xFFFF
@@ -2696,6 +2753,50 @@ struct ice_aqc_clear_health_status {
        __le32 reserved[4];
 };
 
+/* Set FW Logging configuration (indirect 0xFF30)
+ * Register for FW Logging (indirect 0xFF31)
+ * Query FW Logging (indirect 0xFF32)
+ * FW Log Event (indirect 0xFF33)
+ * Get FW Log (indirect 0xFF34)
+ * Clear FW Log (indirect 0xFF35)
+ */
+
+struct ice_aqc_fw_log {
+       u8 cmd_flags;
+#define ICE_AQC_FW_LOG_CONF_UART_EN    BIT(0)
+#define ICE_AQC_FW_LOG_CONF_AQ_EN      BIT(1)
+#define ICE_AQC_FW_LOG_CONF_SET_VALID  BIT(3)
+#define ICE_AQC_FW_LOG_AQ_REGISTER     BIT(0)
+#define ICE_AQC_FW_LOG_AQ_QUERY                BIT(2)
+#define ICE_AQC_FW_LOG_PERSISTENT      BIT(0)
+       u8 rsp_flag;
+#define ICE_AQC_FW_LOG_MORE_DATA       BIT(1)
+       __le16 fw_rt_msb;
+       union {
+               struct {
+                       __le32 fw_rt_lsb;
+               } sync;
+               struct {
+                       __le16 log_resolution;
+#define ICE_AQC_FW_LOG_MIN_RESOLUTION          (1)
+#define ICE_AQC_FW_LOG_MAX_RESOLUTION          (128)
+                       __le16 mdl_cnt;
+               } cfg;
+       } ops;
+       __le32 addr_high;
+       __le32 addr_low;
+};
+
+/* Response Buffer for:
+ *    Set Firmware Logging Configuration (0xFF30)
+ *    Query FW Logging (0xFF32)
+ */
+struct ice_aqc_fw_log_cfg_resp {
+       __le16 module_identifier;
+       u8 log_level;
+       u8 rsvd0;
+};
+
 /**
  * struct ice_aq_desc - Admin Queue (AQ) descriptor
  * @flags: ICE_AQ_FLAG_* flags
@@ -2911,6 +3012,8 @@ enum ice_adminq_opc {
        ice_aqc_opc_alloc_res                           = 0x0208,
        ice_aqc_opc_free_res                            = 0x0209,
        ice_aqc_opc_get_allocd_res_desc                 = 0x020A,
+       ice_aqc_opc_set_vlan_mode_parameters            = 0x020C,
+       ice_aqc_opc_get_vlan_mode_parameters            = 0x020D,
 
        /* VSI commands */
        ice_aqc_opc_add_vsi                             = 0x0210,
@@ -2979,6 +3082,8 @@ enum ice_adminq_opc {
        ice_aqc_opc_sff_eeprom                          = 0x06EE,
        ice_aqc_opc_sw_set_gpio                         = 0x06EF,
        ice_aqc_opc_sw_get_gpio                         = 0x06F0,
+       ice_aqc_opc_program_topology_device_nvm         = 0x06F2,
+       ice_aqc_opc_read_topology_device_nvm            = 0x06F3,
 
        /* NVM commands */
        ice_aqc_opc_nvm_read                            = 0x0701,
@@ -3054,7 +3159,15 @@ enum ice_adminq_opc {
        ice_aqc_opc_set_health_status_config            = 0xFF20,
        ice_aqc_opc_get_supported_health_status_codes   = 0xFF21,
        ice_aqc_opc_get_health_status                   = 0xFF22,
-       ice_aqc_opc_clear_health_status                 = 0xFF23
+       ice_aqc_opc_clear_health_status                 = 0xFF23,
+
+       /* FW Logging Commands */
+       ice_aqc_opc_fw_logs_config                      = 0xFF30,
+       ice_aqc_opc_fw_logs_register                    = 0xFF31,
+       ice_aqc_opc_fw_logs_query                       = 0xFF32,
+       ice_aqc_opc_fw_logs_event                       = 0xFF33,
+       ice_aqc_opc_fw_logs_get                         = 0xFF34,
+       ice_aqc_opc_fw_logs_clear                       = 0xFF35
 };
 
 #endif /* _ICE_ADMINQ_CMD_H_ */