bus/fslmc: disable annotation prefetch for LX2
authorNipun Gupta <nipun.gupta@nxp.com>
Fri, 12 Oct 2018 10:04:19 +0000 (15:34 +0530)
committerThomas Monjalon <thomas@monjalon.net>
Tue, 16 Oct 2018 12:54:26 +0000 (14:54 +0200)
In case of LX2 we get parse result summary in FD. We do not need to
prefetch and read the annotation to fetch the parse results.

Signed-off-by: Nipun Gupta <nipun.gupta@nxp.com>
drivers/net/dpaa2/dpaa2_rxtx.c

index 89cfd29..953fed2 100644 (file)
@@ -554,10 +554,12 @@ dpaa2_dev_prefetch_rx(void *queue, struct rte_mbuf **bufs, uint16_t nb_pkts)
                }
                fd = qbman_result_DQ_fd(dq_storage);
 
-               next_fd = qbman_result_DQ_fd(dq_storage + 1);
-               /* Prefetch Annotation address for the parse results */
-               rte_prefetch0((void *)(size_t)(DPAA2_GET_FD_ADDR(next_fd)
-                               + DPAA2_FD_PTA_SIZE + 16));
+               if (dpaa2_svr_family != SVR_LX2160A) {
+                       next_fd = qbman_result_DQ_fd(dq_storage + 1);
+                       /* Prefetch Annotation address for the parse results */
+                       rte_prefetch0((void *)(size_t)(DPAA2_GET_FD_ADDR(
+                                     next_fd) + DPAA2_FD_PTA_SIZE + 16));
+               }
 
                if (unlikely(DPAA2_FD_GET_FORMAT(fd) == qbman_fd_sg))
                        bufs[num_rx] = eth_sg_fd_to_mbuf(fd);