diff options
author | Vitaly Andrianov <vitalya@ti.com> | 2016-03-04 16:36:43 (GMT) |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2016-03-14 23:18:45 (GMT) |
commit | 8efc24374176be3047f1585304fd33d5afca4dcb (patch) | |
tree | e5d37421dfaaee824a092c8da1a71b70e015b5ca /arch/arm/mach-keystone/include | |
parent | d9a76e77c8c99dc6da98aef94e0a241581d1cbe7 (diff) | |
download | u-boot-fsl-qoriq-8efc24374176be3047f1585304fd33d5afca4dcb.tar.xz |
ARM: keystone2: use detected ddr3a size
Because KS2 u-boot works in 32 bit address space the existing ram_size
global data field cannot be used. The maximum, which the get_ram_size()
can detect is 2GB only. The ft_board_setup() needs the actual ddr3 size
to fix up dtb.
This commit introduces the ddr3_get_size() which uses SPD data to
calculate the ddr3 size. This function replaces the "ddr3_size"
environment variable, which was used to get the SODIMM size.
For platforms, which don't have SODIMM with SPD and ddr3 is populated to
a board a simple ddr3_get_size function that returns ddr3 size has to be
implemented. See hardware-k2l.h
Signed-off-by: Vitaly Andrianov <vitalya@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Diffstat (limited to 'arch/arm/mach-keystone/include')
-rw-r--r-- | arch/arm/mach-keystone/include/mach/ddr3.h | 1 | ||||
-rw-r--r-- | arch/arm/mach-keystone/include/mach/hardware-k2l.h | 7 |
2 files changed, 8 insertions, 0 deletions
diff --git a/arch/arm/mach-keystone/include/mach/ddr3.h b/arch/arm/mach-keystone/include/mach/ddr3.h index 68d3cb4..5feffe8 100644 --- a/arch/arm/mach-keystone/include/mach/ddr3.h +++ b/arch/arm/mach-keystone/include/mach/ddr3.h @@ -66,5 +66,6 @@ void ddr3_err_reset_workaround(void); void ddr3_enable_ecc(u32 base, int test); void ddr3_init_ddrphy(u32 base, struct ddr3_phy_config *phy_cfg); void ddr3_init_ddremif(u32 base, struct ddr3_emif_config *emif_cfg); +int ddr3_get_size(void); #endif diff --git a/arch/arm/mach-keystone/include/mach/hardware-k2l.h b/arch/arm/mach-keystone/include/mach/hardware-k2l.h index 4f1197e..a59e071 100644 --- a/arch/arm/mach-keystone/include/mach/hardware-k2l.h +++ b/arch/arm/mach-keystone/include/mach/hardware-k2l.h @@ -105,4 +105,11 @@ /* NETCP */ #define KS2_NETCP_BASE 0x26000000 +#ifndef __ASSEMBLY__ +static inline int ddr3_get_size(void) +{ + return 2; +} +#endif + #endif /* __ASM_ARCH_HARDWARE_K2L_H */ |