aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/layerscape/patches-5.4/701-net-0298-staging-fsl_ppfe-eth-HW-parse-results-for-DPDK.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/layerscape/patches-5.4/701-net-0298-staging-fsl_ppfe-eth-HW-parse-results-for-DPDK.patch')
-rw-r--r--target/linux/layerscape/patches-5.4/701-net-0298-staging-fsl_ppfe-eth-HW-parse-results-for-DPDK.patch47
1 files changed, 47 insertions, 0 deletions
diff --git a/target/linux/layerscape/patches-5.4/701-net-0298-staging-fsl_ppfe-eth-HW-parse-results-for-DPDK.patch b/target/linux/layerscape/patches-5.4/701-net-0298-staging-fsl_ppfe-eth-HW-parse-results-for-DPDK.patch
new file mode 100644
index 0000000000..f8ec3495a2
--- /dev/null
+++ b/target/linux/layerscape/patches-5.4/701-net-0298-staging-fsl_ppfe-eth-HW-parse-results-for-DPDK.patch
@@ -0,0 +1,47 @@
+From fd2bdf555ab192a96a44fa02f701095b24448d47 Mon Sep 17 00:00:00 2001
+From: anuj batham <anuj.batham@nxp.com>
+Date: Fri, 27 Apr 2018 14:38:09 +0530
+Subject: [PATCH] staging: fsl_ppfe/eth: HW parse results for DPDK
+
+HW Parse results are included in the packet headroom.
+Length and Offset calculation now accommodates parse info size.
+
+Signed-off-by: Archana Madhavan <archana.madhavan@nxp.com>
+---
+ drivers/staging/fsl_ppfe/pfe_hif_lib.c | 7 +++++--
+ drivers/staging/fsl_ppfe/pfe_hif_lib.h | 1 +
+ 2 files changed, 6 insertions(+), 2 deletions(-)
+
+--- a/drivers/staging/fsl_ppfe/pfe_hif_lib.c
++++ b/drivers/staging/fsl_ppfe/pfe_hif_lib.c
+@@ -435,6 +435,7 @@ void *hif_lib_receive_pkt(struct hif_cli
+ u16 size = *rx_ctrl >> HIF_CTRL_RX_OFFSET_OFST;
+
+ if (size) {
++ size += PFE_PARSE_INFO_SIZE;
+ *len = CL_DESC_BUF_LEN(desc->ctrl) -
+ PFE_PKT_HEADER_SZ - size;
+ *ofst = pfe_pkt_headroom + PFE_PKT_HEADER_SZ
+@@ -442,8 +443,10 @@ void *hif_lib_receive_pkt(struct hif_cli
+ *priv_data = desc->data + PFE_PKT_HEADER_SZ;
+ } else {
+ *len = CL_DESC_BUF_LEN(desc->ctrl) -
+- PFE_PKT_HEADER_SZ;
+- *ofst = pfe_pkt_headroom + PFE_PKT_HEADER_SZ;
++ PFE_PKT_HEADER_SZ - PFE_PARSE_INFO_SIZE;
++ *ofst = pfe_pkt_headroom
++ + PFE_PKT_HEADER_SZ
++ + PFE_PARSE_INFO_SIZE;
+ *priv_data = NULL;
+ }
+
+--- a/drivers/staging/fsl_ppfe/pfe_hif_lib.h
++++ b/drivers/staging/fsl_ppfe/pfe_hif_lib.h
+@@ -23,6 +23,7 @@
+
+ #define HIF_CL_REQ_TIMEOUT 10
+ #define GFP_DMA_PFE 0
++#define PFE_PARSE_INFO_SIZE 16
+
+ enum {
+ REQUEST_CL_REGISTER = 0,