Patchwork [U-Boot,3/3] arm: Tegra2: Add support for NVIDIA Seaboard board Signed-off-by: Tom Warren <twarren@nvidia.com>

login
register
mail settings
Submitter Tom Warren
Date Jan. 11, 2011, 9:06 p.m.
Message ID <1294779987-27262-4-git-send-email-twarren@nvidia.com>
Download mbox | patch
Permalink /patch/78434/
State Superseded
Headers show

Comments

Tom Warren - Jan. 11, 2011, 9:06 p.m.
---
 MAINTAINERS                       |    1 +
 arch/arm/include/asm/mach-types.h |    1 +
 board/tegra2/seaboard/Makefile    |   50 +++++++++++++++++++++++++++++++++++++
 boards.cfg                        |    1 +
 include/configs/seaboard.h        |   43 +++++++++++++++++++++++++++++++
 5 files changed, 96 insertions(+), 0 deletions(-)
 create mode 100644 board/tegra2/seaboard/Makefile
 create mode 100644 include/configs/seaboard.h
Sandeep Paulraj - Jan. 12, 2011, 12:16 a.m.
Hi Tom,

Nice to see support for this board

> #define MACH_TYPE_TI8148EVM            3004
>#define MACH_TYPE_TEGRA_SEABOARD       3005
>+#define MACH_TYPE_SEABOARD             3005


I don't think this is the way it is supposed to be done.
Patches should not contain an addition to mach-types.h.
What is generally done is you ask for an ARM sync request and in the past
Tom Rix and I have updated mach-types.h.

I did this some weeks ago.

Also i think we cannot have 2 EVMs with same MACH_TYPE_
You should probably go to ARM Linux website and register as a separate EVM.
The Number you get from there should be used. I beleive you can also change the name of the 
board there; assu,ing you intend to use MACH_TYPE_SEABOARD  instead of MACH_TYPE_TEGRA_SEABOARD.

It usually takes a little bit of time for the mach-types to be updated in the 
linux kernel. Once that is done we sync up with the kernel.

Regards,
Sandeep
Tom Warren - Jan. 12, 2011, 12:43 a.m.
Thanks, Sandeep.

As I understand it, one of our Tegra2 kernel jockeys (Allen Martin or similar) has already had the kernel version of mach-types.h updated for Seaboard - I was just attempting to use the correct #define (MACH_TYPE_SEABOARD - we dropped all of the MACH_TYPE_TEGRA_ names AFAIK) so my patch would build/boot. Of course this define doesn't matter until the kernel is booting w/the upstreamed U-Boot, which is a ways off (it boots fine here w/our private version of U-Boot based on V2010-09).

Assuming I'm correct about the Linux version of mach-types already having been updated, how do I get a sync request in?  And how is that phased in to match with my patches so that it all builds/boots?

Thanks,

Tom

> -----Original Message-----
> From: Paulraj, Sandeep [mailto:s-paulraj@ti.com]
> Sent: Tuesday, January 11, 2011 5:16 PM
> To: Tom Warren; u-boot@lists.denx.de
> Cc: Tom Warren
> Subject: RE: [U-Boot] [PATCH 3/3] arm: Tegra2: Add support for NVIDIA
> Seaboard board Signed-off-by: Tom Warren <twarren@nvidia.com>
> 
> Hi Tom,
> 
> Nice to see support for this board
> 
> > #define MACH_TYPE_TI8148EVM            3004
> >#define MACH_TYPE_TEGRA_SEABOARD       3005
> >+#define MACH_TYPE_SEABOARD             3005
> 
> 
> I don't think this is the way it is supposed to be done.
> Patches should not contain an addition to mach-types.h.
> What is generally done is you ask for an ARM sync request and in the past
> Tom Rix and I have updated mach-types.h.
> 
> I did this some weeks ago.
> 
> Also i think we cannot have 2 EVMs with same MACH_TYPE_
> You should probably go to ARM Linux website and register as a separate EVM.
> The Number you get from there should be used. I beleive you can also change
> the name of the
> board there; assu,ing you intend to use MACH_TYPE_SEABOARD  instead of
> MACH_TYPE_TEGRA_SEABOARD.
> 
> It usually takes a little bit of time for the mach-types to be updated in
> the
> linux kernel. Once that is done we sync up with the kernel.
> 
> Regards,
> Sandeep
-----------------------------------------------------------------------------------
This email message is for the sole use of the intended recipient(s) and may contain
confidential information.  Any unauthorized review, use, disclosure or distribution
is prohibited.  If you are not the intended recipient, please contact the sender by
reply email and destroy all copies of the original message.
-----------------------------------------------------------------------------------
Sandeep Paulraj - Jan. 12, 2011, 1:59 a.m.
Hi Tom,

