X-Git-Url: http://git.openwrt.org/?a=blobdiff_plain;f=target%2Flinux%2Flayerscape%2Fpatches-5.4%2F701-net-0151-soc-fsl-dpio-Prefer-the-CPU-affine-DPIO.patch;fp=target%2Flinux%2Flayerscape%2Fpatches-5.4%2F701-net-0151-soc-fsl-dpio-Prefer-the-CPU-affine-DPIO.patch;h=e9fdc7d0da7352bb5ebe4f332d63f47f8977e65f;hb=cddd4591404fb4c53dc0b3c0b15b942cdbed4356;hp=0000000000000000000000000000000000000000;hpb=d1d2c0b5579ea4f69a42246c9318539d61ba1999;p=openwrt%2Fstaging%2Fwigyori.git diff --git a/target/linux/layerscape/patches-5.4/701-net-0151-soc-fsl-dpio-Prefer-the-CPU-affine-DPIO.patch b/target/linux/layerscape/patches-5.4/701-net-0151-soc-fsl-dpio-Prefer-the-CPU-affine-DPIO.patch new file mode 100644 index 0000000000..e9fdc7d0da --- /dev/null +++ b/target/linux/layerscape/patches-5.4/701-net-0151-soc-fsl-dpio-Prefer-the-CPU-affine-DPIO.patch @@ -0,0 +1,35 @@ +From 33b7977ba754b6ec4e65aaae34de92d4086ea0bd Mon Sep 17 00:00:00 2001 +From: Roy Pledge +Date: Wed, 13 Sep 2017 17:03:06 -0400 +Subject: [PATCH] soc: fsl: dpio: Prefer the CPU affine DPIO + +Use the cpu affine DPIO unless there isn't one which can happen +if less DPIOs than cores are assign to the kernel. + +Signed-off-by: Roy Pledge +--- + drivers/soc/fsl/dpio/dpio-service.c | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +--- a/drivers/soc/fsl/dpio/dpio-service.c ++++ b/drivers/soc/fsl/dpio/dpio-service.c +@@ -58,7 +58,7 @@ static inline struct dpaa2_io *service_s + * If cpu == -1, choose the current cpu, with no guarantees about + * potentially being migrated away. + */ +- if (unlikely(cpu < 0)) ++ if (cpu < 0) + cpu = smp_processor_id(); + + /* If a specific cpu was requested, pick it up immediately */ +@@ -70,6 +70,10 @@ static inline struct dpaa2_io *service_s + if (d) + return d; + ++ d = service_select_by_cpu(d, -1); ++ if (d) ++ return d; ++ + spin_lock(&dpio_list_lock); + d = list_entry(dpio_list.next, struct dpaa2_io, node); + list_del(&d->node);