summaryrefslogtreecommitdiff
path: root/arch/arm/include/asm/arch-rockchip/hardware.h
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2015-08-30 16:55:28 -0600
committerSimon Glass <sjg@chromium.org>2015-09-02 21:28:23 -0600
commit26ad30e9d3ec445f61f94910fb14cc6e7d8efa25 (patch)
treeb42ab70473504698cd6c8b095bd8c0d803ca3935 /arch/arm/include/asm/arch-rockchip/hardware.h
parent1f8f7730a8a3c8cc73ecb5715f5d87ed55fec541 (diff)
rockchip: Add basic peripheral and clock definitions
Add header files for the peripherals and clocks supported on Rockchip platforms. The particular implementation (and register set) for each is SoC-specific, but it seems that the naming can be generic. Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'arch/arm/include/asm/arch-rockchip/hardware.h')
-rw-r--r--arch/arm/include/asm/arch-rockchip/hardware.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/arch/arm/include/asm/arch-rockchip/hardware.h b/arch/arm/include/asm/arch-rockchip/hardware.h
new file mode 100644
index 0000000000..d5af5b87ef
--- /dev/null
+++ b/arch/arm/include/asm/arch-rockchip/hardware.h
@@ -0,0 +1,20 @@
+/*
+ * Copyright 2015 Google, Inc
+ *
+ * SPDX-License-Identifier: GPL-2.0+
+ */
+
+#ifndef _ASM_ARCH_HARDWARE_H
+#define _ASM_ARCH_HARDWARE_H
+
+#define RK_CLRSETBITS(clr, set) ((((clr) | (set)) << 16) | set)
+#define RK_SETBITS(set) RK_CLRSETBITS(0, set)
+#define RK_CLRBITS(clr) RK_CLRSETBITS(clr, 0)
+
+#define TIMER7_BASE 0xff810020
+
+#define rk_clrsetreg(addr, clr, set) writel((clr) << 16 | (set), addr)
+#define rk_clrreg(addr, clr) writel((clr) << 16, addr)
+#define rk_setreg(addr, set) writel(set, addr)
+
+#endif