We keep the U-Boot in sync with what is at

http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=history;f=arch/arm/tools/mach-types;h=2fea897ebeb12959415120a7c1cdcaf5d8ac8fee;hb=4162cf64973df51fc885825bc9ca4d055891c49f

I can see that the kernel does not have the updated name yet.

Since it is only required while booting a kernel,
i would just keep the old name for the time being. When the kernel has this update, we will 
update U-Boot and then you will have to send in a patch to reflect this change.
In any case u mention that you have follow up patches. By the time u get all the patches
accepted, the mach-types would have been updated in the kernel and in U-boot.

Also in one of ur patches you had updates to serial driver. You will have to keep that
change in a separte patch.

Regards,
Sandeep
Tom Warren - Jan. 12, 2011, 5:05 p.m.
> -----Original Message-----
> From: Paulraj, Sandeep [mailto:s-paulraj@ti.com]
> Sent: Tuesday, January 11, 2011 7:00 PM
> To: Tom Warren; Tom Warren; u-boot@lists.denx.de
> Subject: RE: [U-Boot] [PATCH 3/3] arm: Tegra2: Add support for NVIDIA
> Seaboard board Signed-off-by: Tom Warren <twarren@nvidia.com>
> 
> Hi Tom,
[Tom Warren] Hi. Sorry for top-quoting before. My comments are now in-line.
Note that I've put in a request to my IT department to remove the 'confidential information'
b.s. disclaimer that is appended to all my outgoing Outlook emails. If anyone knows how to get
Gmail to use the standard ">" reply-to quoting, I can start using my Gmail account instead.

> 
> We keep the U-Boot in sync with what is at
> 
> http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-
> 2.6.git;a=history;f=arch/arm/tools/mach-
> types;h=2fea897ebeb12959415120a7c1cdcaf5d8ac8fee;hb=4162cf64973df51fc885825b
> c9ca4d055891c49f
> 
> I can see that the kernel does not have the updated name yet.
[Tom Warren] I'm surprised, since I was told the kernel's copy had been updated.
I'll check with the kernel guys - perhaps it only went into Android's kernel, etc.

> 
> Since it is only required while booting a kernel,
> i would just keep the old name for the time being. When the kernel has this
> update, we will
> update U-Boot and then you will have to send in a patch to reflect this
> change.
> In any case u mention that you have follow up patches. By the time u get all
> the patches
> accepted, the mach-types would have been updated in the kernel and in U-
> boot.
> 
[Tom Warren] Good idea. I'll pull out the mach-types.h change in the next (V2) patch series.

> Also in one of ur patches you had updates to serial driver. You will have to
> keep that change in a separate patch.
[Tom Warren] Why separate? It's an integral part of adding Tegra2 support, which is what the 1st patch does.
But if that's required, then I'll change that, too, in V2.
> 
> Regards,
> Sandeep
> ________________________________________
> From: Tom Warren [TWarren@nvidia.com]
> Sent: Tuesday, January 11, 2011 7:43 PM
> To: Paulraj, Sandeep; Tom Warren; u-boot@lists.denx.de
> Subject: RE: [U-Boot] [PATCH 3/3] arm: Tegra2: Add support for NVIDIA
> Seaboard  board Signed-off-by: Tom Warren <twarren@nvidia.com>
> 
> Thanks, Sandeep.
> 
> As I understand it, one of our Tegra2 kernel jockeys (Allen Martin or
> similar) has already had the kernel version of mach-types.h updated for
> Seaboard - I was just attempting to use the correct #define
> (MACH_TYPE_SEABOARD - we dropped all of the MACH_TYPE_TEGRA_ names AFAIK) so
> my patch would build/boot. Of course this define doesn't matter until the
> kernel is booting w/the upstreamed U-Boot, which is a ways off (it boots
> fine here w/our private version of U-Boot based on V2010-09).
> 
> Assuming I'm correct about the Linux version of mach-types already having
> been updated, how do I get a sync request in?  And how is that phased in to
> match with my patches so that it all builds/boots?
> 
> Thanks,
> 
> Tom
> 
> > -----Original Message-----
> > From: Paulraj, Sandeep [mailto:s-paulraj@ti.com]
> > Sent: Tuesday, January 11, 2011 5:16 PM
> > To: Tom Warren; u-boot@lists.denx.de
> > Cc: Tom Warren
> > Subject: RE: [U-Boot] [PATCH 3/3] arm: Tegra2: Add support for NVIDIA
> > Seaboard board Signed-off-by: Tom Warren <twarren@nvidia.com>
> >
> > Hi Tom,
> >
> > Nice to see support for this board
> >
> > > #define MACH_TYPE_TI8148EVM            3004
> > >#define MACH_TYPE_TEGRA_SEABOARD       3005
> > >+#define MACH_TYPE_SEABOARD             3005
> >
> >
> > I don't think this is the way it is supposed to be done.
> > Patches should not contain an addition to mach-types.h.
> > What is generally done is you ask for an ARM sync request and in the past
> > Tom Rix and I have updated mach-types.h.
> >
> > I did this some weeks ago.
> >
> > Also i think we cannot have 2 EVMs with same MACH_TYPE_
> > You should probably go to ARM Linux website and register as a separate
> EVM.
> > The Number you get from there should be used. I beleive you can also
> change
> > the name of the
> > board there; assu,ing you intend to use MACH_TYPE_SEABOARD  instead of
> > MACH_TYPE_TEGRA_SEABOARD.
> >
> > It usually takes a little bit of time for the mach-types to be updated in
> > the
> > linux kernel. Once that is done we sync up with the kernel.
> >
> > Regards,
> > Sandeep
> ----------------------------------------------------------------------------
> -------
> This email message is for the sole use of the intended recipient(s) and may
> contain
> confidential information.  Any unauthorized review, use, disclosure or
> distribution
> is prohibited.  If you are not the intended recipient, please contact the
> sender by
> reply email and destroy all copies of the original message.
> ----------------------------------------------------------------------------
> -------
Tom Warren - Jan. 12, 2011, 11:10 p.m.
Replying from my Gmail account until NVIDIA IT can remove the canned disclaimer.

Sorry for the top-quote - just wanted to see if Gmail would correctly
quote previous text.

If there are no other critiques or NAKs, etc., then I'll start working
on a V2 patch with
Sandeep's changes.

Thanks,

Tom

On Wed, Jan 12, 2011 at 10:05 AM, Tom Warren <TWarren@nvidia.com> wrote:
>> -----Original Message-----
>> From: Paulraj, Sandeep [mailto:s-paulraj@ti.com]
>> Sent: Tuesday, January 11, 2011 7:00 PM
>> To: Tom Warren; Tom Warren; u-boot@lists.denx.de
>> Subject: RE: [U-Boot] [PATCH 3/3] arm: Tegra2: Add support for NVIDIA
>> Seaboard board Signed-off-by: Tom Warren <twarren@nvidia.com>
>>
>> Hi Tom,
> [Tom Warren] Hi. Sorry for top-quoting before. My comments are now in-line.
> Note that I've put in a request to my IT department to remove the 'confidential information'
> b.s. disclaimer that is appended to all my outgoing Outlook emails. If anyone knows how to get
> Gmail to use the standard ">" reply-to quoting, I can start using my Gmail account instead.
>
>>
>> We keep the U-Boot in sync with what is at
>>
>> http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-
>> 2.6.git;a=history;f=arch/arm/tools/mach-
>> types;h=2fea897ebeb12959415120a7c1cdcaf5d8ac8fee;hb=4162cf64973df51fc885825b
>> c9ca4d055891c49f
>>
>> I can see that the kernel does not have the updated name yet.
> [Tom Warren] I'm surprised, since I was told the kernel's copy had been updated.
> I'll check with the kernel guys - perhaps it only went into Android's kernel, etc.
>
>>
>> Since it is only required while booting a kernel,
>> i would just keep the old name for the time being. When the kernel has this
>> update, we will
>> update U-Boot and then you will have to send in a patch to reflect this
>> change.
>> In any case u mention that you have follow up patches. By the time u get all
>> the patches
>> accepted, the mach-types would have been updated in the kernel and in U-
>> boot.
>>
> [Tom Warren] Good idea. I'll pull out the mach-types.h change in the next (V2) patch series.
>
>> Also in one of ur patches you had updates to serial driver. You will have to
>> keep that change in a separate patch.
> [Tom Warren] Why separate? It's an integral part of adding Tegra2 support, which is what the 1st patch does.
> But if that's required, then I'll change that, too, in V2.
>>
>> Regards,
>> Sandeep
>> ________________________________________
>> From: Tom Warren [TWarren@nvidia.com]
>> Sent: Tuesday, January 11, 2011 7:43 PM
>> To: Paulraj, Sandeep; Tom Warren; u-boot@lists.denx.de
>> Subject: RE: [U-Boot] [PATCH 3/3] arm: Tegra2: Add support for NVIDIA
>> Seaboard  board Signed-off-by: Tom Warren <twarren@nvidia.com>
>>
>> Thanks, Sandeep.
>>
>> As I understand it, one of our Tegra2 kernel jockeys (Allen Martin or
>> similar) has already had the kernel version of mach-types.h updated for
>> Seaboard - I was just attempting to use the correct #define
>> (MACH_TYPE_SEABOARD - we dropped all of the MACH_TYPE_TEGRA_ names AFAIK) so
>> my patch would build/boot. Of course this define doesn't matter until the
>> kernel is booting w/the upstreamed U-Boot, which is a ways off (it boots
>> fine here w/our private version of U-Boot based on V2010-09).
>>
>> Assuming I'm correct about the Linux version of mach-types already having
>> been updated, how do I get a sync request in?  And how is that phased in to
>> match with my patches so that it all builds/boots?
>>
>> Thanks,
>>
>> Tom
>>
>> > -----Original Message-----
>> > From: Paulraj, Sandeep [mailto:s-paulraj@ti.com]
>> > Sent: Tuesday, January 11, 2011 5:16 PM
>> > To: Tom Warren; u-boot@lists.denx.de
>> > Cc: Tom Warren
>> > Subject: RE: [U-Boot] [PATCH 3/3] arm: Tegra2: Add support for NVIDIA
>> > Seaboard board Signed-off-by: Tom Warren <twarren@nvidia.com>
>> >
>> > Hi Tom,
>> >
>> > Nice to see support for this board
>> >
>> > > #define MACH_TYPE_TI8148EVM            3004
>> > >#define MACH_TYPE_TEGRA_SEABOARD       3005
>> > >+#define MACH_TYPE_SEABOARD             3005
>> >
>> >
>> > I don't think this is the way it is supposed to be done.
>> > Patches should not contain an addition to mach-types.h.
>> > What is generally done is you ask for an ARM sync request and in the past
>> > Tom Rix and I have updated mach-types.h.
>> >
>> > I did this some weeks ago.
>> >
>> > Also i think we cannot have 2 EVMs with same MACH_TYPE_
>> > You should probably go to ARM Linux website and register as a separate
>> EVM.
>> > The Number you get from there should be used. I beleive you can also
>> change
>> > the name of the
>> > board there; assu,ing you intend to use MACH_TYPE_SEABOARD  instead of
>> > MACH_TYPE_TEGRA_SEABOARD.
>> >
>> > It usually takes a little bit of time for the mach-types to be updated in
>> > the
>> > linux kernel. Once that is done we sync up with the kernel.
>> >
>> > Regards,
>> > Sandeep
>> ----------------------------------------------------------------------------
>> -------
>> This email message is for the sole use of the intended recipient(s) and may
>> contain
>> confidential information.  Any unauthorized review, use, disclosure or
>> distribution
>> is prohibited.  If you are not the intended recipient, please contact the
>> sender by
>> reply email and destroy all copies of the original message.
>> ----------------------------------------------------------------------------
>> -------
>

