[U-Boot] [PATCH v2 1/2] tegra: clean up board include hell

Simon Glass sjg at chromium.org
Tue Oct 2 07:04:18 CEST 2012


On Sat, Sep 29, 2012 at 1:02 PM, Lucas Stach <dev at lynxeye.de> wrote:
> The prototypes used in board files were all scattered out, which lead to
> code duplication between SPL and normal U-Boot and some prototypes not actually
> being used. Consolidate this in a common board header.
>
> Signed-off-by: Lucas Stach <dev at lynxeye.de>
> ---
> v2: remove wrong paragraph about how to move ahead in the commit message
> ---
>  arch/arm/cpu/arm720t/tegra-common/board.h | 25 ---------------------
>  arch/arm/cpu/arm720t/tegra-common/spl.c   |  2 +-
>  arch/arm/cpu/tegra-common/board.c         |  1 +
>  arch/arm/include/asm/arch-tegra/board.h   | 19 +++++++++++++++-
>  board/nvidia/common/board.c               |  1 -
>  board/nvidia/common/board.h               | 37 -------------------------------
>  board/nvidia/common/uart-spi-switch.c     |  2 +-
>  7 Dateien geändert, 21 Zeilen hinzugefügt(+), 66 Zeilen entfernt(-)
>  delete mode 100644 arch/arm/cpu/arm720t/tegra-common/board.h
>  delete mode 100644 board/nvidia/common/board.h

Acked-by: Simon Glass <sjg at chromium.org>

