aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/layerscape/patches-5.4/701-net-0155-soc-fsl-dpio-aligned-access-of-qbman-cacheable-regio.patch
diff options
context:
space:
mode:
authorDaniel Golle <daniel@makrotopia.org>2022-03-21 01:16:48 +0000
committerDaniel Golle <daniel@makrotopia.org>2022-03-21 13:11:56 +0000
commit786bf7fdaca4c75e7eba6e9aa3a8b5775fd21186 (patch)
tree926fecb2b1f6ce1e42ba7ef4c7aab8e68dfd214c /target/linux/layerscape/patches-5.4/701-net-0155-soc-fsl-dpio-aligned-access-of-qbman-cacheable-regio.patch
parent9470160c350d15f765c33d6c1db15d6c4709a64c (diff)
downloadupstream-786bf7fdaca4c75e7eba6e9aa3a8b5775fd21186.tar.gz
upstream-786bf7fdaca4c75e7eba6e9aa3a8b5775fd21186.tar.bz2
upstream-786bf7fdaca4c75e7eba6e9aa3a8b5775fd21186.zip
kernel: delete Linux 5.4 config and patches
As the upcoming release will be based on Linux 5.10 only, remove all kernel configuration as well as patches for Linux 5.4. There were no targets still actively using Linux 5.4. Signed-off-by: Daniel Golle <daniel@makrotopia.org> (cherry picked from commit 3a14580411adfb75f9a44eded9f41245b9e44606)
Diffstat (limited to 'target/linux/layerscape/patches-5.4/701-net-0155-soc-fsl-dpio-aligned-access-of-qbman-cacheable-regio.patch')
-rw-r--r--target/linux/layerscape/patches-5.4/701-net-0155-soc-fsl-dpio-aligned-access-of-qbman-cacheable-regio.patch73
1 files changed, 0 insertions, 73 deletions
diff --git a/target/linux/layerscape/patches-5.4/701-net-0155-soc-fsl-dpio-aligned-access-of-qbman-cacheable-regio.patch b/target/linux/layerscape/patches-5.4/701-net-0155-soc-fsl-dpio-aligned-access-of-qbman-cacheable-regio.patch
deleted file mode 100644
index 92e4dca643..0000000000
--- a/target/linux/layerscape/patches-5.4/701-net-0155-soc-fsl-dpio-aligned-access-of-qbman-cacheable-regio.patch
+++ /dev/null
@@ -1,73 +0,0 @@
-From 353725d455cc27aa2008456c2711e7fae2b8a631 Mon Sep 17 00:00:00 2001
-From: Bharat Bhushan <Bharat.Bhushan@nxp.com>
-Date: Wed, 7 Mar 2018 21:35:37 +0530
-Subject: [PATCH] soc: fsl: dpio: aligned access of qbman cacheable region
-
-Alignment requirement on ARM is lenient (In Linux) for regions
-mapped as "Memory Type" but have very strict policy for regions
-mapped as "Device Type". Unaligned access to regions mapped
-as "Device Type" will always result to unaligned fault.
-
-DPIO driver have un-aligned access to QBman cacheable region
-and the Linux driver maps the region as "Memory Type". On Host
-Linux this works because MMU Stage-1 configured by driver allows
-unaligned access. In Virtual Machine cases, final region mapping type
-is governed by combination of Stage-1 and Stage-2 MMU mapping.
-
-Linux driver in VM controls maps the region as "Memory Type" in
-Stage-1 MMU while Stage-2 is controlled by KVM. And current KVM
-implementation does not allow device region to be mapped as
-"Memory Type". Till we have a working/upstream-able solution
-for Virtual Machine, we need to change un-aligned access in DPIO
-driver to be aligned
-
-While we reached to this point as we observed below alignment
-exception in Virtual Machine when accessing qbman cacheable region.
-
- kvm [2347]: Unsupported FSC: EC=0x24 xFSC=0x21
- ESR_EL2=0x92000061
- error: kvm run failed Bad address
- PC=ffff000008398e78 SP=ffff800009bcb540
- X00=ffff000008041000 X01=ffff800009bcb580 X02=ffff800009bcb650
- X03=0000000000000180
- X04=ffff000008041001 X05=ffff800009bcb581 X06=0200000000000000
- X07=0000000000000000
- X08=0000000000000000 X09=ffff000008041000 X10=0000000000000001
- X11=0000000000de6cb0
- X12=00000000fa83b2da X13=0000000000000001 X14=000000007f605ec8
- X15=00000000e26f5d5e
- X16=000000008521af1e X17=000000001076277e X18=ffff800009bcb5c0
- X19=ffff800079da2b00
- X20=ffff800009bcb650 X21=0000000000000002 X22=0000000000000000
- X23=0000000000000000
- X24=0000000000000000 X25=ffff8000099e7440 X26=ffff000008da6000
- X27=ffff000008e7f000
- X28=00000000499e7440 X29=ffff800009bcb540 X30=ffff00000839a160
- PSTATE=20000145 --C- EL1h
-
-Signed-off-by: Bharat Bhushan <Bharat.Bhushan@nxp.com>
----
- drivers/soc/fsl/dpio/qbman-portal.c | 12 +++++++++++-
- 1 file changed, 11 insertions(+), 1 deletion(-)
-
---- a/drivers/soc/fsl/dpio/qbman-portal.c
-+++ b/drivers/soc/fsl/dpio/qbman-portal.c
-@@ -515,7 +515,17 @@ int qbman_swp_enqueue(struct qbman_swp *
- return -EBUSY;
-
- p = qbman_get_cmd(s, QBMAN_CENA_SWP_EQCR(EQAR_IDX(eqar)));
-- memcpy(&p->dca, &d->dca, 31);
-+ /* This is mapped as DEVICE type memory, writes are
-+ * with address alignment:
-+ * desc.dca address alignment = 1
-+ * desc.seqnum address alignment = 2
-+ * desc.orpid address alignment = 4
-+ * desc.tgtid address alignment = 8
-+ */
-+ p->dca = d->dca;
-+ p->seqnum = d->seqnum;
-+ p->orpid = d->orpid;
-+ memcpy(&p->tgtid, &d->tgtid, 24);
- memcpy(&p->fd, fd, sizeof(*fd));
-
- if ((s->desc->qman_version & QMAN_REV_MASK) < QMAN_REV_5000) {