[U-Boot] [PATCH 3/5] sun6i: dram: Do not try to initialize a second dram chan on A31s
Hans de Goede
hdegoede at redhat.com
Sun Nov 16 17:16:51 CET 2014
The A31s only has one dram channel, so do not bother with trying to initalize
a second channel.
Signed-off-by: Hans de Goede <hdegoede at redhat.com>
---
arch/arm/cpu/armv7/sunxi/Makefile | 2 +-
arch/arm/cpu/armv7/sunxi/dram_sun6i.c | 11 +++++++++--
2 files changed, 10 insertions(+), 3 deletions(-)
diff --git a/arch/arm/cpu/armv7/sunxi/Makefile b/arch/arm/cpu/armv7/sunxi/Makefile
index 3b6ae47..1337b60 100644
--- a/arch/arm/cpu/armv7/sunxi/Makefile
+++ b/arch/arm/cpu/armv7/sunxi/Makefile
@@ -10,6 +10,7 @@
obj-y += timer.o
obj-y += board.o
obj-y += clock.o
+obj-y += cpu_info.o
obj-y += pinmux.o
obj-$(CONFIG_MACH_SUN6I) += prcm.o
obj-$(CONFIG_MACH_SUN8I) += prcm.o
@@ -21,7 +22,6 @@ obj-$(CONFIG_MACH_SUN7I) += clock_sun4i.o
obj-$(CONFIG_MACH_SUN8I) += clock_sun6i.o
ifndef CONFIG_SPL_BUILD
-obj-y += cpu_info.o
ifdef CONFIG_ARMV7_PSCI
obj-y += psci.o
endif
diff --git a/arch/arm/cpu/armv7/sunxi/dram_sun6i.c b/arch/arm/cpu/armv7/sunxi/dram_sun6i.c
index 30439dc..2ac0b58 100644
--- a/arch/arm/cpu/armv7/sunxi/dram_sun6i.c
+++ b/arch/arm/cpu/armv7/sunxi/dram_sun6i.c
@@ -372,10 +372,15 @@ unsigned long sunxi_dram_init(void)
.rows = 16,
};
+ /* A31s only has one channel */
+ if (sunxi_get_ss_bonding_id() == SUNXI_SS_BOND_ID_A31S)
+ para.chan = 1;
+
mctl_sys_init();
mctl_dll_init(0, ¶);
- mctl_dll_init(1, ¶);
+ if (para.chan == 2)
+ mctl_dll_init(1, ¶);
setbits_le32(&mctl_com->ccr,
MCTL_CCR_MASTER_CLK_EN |
@@ -383,7 +388,9 @@ unsigned long sunxi_dram_init(void)
MCTL_CCR_CH1_CLK_EN);
mctl_channel_init(0, ¶);
- mctl_channel_init(1, ¶);
+ if (para.chan == 2)
+ mctl_channel_init(1, ¶);
+
mctl_com_init(¶);
mctl_port_cfg();
--
2.1.0
More information about the U-Boot
mailing list