aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/layerscape/patches-5.4/701-net-0112-sdk_dpaa-Rework-QBMan-portal-mappings.patch
blob: 1752d1e304b4360452d3ffa965094f6ff6eaa05f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
From d0e3e315f49a0a35c7e0bdae934f33ee6b3042a0 Mon Sep 17 00:00:00 2001
From: Roy Pledge <roy.pledge@nxp.com>
Date: Wed, 1 May 2019 16:08:53 -0400
Subject: [PATCH] sdk_dpaa: Rework QBMan portal mappings

Rework the QBMan portal mappings in the SDK driver to
match the mechanism used in the upstream varient.

Signed-off-by: Roy Pledge <roy.pledge@nxp.com>
---
 drivers/staging/fsl_qbman/bman_driver.c | 16 ++++++++--------
 drivers/staging/fsl_qbman/qman_driver.c | 17 +++++++++--------
 2 files changed, 17 insertions(+), 16 deletions(-)

--- a/drivers/staging/fsl_qbman/bman_driver.c
+++ b/drivers/staging/fsl_qbman/bman_driver.c
@@ -199,14 +199,14 @@ static struct bm_portal_config * __init
                                 resource_size(&pcfg->addr_phys[DPA_PORTAL_CI]));
 
 #else
-	pcfg->addr_virt[DPA_PORTAL_CE] = ioremap_prot(
-				pcfg->addr_phys[DPA_PORTAL_CE].start,
-				(unsigned long)len,
-				0);
-	pcfg->addr_virt[DPA_PORTAL_CI] = ioremap_prot(
-				pcfg->addr_phys[DPA_PORTAL_CI].start,
-				resource_size(&pcfg->addr_phys[DPA_PORTAL_CI]),
-				_PAGE_GUARDED | _PAGE_NO_CACHE);
+	pcfg->addr_virt[DPA_PORTAL_CE] =
+		memremap(pcfg->addr_phys[DPA_PORTAL_CE].start,
+			 (unsigned long)len, MEMREMAP_WB);
+
+	pcfg->addr_virt[DPA_PORTAL_CI] =
+		ioremap(pcfg->addr_phys[DPA_PORTAL_CI].start,
+			resource_size(&pcfg->addr_phys[DPA_PORTAL_CI]));
+
 #endif
 	/* disable bp depletion */
 	__raw_writel(0x0, pcfg->addr_virt[DPA_PORTAL_CI] + BM_REG_SCN(0));
--- a/drivers/staging/fsl_qbman/qman_driver.c
+++ b/drivers/staging/fsl_qbman/qman_driver.c
@@ -459,14 +459,15 @@ static struct qm_portal_config * __init
                                 pcfg->addr_phys[DPA_PORTAL_CI].start,
                                 resource_size(&pcfg->addr_phys[DPA_PORTAL_CI]));
 #else
-	pcfg->addr_virt[DPA_PORTAL_CE] = ioremap_prot(
-				pcfg->addr_phys[DPA_PORTAL_CE].start,
-				(unsigned long)len,
-				0);
-	pcfg->addr_virt[DPA_PORTAL_CI] = ioremap_prot(
-				pcfg->addr_phys[DPA_PORTAL_CI].start,
-				resource_size(&pcfg->addr_phys[DPA_PORTAL_CI]),
-				_PAGE_GUARDED | _PAGE_NO_CACHE);
+
+	pcfg->addr_virt[DPA_PORTAL_CE] =
+		memremap(pcfg->addr_phys[DPA_PORTAL_CE].start,
+			 (unsigned long)len, MEMREMAP_WB);
+
+	pcfg->addr_virt[DPA_PORTAL_CI] =
+		ioremap(pcfg->addr_phys[DPA_PORTAL_CI].start,
+			resource_size(&pcfg->addr_phys[DPA_PORTAL_CI]));
+
 #endif
 	return pcfg;
 err: