ARM: uniphier: move SBC and Support Card init code to U-Boot proper

Initialize SBC and Support Card in U-Boot proper instead of SPL.

We may run different firmware (ex. ARM Trusted Firmware) before
U-Boot, and basic SoC initialization may be done there.  In that
case, SPL may not be used.

The motivation for preparing SBC and Support Card in SPL was to use
LED for early debugging, but this is not mandatory to boot SoCs.
With this commit, LED will be unavailable in SPL, but we can use a
debug serial instead.  So, this change will not be a big deal.

Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
diff --git a/arch/arm/mach-uniphier/board_init.c b/arch/arm/mach-uniphier/board_init.c
index d698dd5..93330b0 100644
--- a/arch/arm/mach-uniphier/board_init.c
+++ b/arch/arm/mach-uniphier/board_init.c
@@ -81,6 +81,7 @@
 struct uniphier_initdata {
 	enum uniphier_soc_id soc_id;
 	bool nand_2cs;
+	void (*sbc_init)(void);
 	void (*pll_init)(void);
 	void (*clk_init)(void);
 	void (*misc_init)(void);
@@ -91,6 +92,7 @@
 	{
 		.soc_id = SOC_UNIPHIER_SLD3,
 		.nand_2cs = true,
+		.sbc_init = uniphier_sbc_init_admulti,
 		.pll_init = uniphier_sld3_pll_init,
 		.clk_init = uniphier_ld4_clk_init,
 	},
@@ -99,6 +101,7 @@
 	{
 		.soc_id = SOC_UNIPHIER_LD4,
 		.nand_2cs = true,
+		.sbc_init = uniphier_ld4_sbc_init,
 		.pll_init = uniphier_ld4_pll_init,
 		.clk_init = uniphier_ld4_clk_init,
 	},
@@ -107,6 +110,7 @@
 	{
 		.soc_id = SOC_UNIPHIER_PRO4,
 		.nand_2cs = false,
+		.sbc_init = uniphier_sbc_init_savepin,
 		.pll_init = uniphier_pro4_pll_init,
 		.clk_init = uniphier_pro4_clk_init,
 	},
@@ -115,6 +119,7 @@
 	{
 		.soc_id = SOC_UNIPHIER_SLD8,
 		.nand_2cs = true,
+		.sbc_init = uniphier_ld4_sbc_init,
 		.pll_init = uniphier_ld4_pll_init,
 		.clk_init = uniphier_ld4_clk_init,
 	},
@@ -123,6 +128,7 @@
 	{
 		.soc_id = SOC_UNIPHIER_PRO5,
 		.nand_2cs = true,
+		.sbc_init = uniphier_sbc_init_savepin,
 		.clk_init = uniphier_pro5_clk_init,
 	},
 #endif
@@ -130,6 +136,7 @@
 	{
 		.soc_id = SOC_UNIPHIER_PXS2,
 		.nand_2cs = true,
+		.sbc_init = uniphier_pxs2_sbc_init,
 		.clk_init = uniphier_pxs2_clk_init,
 	},
 #endif
@@ -137,6 +144,7 @@
 	{
 		.soc_id = SOC_UNIPHIER_LD6B,
 		.nand_2cs = true,
+		.sbc_init = uniphier_pxs2_sbc_init,
 		.clk_init = uniphier_pxs2_clk_init,
 	},
 #endif
@@ -144,6 +152,7 @@
 	{
 		.soc_id = SOC_UNIPHIER_LD11,
 		.nand_2cs = false,
+		.sbc_init = uniphier_ld11_sbc_init,
 		.pll_init = uniphier_ld11_pll_init,
 		.clk_init = uniphier_ld11_clk_init,
 		.misc_init = uniphier_ld11_misc_init,
@@ -153,6 +162,7 @@
 	{
 		.soc_id = SOC_UNIPHIER_LD20,
 		.nand_2cs = false,
+		.sbc_init = uniphier_ld11_sbc_init,
 		.pll_init = uniphier_ld20_pll_init,
 		.misc_init = uniphier_ld20_misc_init,
 	},
@@ -187,6 +197,12 @@
 		return -EINVAL;
 	}
 
+	initdata->sbc_init();
+
+	support_card_init();
+
+	led_puts("U0");
+
 	if (IS_ENABLED(CONFIG_NAND_DENALI)) {
 		ret = uniphier_pin_init(initdata->nand_2cs ?
 					"nand2cs_grp" : "nand_grp");