summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-davinci/spl.c
diff options
context:
space:
mode:
authorMasahiro Yamada <yamada.m@jp.panasonic.com>2015-02-20 17:04:05 +0900
committerTom Rini <trini@ti.com>2015-02-21 08:23:51 -0500
commit601fbec7cf815bc2b26ba2546ac5e8501fc7edae (patch)
tree61c83cdadd3499fcbcf63feb39064ef4130afe3e /arch/arm/mach-davinci/spl.c
parent09f455dca74973ef5e42311162c8dff7e83d44a2 (diff)
downloadtalos-obmc-uboot-601fbec7cf815bc2b26ba2546ac5e8501fc7edae.tar.gz
talos-obmc-uboot-601fbec7cf815bc2b26ba2546ac5e8501fc7edae.zip
ARM: davinci: move SoC sources to mach-davinci
Move arch/arm/cpu/arm926ejs/davinci/* -> arch/arm/mach-davinci/* Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com> Cc: Tom Rini <trini@ti.com>
Diffstat (limited to 'arch/arm/mach-davinci/spl.c')
-rw-r--r--arch/arm/mach-davinci/spl.c65
1 files changed, 65 insertions, 0 deletions
diff --git a/arch/arm/mach-davinci/spl.c b/arch/arm/mach-davinci/spl.c
new file mode 100644
index 0000000000..49349da179
--- /dev/null
+++ b/arch/arm/mach-davinci/spl.c
@@ -0,0 +1,65 @@
+/*
+ * Copyright (C) 2011
+ * Heiko Schocher, DENX Software Engineering, hs@denx.de.
+ *
+ * SPDX-License-Identifier: GPL-2.0+
+ */
+#include <common.h>
+#include <config.h>
+#include <spl.h>
+#include <asm/u-boot.h>
+#include <asm/utils.h>
+#include <nand.h>
+#include <asm/arch/dm365_lowlevel.h>
+#include <ns16550.h>
+#include <malloc.h>
+#include <spi_flash.h>
+#include <mmc.h>
+
+DECLARE_GLOBAL_DATA_PTR;
+
+#ifndef CONFIG_SPL_LIBCOMMON_SUPPORT
+void puts(const char *str)
+{
+ while (*str)
+ putc(*str++);
+}
+
+void putc(char c)
+{
+ if (c == '\n')
+ NS16550_putc((NS16550_t)(CONFIG_SYS_NS16550_COM1), '\r');
+
+ NS16550_putc((NS16550_t)(CONFIG_SYS_NS16550_COM1), c);
+}
+#endif /* CONFIG_SPL_LIBCOMMON_SUPPORT */
+
+void spl_board_init(void)
+{
+#ifdef CONFIG_SOC_DM365
+ dm36x_lowlevel_init(0);
+#endif
+#ifdef CONFIG_SOC_DA8XX
+ arch_cpu_init();
+#endif
+ preloader_console_init();
+}
+
+u32 spl_boot_mode(void)
+{
+ return MMCSD_MODE_RAW;
+}
+
+u32 spl_boot_device(void)
+{
+#ifdef CONFIG_SPL_NAND_SIMPLE
+ return BOOT_DEVICE_NAND;
+#elif defined(CONFIG_SPL_SPI_LOAD)
+ return BOOT_DEVICE_SPI;
+#elif defined(CONFIG_SPL_MMC_LOAD)
+ return BOOT_DEVICE_MMC1;
+#else
+ puts("Unknown boot device\n");
+ hang();
+#endif
+}
OpenPOWER on IntegriCloud