blob: e3fa243267b09fd0e2b5e4d636451c33bd1da520 [file] [log] [blame]
Hans de Goede56333be2015-01-21 16:14:00 +01001/* DRAM parameters for auto dram configuration on sun5i and sun7i */
Hans de Goede6c46c8e2015-01-17 22:31:30 +01002
3#include <common.h>
4#include <asm/arch/dram.h>
5
6static struct dram_para dram_para = {
7 .clock = CONFIG_DRAM_CLK,
Siarhei Siamashka47e35012015-02-01 00:27:06 +02008 .mbus_clock = CONFIG_DRAM_MBUS_CLK,
Hans de Goede6c46c8e2015-01-17 22:31:30 +01009 .type = 3,
10 .rank_num = 1,
11 .density = 0,
12 .io_width = 0,
13 .bus_width = 0,
Hans de Goede6c46c8e2015-01-17 22:31:30 +010014 .zq = CONFIG_DRAM_ZQ,
Hans de Goede8975cdf2015-05-13 15:00:46 +020015 .odt_en = IS_ENABLED(CONFIG_DRAM_ODT_EN),
Hans de Goede6c46c8e2015-01-17 22:31:30 +010016 .size = 0,
Siarhei Siamashkad1336472015-02-01 00:27:05 +020017#ifdef CONFIG_DRAM_TIMINGS_VENDOR_MAGIC
18 .cas = 9,
Hans de Goede6c46c8e2015-01-17 22:31:30 +010019 .tpr0 = 0x42d899b7,
20 .tpr1 = 0xa090,
21 .tpr2 = 0x22a00,
Siarhei Siamashkad1336472015-02-01 00:27:05 +020022 .emr2 = 0x10,
23#else
24# include "dram_timings_sun4i.h"
Siarhei Siamashka47e35012015-02-01 00:27:06 +020025 .active_windowing = 1,
Siarhei Siamashkad1336472015-02-01 00:27:05 +020026#endif
Adam Sampson8d6e18d2015-02-23 20:44:10 +000027 .tpr3 = CONFIG_DRAM_TPR3,
Hans de Goede6c46c8e2015-01-17 22:31:30 +010028 .tpr4 = 0,
29 .tpr5 = 0,
30 .emr1 = CONFIG_DRAM_EMR1,
Hans de Goede6c46c8e2015-01-17 22:31:30 +010031 .emr3 = 0,
Siarhei Siamashka47e35012015-02-01 00:27:06 +020032 .dqs_gating_delay = CONFIG_DRAM_DQS_GATING_DELAY,
Hans de Goede6c46c8e2015-01-17 22:31:30 +010033};
34
35unsigned long sunxi_dram_init(void)
36{
37 return dramc_init(&dram_para);
38}