crypto/dpaa2_sec: disable write-safe for PDCP
authorVakul Garg <vakul.garg@nxp.com>
Mon, 30 Sep 2019 14:40:50 +0000 (20:10 +0530)
committerAkhil Goyal <akhil.goyal@nxp.com>
Wed, 9 Oct 2019 09:50:12 +0000 (11:50 +0200)
PDCP descriptors in some cases internally use commands which overwrite
memory with extra '0s' if write-safe is kept enabled. This breaks
correct functional behavior of PDCP apis and they in many cases give
incorrect crypto output. There we disable 'write-safe' bit in FLC for
PDCP cases. If there is a performance drop, then write-safe would be
enabled selectively through a separate patch.

Signed-off-by: Vakul Garg <vakul.garg@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
drivers/crypto/dpaa2_sec/dpaa2_sec_dpseci.c

index b8712af..b020041 100644 (file)
@@ -2931,8 +2931,12 @@ dpaa2_sec_set_pdcp_session(struct rte_cryptodev *dev,
 
        flc->word1_sdl = (uint8_t)bufsize;
 
-       /* Set EWS bit i.e. enable write-safe */
-       DPAA2_SET_FLC_EWS(flc);
+       /* TODO - check the perf impact or
+        * align as per descriptor type
+        * Set EWS bit i.e. enable write-safe
+        * DPAA2_SET_FLC_EWS(flc);
+        */
+
        /* Set BS = 1 i.e reuse input buffers as output buffers */
        DPAA2_SET_FLC_REUSE_BS(flc);
        /* Set FF = 10; reuse input buffers if they provide sufficient space */