diff mbox

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

Message ID 1348948929-29928-1-git-send-email-dev@lynxeye.de
State Accepted
Delegated to: Tom Warren
Headers show

Commit Message

Lucas Stach Sept. 29, 2012, 8:02 p.m. UTC
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@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

Comments

Stephen Warren Oct. 1, 2012, 4:24 p.m. UTC | #1
On 09/29/2012 02:02 PM, Lucas Stach 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.

Seems reasonable enough to me. This series or anything similar that's
also OK with Tom is:
Acked-by: Stephen Warren <swarren@nvidia.com>
Tom Warren Oct. 1, 2012, 4:39 p.m. UTC | #2
Lucas,

On Mon, Oct 1, 2012 at 9:24 AM, Stephen Warren <swarren@wwwdotorg.org> wrote:
> On 09/29/2012 02:02 PM, Lucas Stach 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.
>
> Seems reasonable enough to me. This series or anything similar that's
> also OK with Tom is:
> Acked-by: Stephen Warren <swarren@nvidia.com>
>

I don't think this hurts anything. I'll see if it applies cleanly to
u-boot-tegra/next and let you know.

Tom
Tom Warren Oct. 1, 2012, 5:12 p.m. UTC | #3
Lucas, Stephen, et al.

On Mon, Oct 1, 2012 at 9:39 AM, Tom Warren <twarren.nvidia@gmail.com> wrote:
> Lucas,
>
> On Mon, Oct 1, 2012 at 9:24 AM, Stephen Warren <swarren@wwwdotorg.org> wrote:
>> On 09/29/2012 02:02 PM, Lucas Stach 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.
>>
>> Seems reasonable enough to me. This series or anything similar that's
>> also OK with Tom is:
>> Acked-by: Stephen Warren <swarren@nvidia.com>
>>
>
> I don't think this hurts anything. I'll see if it applies cleanly to
> u-boot-tegra/next and let you know.
>
> Tom

I've applied Lucas' include file cleanup patches, and done a .MAKEALL
-s tegra20 and a checkpatch run w/o error, so I've pushed a new
u-boot-tegra/next to denx.de.

Here are the latest commits in that repo since Albert's last ARM update:

0edfb9c tegra: nand: add board pinmux
a05feff tegra: clean up board include hell
9c53038 tegra: add funcmux entry for NAND attached to KBC
08eb412 tegra20: rework UART GPIO handling
55da8d1 tegra20: add clock_set_pllout function
20e825f tegra20: complete periph_id enum
b1ae54d tegra: enable CONFIG_CMD_PART
0e1b95c Tegra20: Move some include files to arch-tegra for sharing with Tegra30
bfba961 Tegra20: Move some code files to common directories for upcoming Tegra30
4910a5c tegra: Rename Medcom to Medcom-Wide
81637cd tegra: Update Avionic Design vendor prefix

This is what I'm going to base my imminent T30 patches on. Hope to
have something for review in a day or two.

Tom
Lucas Stach Oct. 1, 2012, 5:23 p.m. UTC | #4
Hi Tom,

Am Montag, den 01.10.2012, 10:12 -0700 schrieb Tom Warren:
> Lucas, Stephen, et al.
> 
> On Mon, Oct 1, 2012 at 9:39 AM, Tom Warren <twarren.nvidia@gmail.com> wrote:
> > Lucas,
> >
> > On Mon, Oct 1, 2012 at 9:24 AM, Stephen Warren <swarren@wwwdotorg.org> wrote:
> >> On 09/29/2012 02:02 PM, Lucas Stach 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.
> >>
> >> Seems reasonable enough to me. This series or anything similar that's
> >> also OK with Tom is:
> >> Acked-by: Stephen Warren <swarren@nvidia.com>
> >>
> >
> > I don't think this hurts anything. I'll see if it applies cleanly to
> > u-boot-tegra/next and let you know.
> >
> > Tom
> 
> I've applied Lucas' include file cleanup patches, and done a .MAKEALL
> -s tegra20 and a checkpatch run w/o error, so I've pushed a new
> u-boot-tegra/next to denx.de.
> 
> Here are the latest commits in that repo since Albert's last ARM update:
> 
> 0edfb9c tegra: nand: add board pinmux
> a05feff tegra: clean up board include hell
> 9c53038 tegra: add funcmux entry for NAND attached to KBC
> 08eb412 tegra20: rework UART GPIO handling
> 55da8d1 tegra20: add clock_set_pllout function
> 20e825f tegra20: complete periph_id enum
> b1ae54d tegra: enable CONFIG_CMD_PART
> 0e1b95c Tegra20: Move some include files to arch-tegra for sharing with Tegra30
> bfba961 Tegra20: Move some code files to common directories for upcoming Tegra30
> 4910a5c tegra: Rename Medcom to Medcom-Wide
> 81637cd tegra: Update Avionic Design vendor prefix
> 
> This is what I'm going to base my imminent T30 patches on. Hope to
> have something for review in a day or two.
> 
Can you do a P-R to Albert to include this in the u-boot-arm/next tree?