>
> diff --git a/arch/arm/cpu/arm720t/tegra-common/board.h b/arch/arm/cpu/arm720t/tegra-common/board.h
> deleted file mode 100644
> index 260767d..0000000
> --- a/arch/arm/cpu/arm720t/tegra-common/board.h
> +++ /dev/null
> @@ -1,25 +0,0 @@
> -/*
> - * (C) Copyright 2010-2011
> - * NVIDIA Corporation <www.nvidia.com>
> - *
> - * See file CREDITS for list of people who contributed to this
> - * project.
> - *
> - * This program is free software; you can redistribute it and/or
> - * modify it under the terms of the GNU General Public License as
> - * published by the Free Software Foundation; either version 2 of
> - * the License, or (at your option) any later version.
> - *
> - * This program is distributed in the hope that it will be useful,
> - * but WITHOUT ANY WARRANTY; without even the implied warranty of
> - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> - * GNU General Public License for more details.
> - *
> - * You should have received a copy of the GNU General Public License
> - * along with this program; if not, write to the Free Software
> - * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
> - * MA 02111-1307 USA
> - */
> -
> -void board_init_uart_f(void);
> -void gpio_early_init_uart(void);
> diff --git a/arch/arm/cpu/arm720t/tegra-common/spl.c b/arch/arm/cpu/arm720t/tegra-common/spl.c
> index dfe36b9..0d37ce8 100644
> --- a/arch/arm/cpu/arm720t/tegra-common/spl.c
> +++ b/arch/arm/cpu/arm720t/tegra-common/spl.c
> @@ -33,13 +33,13 @@
>  #include <image.h>
>  #include <malloc.h>
>  #include <linux/compiler.h>
> -#include "board.h"
>  #include "cpu.h"
>
>  #include <asm/io.h>
>  #include <asm/arch/clock.h>
>  #include <asm/arch/pinmux.h>
>  #include <asm/arch/tegra.h>
> +#include <asm/arch-tegra/board.h>
>  #include <asm/arch-tegra/clk_rst.h>
>  #include <asm/arch-tegra/pmc.h>
>  #include <asm/arch-tegra/scu.h>
> diff --git a/arch/arm/cpu/tegra-common/board.c b/arch/arm/cpu/tegra-common/board.c
> index ff90a52..b2e10c6 100644
> --- a/arch/arm/cpu/tegra-common/board.c
> +++ b/arch/arm/cpu/tegra-common/board.c
> @@ -26,6 +26,7 @@
>  #include <asm/arch/clock.h>
>  #include <asm/arch/funcmux.h>
>  #include <asm/arch/tegra.h>
> +#include <asm/arch-tegra/board.h>
>  #include <asm/arch-tegra/pmc.h>
>  #include <asm/arch-tegra/sys_proto.h>
>  #include <asm/arch-tegra/warmboot.h>
> diff --git a/arch/arm/include/asm/arch-tegra/board.h b/arch/arm/include/asm/arch-tegra/board.h
> index a90d36c..7e56df7 100644
> --- a/arch/arm/include/asm/arch-tegra/board.h
> +++ b/arch/arm/include/asm/arch-tegra/board.h
> @@ -24,7 +24,24 @@
>  #ifndef _TEGRA_BOARD_H_
>  #define _TEGRA_BOARD_H_
>
> -/* Setup UARTs for the board according to the selected config */
> +/* Set up pinmux to make UART usable */
> +void gpio_config_uart(void);      /* CONFIG_SPI_UART_SWITCH */
> +void gpio_early_init_uart(void);  /*!CONFIG_SPI_UART_SWITCH */
> +
> +/* Set up early UART output */
>  void board_init_uart_f(void);
>
> +/* Set up any early GPIOs the board might need for proper operation */
> +void gpio_early_init(void);  /* overrideable GPIO config        */
> +
> +/*
> + * Hooks to allow boards to set up the pinmux for a specific function.
> + * Has to be implemented in the board files as we don't yet support pinmux
> + * setup from FTD. If a board file does not implement one of those functions
> + * an empty stub function will be called.
> + */
> +
> +void pin_mux_usb(void);      /* overrideable USB pinmux setup   */
> +void pin_mux_spi(void);      /* overrideable SPI pinmux setup   */
> +
>  #endif
> diff --git a/board/nvidia/common/board.c b/board/nvidia/common/board.c
> index bd194bc..dc301e7 100644
> --- a/board/nvidia/common/board.c
> +++ b/board/nvidia/common/board.c
> @@ -39,7 +39,6 @@
>  #include <asm/arch-tegra/warmboot.h>
>  #include <spi.h>
>  #include <i2c.h>
> -#include "board.h"
>  #include "emc.h"
>
>  DECLARE_GLOBAL_DATA_PTR;
> diff --git a/board/nvidia/common/board.h b/board/nvidia/common/board.h
> deleted file mode 100644
> index dada4c4..0000000
> --- a/board/nvidia/common/board.h
> +++ /dev/null
> @@ -1,37 +0,0 @@
> -/*
> - *  (C) Copyright 2010,2011
> - *  NVIDIA Corporation <www.nvidia.com>
> - *
> - * See file CREDITS for list of people who contributed to this
> - * project.
> - *
> - * This program is free software; you can redistribute it and/or
> - * modify it under the terms of the GNU General Public License as
> - * published by the Free Software Foundation; either version 2 of
> - * the License, or (at your option) any later version.
> - *
> - * This program is distributed in the hope that it will be useful,
> - * but WITHOUT ANY WARRANTY; without even the implied warranty of
> - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> - * GNU General Public License for more details.
> - *
> - * You should have received a copy of the GNU General Public License
> - * along with this program; if not, write to the Free Software
> - * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
> - * MA 02111-1307 USA
> - */
> -
> -#ifndef _BOARD_H_
> -#define _BOARD_H_
> -
> -void gpio_config_uart(void);
> -void gpio_early_init(void);
> -void gpio_early_init_uart(void);
> -
> -/*
> - * Set up any pin muxing needed for USB (for now, since fdt doesn't support
> - * it). Boards can overwrite the default fucction which does nothing.
> - */
> -void pin_mux_usb(void);
> -
> -#endif /* BOARD_H */
> diff --git a/board/nvidia/common/uart-spi-switch.c b/board/nvidia/common/uart-spi-switch.c
> index a0aeb7f..e9d445d 100644
> --- a/board/nvidia/common/uart-spi-switch.c
> +++ b/board/nvidia/common/uart-spi-switch.c
> @@ -26,7 +26,7 @@
>  #include <asm/arch/uart-spi-switch.h>
>  #include <asm/arch/tegra.h>
>  #include <asm/arch-tegra/tegra_spi.h>
> -
> +#include <asm/arch-tegra/board.h>
>
>  /* position of the UART/SPI select switch */
>  enum spi_uart_switch {
> --
> 1.7.11.4
>


More information about the U-Boot mailing list