Branch data Line data Source code
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 : 0 : 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 : 0 : sa->w0.s.pkt_output = ROC_IE_OT_SA_PKT_OUTPUT_NO_FRAG; 16 : 0 : sa->w0.s.pkt_format = ROC_IE_OT_SA_PKT_FMT_META; 17 : 0 : sa->w0.s.pkind = ROC_IE_OT_CPT_PKIND; 18 : 0 : sa->w0.s.et_ovrwr = 1; 19 : 0 : sa->w2.s.l3hdr_on_err = 1; 20 : : 21 : : PLT_SET_USED(is_inline); 22 : : 23 : : offset = offsetof(struct roc_ot_ipsec_inb_sa, ctx); 24 : 0 : sa->w0.s.hw_ctx_off = offset / ROC_CTX_UNIT_8B; 25 : 0 : sa->w0.s.ctx_push_size = sa->w0.s.hw_ctx_off + 1; 26 : 0 : sa->w0.s.ctx_size = ROC_IE_OT_CTX_ILEN; 27 : 0 : sa->w0.s.ctx_hdr_size = ROC_IE_OT_SA_CTX_HDR_SIZE; 28 : 0 : sa->w0.s.aop_valid = 1; 29 : 0 : } 30 : : 31 : : void 32 : 0 : roc_ot_ipsec_outb_sa_init(struct roc_ot_ipsec_outb_sa *sa) 33 : : { 34 : : size_t offset; 35 : : 36 : : memset(sa, 0, sizeof(struct roc_ot_ipsec_outb_sa)); 37 : : 38 : : offset = offsetof(struct roc_ot_ipsec_outb_sa, ctx); 39 : 0 : sa->w0.s.ctx_push_size = (offset / ROC_CTX_UNIT_8B) + 1; 40 : 0 : sa->w0.s.ctx_size = ROC_IE_OT_CTX_ILEN; 41 : 0 : sa->w0.s.ctx_hdr_size = ROC_IE_OT_SA_CTX_HDR_SIZE; 42 : 0 : sa->w0.s.aop_valid = 1; 43 : 0 : }