|
@@ -25,6 +25,8 @@
|
|
|
#include <asm/arch/cpu.h>
|
|
|
#include <asm/arch/gpio.h>
|
|
|
#include <asm/arch/mmc.h>
|
|
|
+#include <asm/arch/periph.h>
|
|
|
+#include <asm/arch/pinmux.h>
|
|
|
|
|
|
DECLARE_GLOBAL_DATA_PTR;
|
|
|
struct exynos4_gpio_part1 *gpio1;
|
|
@@ -39,6 +41,50 @@ int board_init(void)
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
+static int board_uart_init(void)
|
|
|
+{
|
|
|
+ int err;
|
|
|
+
|
|
|
+ err = exynos_pinmux_config(PERIPH_ID_UART0, PINMUX_FLAG_NONE);
|
|
|
+ if (err) {
|
|
|
+ debug("UART0 not configured\n");
|
|
|
+ return err;
|
|
|
+ }
|
|
|
+
|
|
|
+ err = exynos_pinmux_config(PERIPH_ID_UART1, PINMUX_FLAG_NONE);
|
|
|
+ if (err) {
|
|
|
+ debug("UART1 not configured\n");
|
|
|
+ return err;
|
|
|
+ }
|
|
|
+
|
|
|
+ err = exynos_pinmux_config(PERIPH_ID_UART2, PINMUX_FLAG_NONE);
|
|
|
+ if (err) {
|
|
|
+ debug("UART2 not configured\n");
|
|
|
+ return err;
|
|
|
+ }
|
|
|
+
|
|
|
+ err = exynos_pinmux_config(PERIPH_ID_UART3, PINMUX_FLAG_NONE);
|
|
|
+ if (err) {
|
|
|
+ debug("UART3 not configured\n");
|
|
|
+ return err;
|
|
|
+ }
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+#ifdef CONFIG_BOARD_EARLY_INIT_F
|
|
|
+int board_early_init_f(void)
|
|
|
+{
|
|
|
+ int err;
|
|
|
+ err = board_uart_init();
|
|
|
+ if (err) {
|
|
|
+ debug("UART init failed\n");
|
|
|
+ return err;
|
|
|
+ }
|
|
|
+ return err;
|
|
|
+}
|
|
|
+#endif
|
|
|
+
|
|
|
int dram_init(void)
|
|
|
{
|
|
|
gd->ram_size = get_ram_size((long *)PHYS_SDRAM_1, PHYS_SDRAM_1_SIZE)
|