Patch

diff --git a/MAINTAINERS b/MAINTAINERS
index b5cff19..f4795d3 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -844,6 +844,7 @@  Prafulla Wadaskar <prafulla@marvell.com>
 Tom Warren <twarren@nvidia.com>
 
 	harmony		Tegra2 (ARM7 & A9 Dual Core)
+	seaboard	Tegra2 (ARM7 & A9 Dual Core)
 
 Matthias Weisser <weisserm@arcor.de>
 
diff --git a/arch/arm/include/asm/mach-types.h b/arch/arm/include/asm/mach-types.h
index 8b0208a..45239f3 100644
--- a/arch/arm/include/asm/mach-types.h
+++ b/arch/arm/include/asm/mach-types.h
@@ -2984,6 +2984,7 @@  extern unsigned int __machine_arch_type;
 #define MACH_TYPE_AWM2                 3003
 #define MACH_TYPE_TI8148EVM            3004
 #define MACH_TYPE_TEGRA_SEABOARD       3005
+#define MACH_TYPE_SEABOARD             3005
 #define MACH_TYPE_LINKSTATION_CHLV2    3006
 #define MACH_TYPE_TERA_PRO2_RACK       3007
 #define MACH_TYPE_RUBYS                3008
diff --git a/board/tegra2/seaboard/Makefile b/board/tegra2/seaboard/Makefile
new file mode 100644
index 0000000..3a146cb
--- /dev/null
+++ b/board/tegra2/seaboard/Makefile
@@ -0,0 +1,50 @@ 
+#
+#  (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
+#
+
+include $(TOPDIR)/config.mk
+
+LIB	= $(obj)lib$(BOARD).o
+
+COBJS	+= ../common/board.o
+
+SRCS	:= $(COBJS:.o=.c)
+OBJS	:= $(addprefix $(obj),$(COBJS))
+
+$(LIB):	$(obj).depend $(OBJS)
+	$(AR) $(ARFLAGS) $@ $(OBJS)
+
+clean:
+	rm -f $(OBJS)
+
+distclean:	clean
+	rm -f $(LIB) core *.bak $(obj).depend
+
+#########################################################################
+
+# defines $(obj).depend target
+include $(SRCTREE)/rules.mk
+
+sinclude $(obj).depend
+
+#########################################################################
diff --git a/boards.cfg b/boards.cfg
index 6562bf5..abdb06d 100644
--- a/boards.cfg
+++ b/boards.cfg
@@ -123,6 +123,7 @@  omap4_sdp4430                arm         armv7       sdp4430             ti
 s5p_goni                     arm         armv7       goni                samsung        s5pc1xx
 smdkc100                     arm         armv7       smdkc100            samsung        s5pc1xx
 harmony                      arm         armv7       harmony             tegra2         tegra2
+seaboard                     arm         armv7       seaboard            tegra2         tegra2
 actux1                       arm         ixp
 actux2                       arm         ixp
 actux3                       arm         ixp
diff --git a/include/configs/seaboard.h b/include/configs/seaboard.h
new file mode 100644
index 0000000..f21849f
--- /dev/null
+++ b/include/configs/seaboard.h
@@ -0,0 +1,43 @@ 
+/*
+ *  (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 __CONFIG_H
+#define __CONFIG_H
+
+#include <asm/sizes.h>
+#include "nv-common.h"
+
+/* High-level configuration options */
+#define TEGRA2_SYSMEM		"mem=384M@0M nvmem=128M@384M mem=512M@512M"
+#define V_PROMPT		"Tegra2 (SeaBoard) # "
+#define CONFIG_TEGRA2_BOARD_STRING	"NVIDIA Seaboard"
+
+/* Board-specific serial config */
+#define CONFIG_SERIAL_MULTI
+#define CONFIG_TEGRA2_ENABLE_UARTD	1
+#define CONFIG_SYS_NS16550_COM1		NV_PA_APB_UARTD_BASE
+
+#define CONFIG_MACH_TYPE		MACH_TYPE_SEABOARD
+#define CONFIG_SYS_BOARD_ODMDATA	0x300d8011 /* lp1, 1GB */
+
+#endif /* __CONFIG_H */