X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=lib%2Fbbdev%2Frte_bbdev_op.h;h=6d561334e8902ab020dee5d508e63aa06bc6117d;hb=6e858b4d9244cf53505589673755ab18ac2a4a83;hp=f946842727b07455e8f21f72d4c776824b547b09;hpb=99a2dd955fba6e4cc23b77d590a033650ced9c45;p=dpdk.git diff --git a/lib/bbdev/rte_bbdev_op.h b/lib/bbdev/rte_bbdev_op.h index f946842727..6d561334e8 100644 --- a/lib/bbdev/rte_bbdev_op.h +++ b/lib/bbdev/rte_bbdev_op.h @@ -9,9 +9,6 @@ * @file rte_bbdev_op.h * * Defines wireless base band layer 1 operations and capabilities - * - * @warning - * @b EXPERIMENTAL: this API may change without prior notice */ #ifdef __cplusplus @@ -114,7 +111,10 @@ enum rte_bbdev_op_td_flag_bitmasks { /** Set to keep CRC24B bits appended while decoding. Only usable when * decoding Transport Block mode. */ - RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP = (1ULL << 16) + RTE_BBDEV_TURBO_DEC_TB_CRC_24B_KEEP = (1ULL << 16), + /** Set to drop CRC24B bits not to be appended while decoding. + */ + RTE_BBDEV_TURBO_DEC_CRC_24B_DROP = (1ULL << 17) }; @@ -142,51 +142,53 @@ enum rte_bbdev_op_ldpcdec_flag_bitmasks { RTE_BBDEV_LDPC_CRC_TYPE_24B_CHECK = (1ULL << 1), /** Set to drop the last CRC bits decoding output */ RTE_BBDEV_LDPC_CRC_TYPE_24B_DROP = (1ULL << 2), + /** Set for transport block CRC-16 checking */ + RTE_BBDEV_LDPC_CRC_TYPE_16_CHECK = (1ULL << 3), /** Set for bit-level de-interleaver bypass on Rx stream. */ - RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS = (1ULL << 3), + RTE_BBDEV_LDPC_DEINTERLEAVER_BYPASS = (1ULL << 4), /** Set for HARQ combined input stream enable. */ - RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE = (1ULL << 4), + RTE_BBDEV_LDPC_HQ_COMBINE_IN_ENABLE = (1ULL << 5), /** Set for HARQ combined output stream enable. */ - RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE = (1ULL << 5), + RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE = (1ULL << 6), /** Set for LDPC decoder bypass. * RTE_BBDEV_LDPC_HQ_COMBINE_OUT_ENABLE must be set. */ - RTE_BBDEV_LDPC_DECODE_BYPASS = (1ULL << 6), + RTE_BBDEV_LDPC_DECODE_BYPASS = (1ULL << 7), /** Set for soft-output stream enable */ - RTE_BBDEV_LDPC_SOFT_OUT_ENABLE = (1ULL << 7), + RTE_BBDEV_LDPC_SOFT_OUT_ENABLE = (1ULL << 8), /** Set for Rate-Matching bypass on soft-out stream. */ - RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS = (1ULL << 8), + RTE_BBDEV_LDPC_SOFT_OUT_RM_BYPASS = (1ULL << 9), /** Set for bit-level de-interleaver bypass on soft-output stream. */ - RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS = (1ULL << 9), + RTE_BBDEV_LDPC_SOFT_OUT_DEINTERLEAVER_BYPASS = (1ULL << 10), /** Set for iteration stopping on successful decode condition * i.e. a successful syndrome check. */ - RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE = (1ULL << 10), + RTE_BBDEV_LDPC_ITERATION_STOP_ENABLE = (1ULL << 11), /** Set if a device supports decoder dequeue interrupts. */ - RTE_BBDEV_LDPC_DEC_INTERRUPTS = (1ULL << 11), + RTE_BBDEV_LDPC_DEC_INTERRUPTS = (1ULL << 12), /** Set if a device supports scatter-gather functionality. */ - RTE_BBDEV_LDPC_DEC_SCATTER_GATHER = (1ULL << 12), + RTE_BBDEV_LDPC_DEC_SCATTER_GATHER = (1ULL << 13), /** Set if a device supports input/output HARQ compression. */ - RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION = (1ULL << 13), + RTE_BBDEV_LDPC_HARQ_6BIT_COMPRESSION = (1ULL << 14), /** Set if a device supports input LLR compression. */ - RTE_BBDEV_LDPC_LLR_COMPRESSION = (1ULL << 14), + RTE_BBDEV_LDPC_LLR_COMPRESSION = (1ULL << 15), /** Set if a device supports HARQ input from * device's internal memory. */ - RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE = (1ULL << 15), + RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_IN_ENABLE = (1ULL << 16), /** Set if a device supports HARQ output to * device's internal memory. */ - RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE = (1ULL << 16), + RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_OUT_ENABLE = (1ULL << 17), /** Set if a device supports loop-back access to * HARQ internal memory. Intended for troubleshooting. */ - RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_LOOPBACK = (1ULL << 17), + RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_LOOPBACK = (1ULL << 18), /** Set if a device includes LLR filler bits in the circular buffer * for HARQ memory. If not set, it is assumed the filler bits are not * in HARQ memory and handled directly by the LDPC decoder. */ - RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_FILLERS = (1ULL << 18) + RTE_BBDEV_LDPC_INTERNAL_HARQ_MEMORY_FILLERS = (1ULL << 19) }; /** Flags for LDPC encoder operation and capability structure */ @@ -815,7 +817,6 @@ struct rte_bbdev_op_pool_private { * Operation type as string or NULL if op_type is invalid * */ -__rte_experimental const char* rte_bbdev_op_type_str(enum rte_bbdev_op_type op_type); @@ -839,7 +840,6 @@ rte_bbdev_op_type_str(enum rte_bbdev_op_type op_type); * - Pointer to a mempool on success, * - NULL pointer on failure. */ -__rte_experimental struct rte_mempool * rte_bbdev_op_pool_create(const char *name, enum rte_bbdev_op_type type, unsigned int num_elements, unsigned int cache_size, @@ -859,7 +859,6 @@ rte_bbdev_op_pool_create(const char *name, enum rte_bbdev_op_type type, * - 0 on success * - EINVAL if invalid mempool is provided */ -__rte_experimental static inline int rte_bbdev_enc_op_alloc_bulk(struct rte_mempool *mempool, struct rte_bbdev_enc_op **ops, uint16_t num_ops) @@ -896,7 +895,6 @@ rte_bbdev_enc_op_alloc_bulk(struct rte_mempool *mempool, * - 0 on success * - EINVAL if invalid mempool is provided */ -__rte_experimental static inline int rte_bbdev_dec_op_alloc_bulk(struct rte_mempool *mempool, struct rte_bbdev_dec_op **ops, uint16_t num_ops) @@ -929,7 +927,6 @@ rte_bbdev_dec_op_alloc_bulk(struct rte_mempool *mempool, * @param num_ops * Number of structures */ -__rte_experimental static inline void rte_bbdev_dec_op_free_bulk(struct rte_bbdev_dec_op **ops, unsigned int num_ops) { @@ -947,7 +944,6 @@ rte_bbdev_dec_op_free_bulk(struct rte_bbdev_dec_op **ops, unsigned int num_ops) * @param num_ops * Number of structures */ -__rte_experimental static inline void rte_bbdev_enc_op_free_bulk(struct rte_bbdev_enc_op **ops, unsigned int num_ops) {