mirror of
https://git.openwrt.org/openwrt/openwrt.git
synced 2024-06-15 03:33:52 +02:00
e06544bdbe
The change which backported the of_get_mac_address() change broke some
patches in the layerscape target so the patches did not apply any more.
This commit makes them apply again and also fixes some other problems
related to this change.
Fixes commit 91a52f22a1
("treewide: backport support for nvmem on non platform devices")
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
50 lines
1.5 KiB
Diff
50 lines
1.5 KiB
Diff
From 7872505a2194c9766c7986e761c0ae9bdd6e5e57 Mon Sep 17 00:00:00 2001
|
|
From: Calvin Johnson <calvin.johnson@nxp.com>
|
|
Date: Tue, 26 Mar 2019 16:52:22 +0530
|
|
Subject: [PATCH] staging: fsl_ppfe/eth: use memremap() to map RAM area used by
|
|
PFE
|
|
|
|
RAM area used by PFE should be mapped using memremap() instead of
|
|
directly traslating physical addr to virtual. This will ensure proper
|
|
checks are done before the area is used.
|
|
|
|
Signed-off-by: Calvin Johnson <calvin.johnson@nxp.com>
|
|
---
|
|
drivers/staging/fsl_ppfe/pfe_ls1012a_platform.c | 10 ++++++----
|
|
1 file changed, 6 insertions(+), 4 deletions(-)
|
|
|
|
--- a/drivers/staging/fsl_ppfe/pfe_ls1012a_platform.c
|
|
+++ b/drivers/staging/fsl_ppfe/pfe_ls1012a_platform.c
|
|
@@ -143,9 +143,10 @@ static int pfe_platform_probe(struct pla
|
|
pfe->ddr_phys_baseaddr = res.start;
|
|
pfe->ddr_size = resource_size(&res);
|
|
|
|
- pfe->ddr_baseaddr = phys_to_virt(res.start);
|
|
+ pfe->ddr_baseaddr = memremap(res.start, resource_size(&res),
|
|
+ MEMREMAP_WB);
|
|
if (!pfe->ddr_baseaddr) {
|
|
- pr_err("ioremap() ddr failed\n");
|
|
+ pr_err("memremap() ddr failed\n");
|
|
rc = -ENOMEM;
|
|
goto err_ddr;
|
|
}
|
|
@@ -235,7 +236,7 @@ err_hif_irq:
|
|
iounmap(pfe->cbus_baseaddr);
|
|
|
|
err_axi:
|
|
- iounmap(pfe->ddr_baseaddr);
|
|
+ memunmap(pfe->ddr_baseaddr);
|
|
|
|
err_ddr:
|
|
platform_set_drvdata(pdev, NULL);
|
|
@@ -259,7 +260,8 @@ static int pfe_platform_remove(struct pl
|
|
rc = pfe_remove(pfe);
|
|
|
|
iounmap(pfe->cbus_baseaddr);
|
|
- iounmap(pfe->ddr_baseaddr);
|
|
+
|
|
+ memunmap(pfe->ddr_baseaddr);
|
|
|
|
platform_set_drvdata(pdev, NULL);
|
|
|