summaryrefslogtreecommitdiff
path: root/board/sunxi/dram_sun4i_auto.c
diff options
context:
space:
mode:
authorHans de Goede <hdegoede@redhat.com>2015-01-17 13:24:55 (GMT)
committerHans de Goede <hdegoede@redhat.com>2015-01-22 11:34:56 (GMT)
commit8ffc487c759b985bff7951cc9a8c1bc55e74bfc5 (patch)
tree72439404dc537a0a1a4f9fc45e2f355214289144 /board/sunxi/dram_sun4i_auto.c
parente18233493e7b3610d98779522726daad53c0d47e (diff)
downloadu-boot-fsl-qoriq-8ffc487c759b985bff7951cc9a8c1bc55e74bfc5.tar.xz
sunxi: Stop differentiating between 512M and 1G variants of the same board
While working on adding more boards I noticed that we lack a config for the 512M cubieboard, and that some of the new boards which I want to add also have 512M and 1G variants, rather then adding 2 defconfig's for all of these, lets switch the exising boards which have both a 512M and 1024M variant over to the sun4i dram autoconfig code. This also drops the foo_RAMSIZE_defconfig variants of boards where we currently have 2 separate configs already. Note: 1) The newly introduced CONFIG_DRAM_EMR1 kconfig value is not used with a value other then its default for now, but we need this to be configurable to support some new boards with auto dram config. 2) We always set all CONFIG_DRAM_foo values in defconfigs, even if they match the defaults, this is done to make it more clear what values are used for a certain board. This has been tested on a Mele A1000, Mini-X and a Cubieboard, all 1G variants, the dram autoconfig code has also been tested on a 512M mk802 (a defconfig for the mk802 is added in a later patch). Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Ian Campbell <ijc@hellion.org.uk>
Diffstat (limited to 'board/sunxi/dram_sun4i_auto.c')
-rw-r--r--board/sunxi/dram_sun4i_auto.c29
1 files changed, 29 insertions, 0 deletions
diff --git a/board/sunxi/dram_sun4i_auto.c b/board/sunxi/dram_sun4i_auto.c
new file mode 100644
index 0000000..826bacf
--- /dev/null
+++ b/board/sunxi/dram_sun4i_auto.c
@@ -0,0 +1,29 @@
+#include <common.h>
+#include <asm/arch/dram.h>
+
+static struct dram_para dram_para = {
+ .clock = CONFIG_DRAM_CLK,
+ .type = 3,
+ .rank_num = 1,
+ .density = 0,
+ .io_width = 0,
+ .bus_width = 0,
+ .cas = 6,
+ .zq = CONFIG_DRAM_ZQ,
+ .odt_en = 0,
+ .size = 0,
+ .tpr0 = 0x30926692,
+ .tpr1 = 0x1090,
+ .tpr2 = 0x1a0c8,
+ .tpr3 = 0,
+ .tpr4 = 0,
+ .tpr5 = 0,
+ .emr1 = CONFIG_DRAM_EMR1,
+ .emr2 = 0,
+ .emr3 = 0,
+};
+
+unsigned long sunxi_dram_init(void)
+{
+ return dramc_init(&dram_para);
+}