diff options
Diffstat (limited to 'board/avionic-design/common/tamonten.c')
| -rw-r--r-- | board/avionic-design/common/tamonten.c | 65 | 
1 files changed, 20 insertions, 45 deletions
| diff --git a/board/avionic-design/common/tamonten.c b/board/avionic-design/common/tamonten.c index f23b65704..2c14462eb 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 */ |