+/* SPDX-License-Identifier: GPL-2.0+ */
/*
* UniPhier SC (System Control) block registers for ARMv8 SoCs
*
- *
- * SPDX-License-Identifier: GPL-2.0+
+ * Copyright (C) 2016 Socionext Inc.
*/
#ifndef SC64_REGS_H
#define SC64_REGS_H
-#define SC_BASE_ADDR 0x61840000
+#ifndef __ASSEMBLY__
+#include <linux/compiler.h>
+extern void __iomem *sc_base;
+#endif
+
+#define SC_BASE 0x61840000
+
+#define SC_RSTCTRL 0x2000
+#define SC_RSTCTRL3 0x2008
+#define SC_RSTCTRL4 0x200c
+#define SC_RSTCTRL5 0x2010
+#define SC_RSTCTRL6 0x2014
+#define SC_RSTCTRL7 0x2018
-#define SC_RSTCTRL (SC_BASE_ADDR | 0x2000)
-#define SC_RSTCTRL3 (SC_BASE_ADDR | 0x2008)
-#define SC_RSTCTRL4 (SC_BASE_ADDR | 0x200c)
-#define SC_RSTCTRL4_ETHER (1 << 6)
-#define SC_RSTCTRL4_NAND (1 << 0)
-#define SC_RSTCTRL5 (SC_BASE_ADDR | 0x2010)
-#define SC_RSTCTRL6 (SC_BASE_ADDR | 0x2014)
-#define SC_RSTCTRL7 (SC_BASE_ADDR | 0x2018)
-#define SC_RSTCTRL7_UMCSB (1 << 16)
-#define SC_RSTCTRL7_UMCA2 (1 << 10)
-#define SC_RSTCTRL7_UMCA1 (1 << 9)
-#define SC_RSTCTRL7_UMCA0 (1 << 8)
-#define SC_RSTCTRL7_UMC32 (1 << 2)
-#define SC_RSTCTRL7_UMC31 (1 << 1)
-#define SC_RSTCTRL7_UMC30 (1 << 0)
+#define SC_CLKCTRL 0x2100
+#define SC_CLKCTRL3 0x2108
+#define SC_CLKCTRL4 0x210c
+#define SC_CLKCTRL5 0x2110
+#define SC_CLKCTRL6 0x2114
+#define SC_CLKCTRL7 0x2118
-#define SC_CLKCTRL (SC_BASE_ADDR | 0x2100)
-#define SC_CLKCTRL3 (SC_BASE_ADDR | 0x2108)
-#define SC_CLKCTRL4 (SC_BASE_ADDR | 0x210c)
-#define SC_CLKCTRL4_PERI (1 << 7)
-#define SC_CLKCTRL4_ETHER (1 << 6)
-#define SC_CLKCTRL4_NAND (1 << 0)
-#define SC_CLKCTRL5 (SC_BASE_ADDR | 0x2110)
-#define SC_CLKCTRL6 (SC_BASE_ADDR | 0x2114)
-#define SC_CLKCTRL7 (SC_BASE_ADDR | 0x2118)
-#define SC_CLKCTRL7_UMCSB (1 << 16)
-#define SC_CLKCTRL7_UMC32 (1 << 2)
-#define SC_CLKCTRL7_UMC31 (1 << 1)
-#define SC_CLKCTRL7_UMC30 (1 << 0)
+#define SC_CA72_GEARST 0x8000
+#define SC_CA72_GEARSET 0x8004
+#define SC_CA72_GEARUPD 0x8008
+#define SC_CA53_GEARST 0x8080
+#define SC_CA53_GEARSET 0x8084
+#define SC_CA53_GEARUPD 0x8088
+#define SC_CA_GEARUPD (1 << 0)
#endif /* SC64_REGS_H */