summaryrefslogtreecommitdiff
path: root/arch/arm/mach-uniphier/spl.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-uniphier/spl.c')
-rw-r--r--arch/arm/mach-uniphier/spl.c59
1 files changed, 59 insertions, 0 deletions
diff --git a/arch/arm/mach-uniphier/spl.c b/arch/arm/mach-uniphier/spl.c
new file mode 100644
index 0000000..8a4eafc
--- /dev/null
+++ b/arch/arm/mach-uniphier/spl.c
@@ -0,0 +1,59 @@
+/*
+ * Copyright (C) 2013-2015 Panasonic Corporation
+ * Author: Masahiro Yamada <yamada.m@jp.panasonic.com>
+ *
+ * SPDX-License-Identifier: GPL-2.0+
+ */
+
+#include <common.h>
+#include <spl.h>
+#include <linux/compiler.h>
+#include <asm/arch/led.h>
+#include <asm/arch/board.h>
+
+void __weak bcu_init(void)
+{
+};
+void sbc_init(void);
+void sg_init(void);
+void pll_init(void);
+void pin_init(void);
+void clkrst_init(void);
+int umc_init(void);
+void enable_dpll_ssc(void);
+
+void spl_board_init(void)
+{
+ bcu_init();
+
+ sbc_init();
+
+ sg_init();
+
+ uniphier_board_reset();
+
+ pll_init();
+
+ uniphier_board_init();
+
+ led_write(L, 0, , );
+
+ clkrst_init();
+
+ led_write(L, 1, , );
+
+ {
+ int res;
+
+ res = umc_init();
+ if (res < 0) {
+ while (1)
+ ;
+ }
+ }
+ led_write(L, 2, , );
+
+ enable_dpll_ssc();
+
+ led_write(L, 3, , );
+}