summaryrefslogtreecommitdiffstats
path: root/arch/arm/include/asm/arch-zynq/hardware.h
diff options
context:
space:
mode:
authorMichal Simek <michal.simek@xilinx.com>2013-06-17 14:37:01 +0200
committerMichal Simek <michal.simek@xilinx.com>2013-08-12 08:59:55 +0200
commit148ba55cc618eaca19d7c86bdc003a7a71ee3a92 (patch)
treeb16460d9e03b64975ea70c2629584c401991f466 /arch/arm/include/asm/arch-zynq/hardware.h
parenta78dac79ede7fbb4c9e816abc879655540c3f076 (diff)
downloadtalos-obmc-uboot-148ba55cc618eaca19d7c86bdc003a7a71ee3a92.tar.gz
talos-obmc-uboot-148ba55cc618eaca19d7c86bdc003a7a71ee3a92.zip
zynq: Add new ddrc driver for ECC support
The first 1MB is not initialized by first stage bootloader. Check if memory is setup to 16bit mode and ECC is enabled. If it is, clear the first 1MB. Also u-boot should report only the half size of memory. Acked-by: Jagannadha Sutradharudu Teki <jaganna@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Diffstat (limited to 'arch/arm/include/asm/arch-zynq/hardware.h')
-rw-r--r--arch/arm/include/asm/arch-zynq/hardware.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/arm/include/asm/arch-zynq/hardware.h b/arch/arm/include/asm/arch-zynq/hardware.h
index 25f0e3d9c7..ca56d8a2db 100644
--- a/arch/arm/include/asm/arch-zynq/hardware.h
+++ b/arch/arm/include/asm/arch-zynq/hardware.h
@@ -17,6 +17,7 @@
#define ZYNQ_SDHCI_BASEADDR1 0xE0101000
#define ZYNQ_I2C_BASEADDR0 0xE0004000
#define ZYNQ_I2C_BASEADDR1 0xE0005000
+#define ZYNQ_DDRC_BASEADDR 0xF8006000
/* Reflect slcr offsets */
struct slcr_regs {
@@ -84,4 +85,11 @@ struct scu_regs {
#define scu_base ((struct scu_regs *)ZYNQ_SCU_BASEADDR)
+struct ddrc_regs {
+ u32 ddrc_ctrl; /* 0x0 */
+ u32 reserved[60];
+ u32 ecc_scrub; /* 0xF4 */
+};
+#define ddrc_base ((struct ddrc_regs *)ZYNQ_DDRC_BASEADDR)
+
#endif /* _ASM_ARCH_HARDWARE_H */
OpenPOWER on IntegriCloud