[U-Boot] [PATCH v2 2/6] tegra2: Clean up board code a little

Simon Glass sjg at chromium.org
Thu Sep 22 00:40:03 CEST 2011


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 at chromium.org>
Tested-by: Tom Warren <twarren at nvidia.com>
---
 board/nvidia/common/board.c |   65 +++++++++++++-----------------------------
 board/nvidia/common/board.h |    3 --
 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);
 
-- 
1.7.3.1



More information about the U-Boot mailing list