Hi, On Sat, Sep 29, 2012 at 1:02 PM, Lucas Stach <d...@lynxeye.de> wrote: > Boards may require a different pinmux setup for NAND than the default one. > Add a way to call into board specific code to set this up. > > Signed-off-by: Lucas Stach <d...@lynxeye.de>
I think this is reasonable as is. Acked-by: Simon Glass <s...@chromium.org> Regards, Simon > --- > v2: move pinmux setup to common Tegra board code > --- > arch/arm/include/asm/arch-tegra/board.h | 1 + > board/nvidia/common/board.c | 12 ++++++++++++ > drivers/mtd/nand/tegra_nand.c | 1 - > 3 Dateien geändert, 13 Zeilen hinzugefügt(+), 1 Zeile entfernt(-) > > diff --git a/arch/arm/include/asm/arch-tegra/board.h > b/arch/arm/include/asm/arch-tegra/board.h > index 7e56df7..be6bf25 100644 > --- a/arch/arm/include/asm/arch-tegra/board.h > +++ b/arch/arm/include/asm/arch-tegra/board.h > @@ -43,5 +43,6 @@ void gpio_early_init(void); /* overrideable GPIO config > */ > > void pin_mux_usb(void); /* overrideable USB pinmux setup */ > void pin_mux_spi(void); /* overrideable SPI pinmux setup */ > +void pin_mux_nand(void); /* overrideable NAND pinmux setup */ > > #endif > diff --git a/board/nvidia/common/board.c b/board/nvidia/common/board.c > index dc301e7..2c7cd0d 100644 > --- a/board/nvidia/common/board.c > +++ b/board/nvidia/common/board.c > @@ -27,6 +27,7 @@ > #include <asm/io.h> > #include <asm/arch/clock.h> > #include <asm/arch/emc.h> > +#include <asm/arch/funcmux.h> > #include <asm/arch/pinmux.h> > #include <asm/arch/pmu.h> > #include <asm/arch/tegra.h> > @@ -77,6 +78,13 @@ void __gpio_early_init_uart(void) > void gpio_early_init_uart(void) > __attribute__((weak, alias("__gpio_early_init_uart"))); > > +void __pin_mux_nand(void) > +{ > + funcmux_select(PERIPH_ID_NDFLASH, FUNCMUX_DEFAULT); > +} > + > +void pin_mux_nand(void) __attribute__((weak, alias("__pin_mux_nand"))); > + > /* > * Routine: power_det_init > * Description: turn off power detects > @@ -137,6 +145,10 @@ int board_init(void) > board_usb_init(gd->fdt_blob); > #endif > > +#ifdef CONFIG_TEGRA_NAND > + pin_mux_nand(); > +#endif > + > #ifdef CONFIG_TEGRA_LP0 > /* save Sdram params to PMC 2, 4, and 24 for WB0 */ > warmboot_save_sdram_params(); > diff --git a/drivers/mtd/nand/tegra_nand.c b/drivers/mtd/nand/tegra_nand.c > index 2c1b533..5408c51 100644 > --- a/drivers/mtd/nand/tegra_nand.c > +++ b/drivers/mtd/nand/tegra_nand.c > @@ -992,7 +992,6 @@ int tegra_nand_init(struct nand_chip *nand, int devnum) > /* Adjust timing for NAND device */ > setup_timing(config->timing, info->reg); > > - funcmux_select(PERIPH_ID_NDFLASH, FUNCMUX_DEFAULT); > fdtdec_setup_gpio(&config->wp_gpio); > gpio_direction_output(config->wp_gpio.gpio, 1); > > -- > 1.7.11.4 > _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot