diff options
Diffstat (limited to 'target/linux/layerscape/patches-5.4/701-net-0112-sdk_dpaa-Rework-QBMan-portal-mappings.patch')
-rw-r--r-- | target/linux/layerscape/patches-5.4/701-net-0112-sdk_dpaa-Rework-QBMan-portal-mappings.patch | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/target/linux/layerscape/patches-5.4/701-net-0112-sdk_dpaa-Rework-QBMan-portal-mappings.patch b/target/linux/layerscape/patches-5.4/701-net-0112-sdk_dpaa-Rework-QBMan-portal-mappings.patch new file mode 100644 index 0000000000..1752d1e304 --- /dev/null +++ b/target/linux/layerscape/patches-5.4/701-net-0112-sdk_dpaa-Rework-QBMan-portal-mappings.patch @@ -0,0 +1,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: |