summaryrefslogtreecommitdiffstats
path: root/board/avionic-design/common/tamonten.c
diff options
context:
space:
mode:
Diffstat (limited to 'board/avionic-design/common/tamonten.c')
-rw-r--r--board/avionic-design/common/tamonten.c65
1 files changed, 20 insertions, 45 deletions
diff --git a/board/avionic-design/common/tamonten.c b/board/avionic-design/common/tamonten.c
index f23b657041..2c14462eb6 100644
--- a/board/avionic-design/common/tamonten.c
+++ b/board/avionic-design/common/tamonten.c
@@ -1,7 +1,7 @@
/*
* (C) Copyright 2010,2011
* NVIDIA Corporation <www.nvidia.com>
- * (C) Copyright 2011
+ * (C) Copyright 2011-2012
* Avionic Design GmbH <www.avionic-design.de>
*
* See file CREDITS for list of people who contributed to this
@@ -36,75 +36,50 @@
#include <asm/arch/pinmux.h>
#include <asm/arch/uart.h>
#include <asm/arch/mmc.h>
-#include "tamonten.h"
-#ifdef CONFIG_TEGRA2_MMC
+#ifdef CONFIG_TEGRA_MMC
#include <mmc.h>
#endif
-DECLARE_GLOBAL_DATA_PTR;
-
-const struct tegra2_sysinfo sysinfo = {
- CONFIG_TEGRA2_BOARD_STRING
-};
-
/*
- * Routine: timer_init
- * Description: init the timestamp and lastinc value
+ * Routine: gpio_config_uart
+ * Description: Does nothing on Tamonten - no conflict w/SPI.
*/
-int timer_init(void)
+void gpio_config_uart(void)
{
- return 0;
}
-#ifdef CONFIG_TEGRA2_MMC
-/*
- * Routine: pin_mux_mmc
- * Description: setup the pin muxes/tristate values for the SDMMC(s)
- */
-static void pin_mux_mmc(void)
+#ifdef CONFIG_BOARD_EARLY_INIT_F
+void gpio_early_init(void)
{
- funcmux_select(PERIPH_ID_SDMMC4, FUNCMUX_SDMMC4_ATB_GMA_GME_8_BIT);
+ gpio_request(GPIO_PI4, NULL);
+ gpio_direction_output(GPIO_PI4, 1);
}
#endif
+#ifdef CONFIG_TEGRA_MMC
/*
- * Routine: board_init
- * Description: Early hardware init.
+ * Routine: pin_mux_mmc
+ * Description: setup the pin muxes/tristate values for the SDMMC(s)
*/
-int board_init(void)
+static void pin_mux_mmc(void)
{
- clock_init();
- clock_verify();
-
- /* boot param addr */
- gd->bd->bi_boot_params = (NV_PA_SDRAM_BASE + 0x100);
-
- return 0;
+ funcmux_select(PERIPH_ID_SDMMC4, FUNCMUX_SDMMC4_ATB_GMA_GME_8_BIT);
+ /* for write-protect GPIO PI6 */
+ pinmux_tristate_disable(PINGRP_ATA);
+ /* for CD GPIO PH2 */
+ pinmux_tristate_disable(PINGRP_ATD);
}
-#ifdef CONFIG_TEGRA2_MMC
/* this is a weak define that we are overriding */
int board_mmc_init(bd_t *bd)
{
- debug("board_mmc_init called\n");
/* Enable muxes, etc. for SDMMC controllers */
pin_mux_mmc();
- gpio_config_mmc();
- debug("board_mmc_init: init eMMC\n");
- /* init dev 0, eMMC chip, with 4-bit bus */
- tegra2_mmc_init(0, 4, -1, GPIO_PH2);
+ /* init dev 0, SD slot, with 4-bit bus */
+ tegra2_mmc_init(0, 4, GPIO_PI6, GPIO_PH2);
return 0;
}
#endif
-
-#ifdef CONFIG_BOARD_EARLY_INIT_F
-int board_early_init_f(void)
-{
- /* Initialize selected UARTs */
- board_init_uart_f();
- return 0;
-}
-#endif /* EARLY_INIT */
OpenPOWER on IntegriCloud