summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephen Warren <swarren@nvidia.com>2012-10-22 06:19:36 +0000
committerTom Warren <twarren@nvidia.com>2012-10-29 09:07:05 -0700
commita2ab6b7d320423ab4d925d75c588c2a13fce61c6 (patch)
treeb47a19e637893aea4cf23b510890348d20e5306e
parentda1f735272aaccf201b7d289c86fe8c6ff848f4f (diff)
downloadu-boot-imx-a2ab6b7d320423ab4d925d75c588c2a13fce61c6.zip
u-boot-imx-a2ab6b7d320423ab4d925d75c588c2a13fce61c6.tar.gz
u-boot-imx-a2ab6b7d320423ab4d925d75c588c2a13fce61c6.tar.bz2
ARM: tegra: don't request GPIO from Seaboard's SPL
Seaboard has a GPIO that switches an external mux between Tegra's debug UART and SPI flash. This is initialized from the SPL so that SPL debug output can be seen. Simplify the code that does this, and don't actually request the GPIO in the SPL; just program it. This saves ~4.5K from the size of the SPL, mostly BSS due to the large gpio_names[] table that is no longer required. This makes Seaboard's SPL fit within the current max size. Signed-off-by: Stephen Warren <swarren@nvidia.com> Acked-by: Simon Glass <sjg@chromium.org> Acked-by: Allen Martin <amartin@nvidia.com> Tested-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Warren <twarren@nvidia.com>
-rw-r--r--board/nvidia/seaboard/seaboard.c14
1 files changed, 4 insertions, 10 deletions
diff --git a/board/nvidia/seaboard/seaboard.c b/board/nvidia/seaboard/seaboard.c
index ea431e9..c412c07 100644
--- a/board/nvidia/seaboard/seaboard.c
+++ b/board/nvidia/seaboard/seaboard.c
@@ -26,6 +26,7 @@
#include <asm/arch/tegra.h>
#include <asm/arch/clock.h>
#include <asm/arch/funcmux.h>
+#include <asm/arch/gpio.h>
#include <asm/arch/pinmux.h>
#include <asm/arch-tegra/mmc.h>
#include <asm/gpio.h>
@@ -35,21 +36,14 @@
/* TODO: Remove this code when the SPI switch is working */
#if !defined(CONFIG_SPI_UART_SWITCH) && (CONFIG_MACH_TYPE != MACH_TYPE_VENTANA)
-/*
- * Routine: gpio_config_uart_seaboard
- * Description: Force GPIO_PI3 low on Seaboard so UART4 works.
- */
-static void gpio_config_uart_seaboard(void)
+void gpio_early_init_uart(void)
{
/* Enable UART via GPIO_PI3 (port 8, bit 3) so serial console works */
+#ifndef CONFIG_SPL_BUILD
gpio_request(GPIO_PI3, NULL);
+#endif
gpio_direction_output(GPIO_PI3, 0);
}
-
-void gpio_early_init_uart(void)
-{
- gpio_config_uart_seaboard();
-}
#endif
#ifdef CONFIG_TEGRA_MMC