From: Anoob Joseph <ano...@marvell.com>

Add err ctl field in SA context.

Signed-off-by: Anoob Joseph <ano...@marvell.com>
---
 drivers/common/cnxk/cnxk_security.c |  6 ++++--
 drivers/common/cnxk/roc_ie_ot.h     | 17 ++++++++++++++++-
 2 files changed, 20 insertions(+), 3 deletions(-)

diff --git a/drivers/common/cnxk/cnxk_security.c 
b/drivers/common/cnxk/cnxk_security.c
index 6ebf0846f5..035d61180a 100644
--- a/drivers/common/cnxk/cnxk_security.c
+++ b/drivers/common/cnxk/cnxk_security.c
@@ -500,8 +500,10 @@ cnxk_ot_ipsec_outb_sa_fill(struct roc_ot_ipsec_outb_sa *sa,
        offset = offsetof(struct roc_ot_ipsec_outb_sa, ctx);
        /* Word offset for HW managed SA field */
        sa->w0.s.hw_ctx_off = offset / 8;
-       /* Context push size is up to hmac_opad_ipad */
-       sa->w0.s.ctx_push_size = sa->w0.s.hw_ctx_off;
+
+       /* Context push size is up to err ctl in HW ctx */
+       sa->w0.s.ctx_push_size = sa->w0.s.hw_ctx_off + 1;
+
        /* Entire context size in 128B units */
        offset = sizeof(struct roc_ot_ipsec_outb_sa);
        sa->w0.s.ctx_size = (PLT_ALIGN_CEIL(offset, ROC_CTX_UNIT_128B) /
diff --git a/drivers/common/cnxk/roc_ie_ot.h b/drivers/common/cnxk/roc_ie_ot.h
index 923656f4a5..c502c7983f 100644
--- a/drivers/common/cnxk/roc_ie_ot.h
+++ b/drivers/common/cnxk/roc_ie_ot.h
@@ -153,6 +153,13 @@ enum {
        ROC_IE_OT_REAS_STS_L3P_ERR = 8,
        ROC_IE_OT_REAS_STS_MAX = 9
 };
+
+enum {
+       ROC_IE_OT_ERR_CTL_MODE_NONE = 0,
+       ROC_IE_OT_ERR_CTL_MODE_CLEAR = 1,
+       ROC_IE_OT_ERR_CTL_MODE_RING = 2,
+};
+
 /* Context units in bytes */
 #define ROC_CTX_UNIT_8B                  8
 #define ROC_CTX_UNIT_128B        128
@@ -235,7 +242,15 @@ union roc_ot_ipsec_outb_iv {
 };
 
 struct roc_ot_ipsec_outb_ctx_update_reg {
-       uint64_t rsvd;
+       union {
+               struct {
+                       uint64_t reserved_0_2 : 3;
+                       uint64_t address : 57;
+                       uint64_t mode : 4;
+               } s;
+               uint64_t u64;
+       } err_ctl;
+
        uint64_t esn_val;
        uint64_t hard_life;
        uint64_t soft_life;
-- 
2.27.0

Reply via email to