f-stack/dpdk/drivers/common/cpt/cpt_pmd_ops_helper.h

65 lines
1.2 KiB
C
Raw Normal View History

2019-06-25 11:12:58 +00:00
/* SPDX-License-Identifier: BSD-3-Clause
* Copyright(c) 2018 Cavium, Inc
*/
#ifndef _CPT_PMD_OPS_HELPER_H_
#define _CPT_PMD_OPS_HELPER_H_
/*
* This file defines the agreement between the common layer and the individual
* crypto drivers for OCTEON TX series. Control path in otx* directory can
* directly call functions declared here.
*/
/*
* Get meta length required when operating in direct mode (single buffer
* in-place)
*
* @return
* - length
*/
2021-02-05 08:48:47 +00:00
__rte_internal
2019-06-25 11:12:58 +00:00
int32_t
cpt_pmd_ops_helper_get_mlen_direct_mode(void);
/*
* Get size of contiguous meta buffer to be allocated when working in scatter
* gather mode.
*
* @return
* - length
*/
2021-02-05 08:48:47 +00:00
__rte_internal
2019-06-25 11:12:58 +00:00
int
cpt_pmd_ops_helper_get_mlen_sg_mode(void);
2020-06-18 16:55:50 +00:00
/*
* Get size of meta buffer to be allocated for asymmetric crypto operations
*
* @return
* - length
*/
2021-02-05 08:48:47 +00:00
__rte_internal
2020-06-18 16:55:50 +00:00
int
cpt_pmd_ops_helper_asym_get_mlen(void);
2021-02-05 08:48:47 +00:00
/*
* Initialize ECC FMUL precomputed table
*
* @param
* - pointer to fpm_table iova address
*
* @return
* - 0 on success, negative on error
*/
__rte_internal
int cpt_fpm_init(uint64_t *fpm_table_iova);
/*
* Clear ECC FMUL precomputed table
*/
__rte_internal
void cpt_fpm_clear(void);
2019-06-25 11:12:58 +00:00
#endif /* _CPT_PMD_OPS_HELPER_H_ */