numam-dpdk/drivers/common/cpt/cpt_pmd_ops_helper.h
David Marchand 1094dd940e cleanup compat header inclusions
With symbols going though experimental/stable stages, we accumulated
a lot of discrepancies about inclusion of the rte_compat.h header.

Some headers are including it where unneeded, while others rely on
implicit inclusion.

Fix unneeded inclusions:
$ git grep -l include..rte_compat.h |
  xargs grep -LE '__rte_(internal|experimental)' |
  xargs sed -i -e '/#include..rte_compat.h/d'

Fix missing inclusion, by inserting rte_compat.h before the first
inclusion of a DPDK header:
$ git grep -lE '__rte_(internal|experimental)' |
  xargs grep -L include..rte_compat.h |
  xargs sed -i -e \
    '0,/#include..\(rte_\|.*pmd.h.$\)/{
      s/\(#include..\(rte_\|.*pmd.h.$\)\)/#include <rte_compat.h>\n\1/
    }'

Fix missing inclusion, by inserting rte_compat.h after the last
inclusion of a non DPDK header:
$ for file in $(git grep -lE '__rte_(internal|experimental)' |
  xargs grep -L include..rte_compat.h); do
    tac $file > $file.$$
    sed -i -e \
      '0,/#include../{
        s/\(#include..*$\)/#include <rte_compat.h>\n\n\1/
      }' $file.$$
    tac $file.$$ > $file
    rm $file.$$
  done

Fix missing inclusion, by inserting rte_compat.h after the header guard:
$ git grep -lE '__rte_(internal|experimental)' |
  xargs grep -L include..rte_compat.h |
  xargs sed -i -e \
    '0,/#define/{
      s/\(#define .*$\)/\1\n\n#include <rte_compat.h>/
    }'

And finally, exclude rte_compat.h itself.
$ git checkout lib/eal/include/rte_compat.h

At the end of all this, we have a clean tree:
$ git grep -lE '__rte_(internal|experimental)' |
  xargs grep -L include..rte_compat.h
buildtools/check-symbols.sh
devtools/checkpatches.sh
doc/guides/contributing/abi_policy.rst
doc/guides/rel_notes/release_20_11.rst
lib/eal/include/rte_compat.h

Signed-off-by: David Marchand <david.marchand@redhat.com>
Acked-by: Bruce Richardson <bruce.richardson@intel.com>
Acked-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
2022-11-15 08:39:14 +01:00

67 lines
1.2 KiB
C

/* SPDX-License-Identifier: BSD-3-Clause
* Copyright(c) 2018 Cavium, Inc
*/
#ifndef _CPT_PMD_OPS_HELPER_H_
#define _CPT_PMD_OPS_HELPER_H_
#include <rte_compat.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
*/
__rte_internal
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
*/
__rte_internal
int
cpt_pmd_ops_helper_get_mlen_sg_mode(void);
/*
* Get size of meta buffer to be allocated for asymmetric crypto operations
*
* @return
* - length
*/
__rte_internal
int
cpt_pmd_ops_helper_asym_get_mlen(void);
/*
* 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);
#endif /* _CPT_PMD_OPS_HELPER_H_ */