The input size is computed incorrectly for the
LDPC encoder TB processing.

Fixes: e640f6cdfa84 ("baseband/acc200: add LDPC processing")
Cc: sta...@dpdk.org

Signed-off-by: Nicolas Chautru <nicolas.chau...@intel.com>
---
 drivers/baseband/acc/rte_vrb_pmd.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/baseband/acc/rte_vrb_pmd.c 
b/drivers/baseband/acc/rte_vrb_pmd.c
index ae230b828a..686e086a5c 100644
--- a/drivers/baseband/acc/rte_vrb_pmd.c
+++ b/drivers/baseband/acc/rte_vrb_pmd.c
@@ -2218,7 +2218,8 @@ vrb1_enqueue_ldpc_enc_one_op_tb(struct acc_queue *q, 
struct rte_bbdev_enc_op *op
        uint16_t init_enq_descs = enq_descs;
        uint32_t in_offset = 0, out_offset = 0;
 
-       input_len_B = ((op->ldpc_enc.basegraph == 1 ? 22 : 10) * 
op->ldpc_enc.z_c) >> 3;
+       input_len_B = ((op->ldpc_enc.basegraph == 1 ? 22 : 10) * 
op->ldpc_enc.z_c
+                       - op->ldpc_enc.n_filler) >> 3;
 
        if (check_bit(op->ldpc_enc.op_flags, RTE_BBDEV_LDPC_CRC_24B_ATTACH))
                input_len_B -= 3;
-- 
2.34.1

Reply via email to