diff options
Diffstat (limited to 'target/linux/layerscape/patches-5.4/701-net-0078-staging-fsl_qbman-Recalcuate-cursor-after-consuming-.patch')
-rw-r--r-- | target/linux/layerscape/patches-5.4/701-net-0078-staging-fsl_qbman-Recalcuate-cursor-after-consuming-.patch | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/target/linux/layerscape/patches-5.4/701-net-0078-staging-fsl_qbman-Recalcuate-cursor-after-consuming-.patch b/target/linux/layerscape/patches-5.4/701-net-0078-staging-fsl_qbman-Recalcuate-cursor-after-consuming-.patch new file mode 100644 index 0000000000..cbb8efa3e0 --- /dev/null +++ b/target/linux/layerscape/patches-5.4/701-net-0078-staging-fsl_qbman-Recalcuate-cursor-after-consuming-.patch @@ -0,0 +1,26 @@ +From c9d41c728cb9fc5c100030d39d81be3d8e0b26d7 Mon Sep 17 00:00:00 2001 +From: Roy Pledge <roy.pledge@nxp.com> +Date: Wed, 8 Aug 2018 17:13:48 -0400 +Subject: [PATCH] staging/fsl_qbman: Recalcuate cursor after consuming ring + +If the dqrr_init() function consumes frames during init +the cursor needs to be updated before anything starts +to use the ring. + +Signed-off-by: Roy Pledge <roy.pledge@nxp.com> +--- + drivers/staging/fsl_qbman/qman_low.h | 3 +++ + 1 file changed, 3 insertions(+) + +--- a/drivers/staging/fsl_qbman/qman_low.h ++++ b/drivers/staging/fsl_qbman/qman_low.h +@@ -682,6 +682,9 @@ static inline int qm_dqrr_init(struct qm + (0 ? 0x10 : 0); /* Ignore SP */ + qm_out(CFG, cfg); + qm_dqrr_set_maxfill(portal, max_fill); ++ ++ /* Recalculate cursor as we may have consumed frames */ ++ dqrr->cursor = dqrr->ring + dqrr->ci; + return 0; + } + |