From: Gary McGee <gary.mc...@intel.com>

Signed-off-by: Gary McGee <gary.mc...@intel.com>
---
 arch/arm64/boot/dts/intel/axm56xx.dtsi |  2 +-
 drivers/power/reset/axxia-reset.c      | 11 +++--------
 2 files changed, 4 insertions(+), 9 deletions(-)

diff --git a/arch/arm64/boot/dts/intel/axm56xx.dtsi 
b/arch/arm64/boot/dts/intel/axm56xx.dtsi
index 2576fa8..413551d 100644
--- a/arch/arm64/boot/dts/intel/axm56xx.dtsi
+++ b/arch/arm64/boot/dts/intel/axm56xx.dtsi
@@ -97,7 +97,7 @@
                };
 
                reset: reset@2010031000 {
-                       compatible = "lsi,axm55xx-reset";
+                       compatible = "intel,axm56xx-reset";
                        syscon = <&syscon>;
                };
 
diff --git a/drivers/power/reset/axxia-reset.c 
b/drivers/power/reset/axxia-reset.c
index b23a6dc..a4957fc 100644
--- a/drivers/power/reset/axxia-reset.c
+++ b/drivers/power/reset/axxia-reset.c
@@ -26,6 +26,7 @@
 #include <linux/reboot.h>
 #include <linux/regmap.h>
 
+#define SC_PSCRATCH            0x00dc
 #define SC_CRIT_WRITE_KEY      0x2000
 #define SC_RESET_CONTROL       0x2008
 #define   RSTCTL_RST_CHIP      (1<<1)
@@ -35,25 +36,19 @@ static struct regmap *syscon;
 
 static int ddr_retention_enabled;
 
-#define SYSCON_PHYS_ADDR 0x8002c00000ULL
-
 void
 initiate_retention_reset(void)
 {
-       void __iomem *syscon;
-
        if (0 == ddr_retention_enabled) {
                pr_info("DDR Retention Reset is Not Enabled\n");
                return;
        }
 
-       syscon = ioremap(SYSCON_PHYS_ADDR, SZ_64K);
-
        if (WARN_ON(!syscon))
                return;
 
        /* set retention reset bit in pscratch */
-       writel(0x00000001, syscon + 0xdc); /* Access Key */
+       regmap_write(syscon, SC_PSCRATCH, 1);
 
        /* trap into secure monitor to do the reset */
        machine_restart(NULL);
@@ -143,7 +138,7 @@ static struct platform_driver axxia_reset_driver = {
        .probe = axxia_reset_probe,
        .driver = {
                .name = "axxia-reset",
-               .of_match_table = of_match_ptr(of_axxia_reset_match),
+               .of_match_table = of_axxia_reset_match,
        },
 };
 
-- 
2.7.4

-- 
_______________________________________________
linux-yocto mailing list
linux-yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/linux-yocto

Reply via email to