summaryrefslogtreecommitdiff
path: root/src/cpu/samsung/exynos5420/cpu.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/cpu/samsung/exynos5420/cpu.h')
-rw-r--r--src/cpu/samsung/exynos5420/cpu.h76
1 files changed, 76 insertions, 0 deletions
diff --git a/src/cpu/samsung/exynos5420/cpu.h b/src/cpu/samsung/exynos5420/cpu.h
index 7cdd35e38f..05be3cc021 100644
--- a/src/cpu/samsung/exynos5420/cpu.h
+++ b/src/cpu/samsung/exynos5420/cpu.h
@@ -93,6 +93,82 @@
/* Distance between each Trust Zone PC register set */
#define TZPC_BASE_OFFSET 0x10000
+/* EXYNOS5420 Common*/
+#define EXYNOS5420_I2C_SPACING 0x10000
+
+#define EXYNOS5420_GPIO_PART6_BASE 0x03860000
+#define EXYNOS5420_PRO_ID 0x10000000
+#define EXYNOS5420_CLOCK_BASE 0x10010000
+#define EXYNOS5420_POWER_BASE 0x10040000
+#define EXYNOS5420_SWRESET 0x10040400
+#define EXYNOS5420_SYSREG_BASE 0x10050000
+#define EXYNOS5420_WATCHDOG_BASE 0x101D0000
+#define EXYNOS5420_DMC_PHY0_BASE 0x10C00000
+#define EXYNOS5420_DMC_PHY1_BASE 0x10C10000
+#define EXYNOS5420_DMC_DREXI_0 0x10C20000
+#define EXYNOS5420_DMC_DREXI_1 0x10C30000
+#define EXYNOS5420_DMC_TZASC_0 0x10D40000
+#define EXYNOS5420_DMC_TZASC_1 0x10D50000
+#define EXYNOS5420_USB_HOST_XHCI_BASE 0x12000000
+#define EXYNOS5420_USB3PHY_BASE 0x12100000
+#define EXYNOS5420_USB_HOST_EHCI_BASE 0x12110000
+#define EXYNOS5420_MMC_BASE 0x12200000
+#define EXYNOS5420_SROMC_BASE 0x12250000
+#define EXYNOS5420_UART_BASE 0x12C00000
+#define EXYNOS5420_I2C_BASE 0x12C60000
+#define EXYNOS5420_I2C_8910_BASE 0x12E00000
+#define EXYNOS5420_SPI_BASE 0x12D20000
+#define EXYNOS5420_I2S_BASE 0x12D60000
+#define EXYNOS5420_PWMTIMER_BASE 0x12DD0000
+#define EXYNOS5420_SPI_ISP_BASE 0x131A0000
+#define EXYNOS5420_GPIO_PART2_BASE 0x13400000
+#define EXYNOS5420_GPIO_PART3_BASE 0x13400C00
+#define EXYNOS5420_GPIO_PART4_BASE 0x13410000
+#define EXYNOS5420_GPIO_PART5_BASE 0x14000000
+#define EXYNOS5420_GPIO_PART1_BASE 0x14010000
+#define EXYNOS5420_MIPI_DSIM_BASE 0x14500000
+#define EXYNOS5420_DP_BASE 0x145B0000
+#define EXYNOS5420_INF_REG_BASE 0x10040800
+
+#define EXYNOS5420_USBPHY_BASE DEVICE_NOT_AVAILABLE
+#define EXYNOS5420_USBOTG_BASE DEVICE_NOT_AVAILABLE
+#define EXYNOS5420_FIMD_BASE DEVICE_NOT_AVAILABLE
+#define EXYNOS5420_ADC_BASE DEVICE_NOT_AVAILABLE
+#define EXYNOS5420_MODEM_BASE DEVICE_NOT_AVAILABLE
+
+#define ARM_CORE0_CONFIG (EXYNOS5420_POWER_BASE + 0x2000)
+#define ARM_CORE0_STATUS (EXYNOS5420_POWER_BASE + 0x2004)
+#define CORE_CONFIG_OFFSET 0x80
+#define CORE_COUNT 0x8
+
+/*
+ * POWER
+ */
+#define PMU_BASE EXYNOS5420_POWER_BASE
+#define SW_RST_REG_OFFSET 0x400
+
+#define INF_REG_BASE EXYNOS5420_INF_REG_BASE
+#define INF_REG0_OFFSET 0x00
+#define INF_REG1_OFFSET 0x04
+#define INF_REG2_OFFSET 0x08
+#define INF_REG3_OFFSET 0x0C
+#define INF_REG4_OFFSET 0x10
+#define INF_REG5_OFFSET 0x14
+#define INF_REG6_OFFSET 0x18
+#define INF_REG7_OFFSET 0x1C
+
+#define PMU_SPARE_BASE (EXYNOS5420_INF_REG_BASE + 0x100)
+#define PMU_SPARE_0 PMU_SPARE_BASE
+#define PMU_SPARE_1 (PMU_SPARE_BASE + 0x4)
+#define PMU_SPARE_2 (PMU_SPARE_BASE + 0x8)
+#define PMU_SPARE_3 (PMU_SPARE_BASE + 0xc)
+#define RST_FLAG_REG PMU_SPARE_BASE
+#define RST_FLAG_VAL 0xfcba0d10
+
+#define PAD_RETENTION_DRAM_STATUS (EXYNOS5420_POWER_BASE + 0x3004)
+#define PAD_RETENTION_DRAM_COREBLK_OPTION (EXYNOS5420_POWER_BASE + 0x31E8)
+#define PAD_RETENTION_DRAM_COREBLK_VAL 0x10000000
+
#define samsung_get_base_adc() ((struct exynos5_adc *)EXYNOS5_ADC_BASE)
#define samsung_get_base_clock() ((struct exynos5_clock *)EXYNOS5_CLOCK_BASE)
#define samsung_get_base_ace_sfr() ((struct exynos5_ace_sfr *)EXYNOS5_ACE_SFR_BASE)