diff options
Diffstat (limited to 'arch/mips/ralink/mt7620.c')
-rw-r--r-- | arch/mips/ralink/mt7620.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/arch/mips/ralink/mt7620.c b/arch/mips/ralink/mt7620.c index af19ae740162..0018b1a661f6 100644 --- a/arch/mips/ralink/mt7620.c +++ b/arch/mips/ralink/mt7620.c | |||
@@ -211,4 +211,24 @@ void prom_soc_init(struct ralink_soc_info *soc_info) | |||
211 | 211 | ||
212 | cfg0 = __raw_readl(sysc + SYSC_REG_SYSTEM_CONFIG0); | 212 | cfg0 = __raw_readl(sysc + SYSC_REG_SYSTEM_CONFIG0); |
213 | dram_type = (cfg0 >> SYSCFG0_DRAM_TYPE_SHIFT) & SYSCFG0_DRAM_TYPE_MASK; | 213 | dram_type = (cfg0 >> SYSCFG0_DRAM_TYPE_SHIFT) & SYSCFG0_DRAM_TYPE_MASK; |
214 | |||
215 | switch (dram_type) { | ||
216 | case SYSCFG0_DRAM_TYPE_SDRAM: | ||
217 | soc_info->mem_size_min = MT7620_SDRAM_SIZE_MIN; | ||
218 | soc_info->mem_size_max = MT7620_SDRAM_SIZE_MAX; | ||
219 | break; | ||
220 | |||
221 | case SYSCFG0_DRAM_TYPE_DDR1: | ||
222 | soc_info->mem_size_min = MT7620_DDR1_SIZE_MIN; | ||
223 | soc_info->mem_size_max = MT7620_DDR1_SIZE_MAX; | ||
224 | break; | ||
225 | |||
226 | case SYSCFG0_DRAM_TYPE_DDR2: | ||
227 | soc_info->mem_size_min = MT7620_DDR2_SIZE_MIN; | ||
228 | soc_info->mem_size_max = MT7620_DDR2_SIZE_MAX; | ||
229 | break; | ||
230 | default: | ||
231 | BUG(); | ||
232 | } | ||
233 | soc_info->mem_base = MT7620_DRAM_BASE; | ||
214 | } | 234 | } |