common/cnxk: use common SA init API for default options
[dpdk.git] / drivers / common / cnxk / roc_ie_ot.c
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(C) 2022 Marvell.
3  */
4
5 #include "roc_api.h"
6 #include "roc_priv.h"
7
8 void
9 roc_ot_ipsec_inb_sa_init(struct roc_ot_ipsec_inb_sa *sa, bool is_inline)
10 {
11         size_t offset;
12
13         memset(sa, 0, sizeof(struct roc_ot_ipsec_inb_sa));
14
15         if (is_inline) {
16                 sa->w0.s.pkt_output = ROC_IE_OT_SA_PKT_OUTPUT_NO_FRAG;
17                 sa->w0.s.pkt_format = ROC_IE_OT_SA_PKT_FMT_META;
18                 sa->w0.s.pkind = ROC_IE_OT_CPT_PKIND;
19                 sa->w0.s.et_ovrwr = 1;
20         }
21
22         offset = offsetof(struct roc_ot_ipsec_inb_sa, ctx);
23         sa->w0.s.hw_ctx_off = offset / ROC_CTX_UNIT_8B;
24         sa->w0.s.ctx_push_size = sa->w0.s.hw_ctx_off + 1;
25         sa->w0.s.ctx_size = ROC_IE_OT_CTX_ILEN;
26         sa->w0.s.ctx_hdr_size = ROC_IE_OT_SA_CTX_HDR_SIZE;
27         sa->w0.s.aop_valid = 1;
28 }
29
30 void
31 roc_ot_ipsec_outb_sa_init(struct roc_ot_ipsec_outb_sa *sa)
32 {
33         size_t offset;
34
35         memset(sa, 0, sizeof(struct roc_ot_ipsec_outb_sa));
36
37         offset = offsetof(struct roc_ot_ipsec_outb_sa, ctx);
38         sa->w0.s.ctx_push_size = (offset / ROC_CTX_UNIT_8B) + 1;
39         sa->w0.s.ctx_size = ROC_IE_OT_CTX_ILEN;
40         sa->w0.s.aop_valid = 1;
41 }