Completed structure ice_aqc_lldp_get_mib.
Added 'Pending Event Enable' bit.

Signed-off-by: Tsotne Chakhvadze <tsotne.chakhva...@intel.com>
Signed-off-by: Karen Sornek <karen.sor...@intel.com>
Signed-off-by: Anatolii Gerasymenko <anatolii.gerasyme...@intel.com>
Signed-off-by: Qi Zhang <qi.z.zh...@intel.com>
---
 drivers/net/ice/base/ice_adminq_cmd.h | 20 ++++++++++++++++++--
 drivers/net/ice/base/ice_dcb.c        |  3 +++
 2 files changed, 21 insertions(+), 2 deletions(-)

diff --git a/drivers/net/ice/base/ice_adminq_cmd.h 
b/drivers/net/ice/base/ice_adminq_cmd.h
index e1a6847157..dc3c3269d4 100644
--- a/drivers/net/ice/base/ice_adminq_cmd.h
+++ b/drivers/net/ice/base/ice_adminq_cmd.h
@@ -1998,14 +1998,25 @@ struct ice_aqc_lldp_get_mib {
 #define ICE_AQ_LLDP_TX_ACTIVE                  0
 #define ICE_AQ_LLDP_TX_SUSPENDED               1
 #define ICE_AQ_LLDP_TX_FLUSHED                 3
+/* DCBX mode */
+#define ICE_AQ_LLDP_DCBX_S                     6
+#define ICE_AQ_LLDP_DCBX_M                     (0x3 << ICE_AQ_LLDP_DCBX_S)
+#define ICE_AQ_LLDP_DCBX_NA                    0
+#define ICE_AQ_LLDP_DCBX_IEEE                  1
+#define ICE_AQ_LLDP_DCBX_CEE                   2
 /* The following bytes are reserved for the Get LLDP MIB command (0x0A00)
  * and in the LLDP MIB Change Event (0x0A01). They are valid for the
  * Get LLDP MIB (0x0A00) response only.
  */
-       u8 reserved1;
+       u8 state;
+#define ICE_AQ_LLDP_MIB_CHANGE_STATE_S         0
+#define ICE_AQ_LLDP_MIB_CHANGE_STATE_M         \
+                               (0x1 << ICE_AQ_LLDP_MIB_CHANGE_STATE_S)
+#define ICE_AQ_LLDP_MIB_CHANGE_EXECUTED                0
+#define ICE_AQ_LLDP_MIB_CHANGE_PENDING         1
        __le16 local_len;
        __le16 remote_len;
-       u8 reserved2[2];
+       u8 reserved[2];
        __le32 addr_high;
        __le32 addr_low;
 };
@@ -2016,6 +2027,11 @@ struct ice_aqc_lldp_set_mib_change {
        u8 command;
 #define ICE_AQ_LLDP_MIB_UPDATE_ENABLE          0x0
 #define ICE_AQ_LLDP_MIB_UPDATE_DIS             0x1
+#define ICE_AQ_LLDP_MIB_PENDING_S              1
+#define ICE_AQ_LLDP_MIB_PENDING_M              \
+                               (0x1 << ICE_AQ_LLDP_MIB_PENDING_S)
+#define ICE_AQ_LLDP_MIB_PENDING_DISABLE                0
+#define ICE_AQ_LLDP_MIB_PENDING_ENABLE         1
        u8 reserved[15];
 };
 
diff --git a/drivers/net/ice/base/ice_dcb.c b/drivers/net/ice/base/ice_dcb.c
index 7a850e62f4..d511a5f5ec 100644
--- a/drivers/net/ice/base/ice_dcb.c
+++ b/drivers/net/ice/base/ice_dcb.c
@@ -74,6 +74,9 @@ ice_aq_cfg_lldp_mib_change(struct ice_hw *hw, bool ena_update,
 
        if (!ena_update)
                cmd->command |= ICE_AQ_LLDP_MIB_UPDATE_DIS;
+       else
+               cmd->command |= ICE_AQ_LLDP_MIB_PENDING_ENABLE <<
+                               ICE_AQ_LLDP_MIB_PENDING_S;
 
        return ice_aq_send_cmd(hw, &desc, NULL, 0, cd);
 }
-- 
2.31.1

Reply via email to