The reason I'm prodding is that we need the following two patches to
propagate to the u-boot-usb/next tree, to make the the USB driver move
feasible.
0e1b95c Tegra20: Move some include files to arch-tegra for sharing with Tegra30
bfba961 Tegra20: Move some code files to common directories for upcoming Tegra30

As the u-boot/next tree is already open for merging I think the best way
to achieve this is to let it trickle upstream, so that Marek can just
base his next tree on an updated version of u-boot/next. There is no
reason to to wait for the Tegra 3 work to land, except if you plan to
rework the two mentioned commits along the way.

Thanks,
Lucas
Tom Warren Oct. 1, 2012, 8:15 p.m. UTC | #5
Lucas,

On Mon, Oct 1, 2012 at 10:23 AM, Lucas Stach <dev@lynxeye.de> wrote:
> Hi Tom,
>
> Am Montag, den 01.10.2012, 10:12 -0700 schrieb Tom Warren:
>> Lucas, Stephen, et al.
>>
>> On Mon, Oct 1, 2012 at 9:39 AM, Tom Warren <twarren.nvidia@gmail.com> wrote:
>> > Lucas,
>> >
>> > On Mon, Oct 1, 2012 at 9:24 AM, Stephen Warren <swarren@wwwdotorg.org> wrote:
>> >> On 09/29/2012 02:02 PM, Lucas Stach 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.
>> >>
>> >> Seems reasonable enough to me. This series or anything similar that's
>> >> also OK with Tom is:
>> >> Acked-by: Stephen Warren <swarren@nvidia.com>
>> >>
>> >
>> > I don't think this hurts anything. I'll see if it applies cleanly to
>> > u-boot-tegra/next and let you know.
>> >
>> > Tom
>>
>> I've applied Lucas' include file cleanup patches, and done a .MAKEALL
>> -s tegra20 and a checkpatch run w/o error, so I've pushed a new
>> u-boot-tegra/next to denx.de.
>>
>> Here are the latest commits in that repo since Albert's last ARM update:
>>
>> 0edfb9c tegra: nand: add board pinmux
>> a05feff tegra: clean up board include hell
>> 9c53038 tegra: add funcmux entry for NAND attached to KBC
>> 08eb412 tegra20: rework UART GPIO handling
>> 55da8d1 tegra20: add clock_set_pllout function
>> 20e825f tegra20: complete periph_id enum
>> b1ae54d tegra: enable CONFIG_CMD_PART
>> 0e1b95c Tegra20: Move some include files to arch-tegra for sharing with Tegra30
>> bfba961 Tegra20: Move some code files to common directories for upcoming Tegra30
>> 4910a5c tegra: Rename Medcom to Medcom-Wide
>> 81637cd tegra: Update Avionic Design vendor prefix
>>
>> This is what I'm going to base my imminent T30 patches on. Hope to
>> have something for review in a day or two.
>>
> Can you do a P-R to Albert to include this in the u-boot-arm/next tree?
>
> The reason I'm prodding is that we need the following two patches to
> propagate to the u-boot-usb/next tree, to make the the USB driver move
> feasible.
> 0e1b95c Tegra20: Move some include files to arch-tegra for sharing with Tegra30
> bfba961 Tegra20: Move some code files to common directories for upcoming Tegra30
>
> As the u-boot/next tree is already open for merging I think the best way
> to achieve this is to let it trickle upstream, so that Marek can just
> base his next tree on an updated version of u-boot/next. There is no
> reason to to wait for the Tegra 3 work to land, except if you plan to
> rework the two mentioned commits along the way.
>
> Thanks,
> Lucas
>

I usually issue pull requests for u-boot-tegra/master to ARM master.
I'll do one for u-boot-tegra/next to ARM next and see what Albert
says.

Tom
Simon Glass Oct. 2, 2012, 5:04 a.m. UTC | #6
On Sat, Sep 29, 2012 at 1:02 PM, Lucas Stach <dev@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@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@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
>
diff mbox

Patch

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 {