summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2011-09-21 12:40:03 +0000
committerAlbert ARIBAUD <albert.u.boot@aribaud.net>2011-10-27 21:56:29 +0200
commit3e00dbdf24250548bdf702a79713befae5640723 (patch)
treec0dd7c0840de9ff70199e4f234e2c681a8f437fd
parent03c609f69b12dca47b9422595fdde29be1fb35c9 (diff)
downloadu-boot-imx-3e00dbdf24250548bdf702a79713befae5640723.zip
u-boot-imx-3e00dbdf24250548bdf702a79713befae5640723.tar.gz
u-boot-imx-3e00dbdf24250548bdf702a79713befae5640723.tar.bz2
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>
-rw-r--r--board/nvidia/common/board.c65
-rw-r--r--board/nvidia/common/board.h3
2 files changed, 20 insertions, 48 deletions
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 @@ const struct tegra2_sysinfo sysinfo = {
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 @@ static void pin_mux_uart(void)
#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 @@ static void pin_mux_mmc(void)
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 @@ int board_mmc_getcd(u8 *cd, struct mmc *mmc)
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);