tegra2: Clean up board code a little
This removes clock_init() and pinmux_init() which are names better suited
to those respective modules. By moving board_init_f() to the bottom of the
file we can remove the need for so many functions in the board.h header file.
The only clock/pinmux/gpio init we need to do prior to relocation is
for the UART.
Signed-off-by: Simon Glass <sjg@chromium.org>
Tested-by: Tom Warren <twarren@nvidia.com>
diff --git a/board/nvidia/common/board.c b/board/nvidia/common/board.c
index 32d3cfb..5e28b4c 100644
--- a/board/nvidia/common/board.c
+++ b/board/nvidia/common/board.c
@@ -43,24 +43,6 @@
CONFIG_TEGRA2_BOARD_STRING
};
-#ifdef CONFIG_BOARD_EARLY_INIT_F
-int board_early_init_f(void)
-{
- /* Initialize periph clocks */
- clock_init();
-
- /* Initialize periph pinmuxes */
- pinmux_init();
-
- /* Initialize periph GPIOs */
- gpio_init();
-
- /* Init UART, scratch regs, and start CPU */
- tegra2_start();
- return 0;
-}
-#endif /* EARLY_INIT */
-
/*
* Routine: timer_init
* Description: init the timestamp and lastinc value
@@ -155,6 +137,7 @@
#endif /* CONFIG_TEGRA2_ENABLE_UARTD */
}
+#ifdef CONFIG_TEGRA2_MMC
/*
* Routine: clock_init_mmc
* Description: init the PLL and clocks for the SDMMC controllers
@@ -235,33 +218,7 @@
pinmux_tristate_disable(PIN_SDD);
pinmux_tristate_disable(PIN_SDB);
}
-
-/*
- * Routine: clock_init
- * Description: Do individual peripheral clock reset/enables
- */
-void clock_init(void)
-{
- clock_init_uart();
-}
-
-/*
- * Routine: pinmux_init
- * Description: Do individual peripheral pinmux configs
- */
-void pinmux_init(void)
-{
- pin_mux_uart();
-}
-
-/*
- * Routine: gpio_init
- * Description: Do individual peripheral GPIO configs
- */
-void gpio_init(void)
-{
- gpio_config_uart();
-}
+#endif
/*
* Routine: board_init
@@ -307,3 +264,21 @@
return 0;
}
#endif
+
+#ifdef CONFIG_BOARD_EARLY_INIT_F
+int board_early_init_f(void)
+{
+ /* Initialize UART clocks */
+ clock_init_uart();
+
+ /* Initialize periph pinmuxes */
+ pin_mux_uart();
+
+ /* Initialize periph GPIOs */
+ gpio_config_uart();
+
+ /* Init UART, scratch regs, and start CPU */
+ tegra2_start();
+ return 0;
+}
+#endif /* EARLY_INIT */
diff --git a/board/nvidia/common/board.h b/board/nvidia/common/board.h
index 4334c02..d649eb7 100644
--- a/board/nvidia/common/board.h
+++ b/board/nvidia/common/board.h
@@ -25,9 +25,6 @@
#define _BOARD_H_
void tegra2_start(void);
-void clock_init(void);
-void pinmux_init(void);
-void gpio_init(void);
void gpio_config_uart(void);
int tegra2_mmc_init(int dev_index, int bus_width);