mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH v7 0/3] Add support for tegra2 based ventana board
@ 2011-10-03 13:18 Peter De Schrijver
  2011-10-03 13:18 ` [PATCH v7 1/3] arm/tegra: prepare Seaboard pinmux code for derived boards Peter De Schrijver
                   ` (3 more replies)
  0 siblings, 4 replies; 8+ messages in thread
From: Peter De Schrijver @ 2011-10-03 13:18 UTC (permalink / raw)
  To: pdeschrijver
  Cc: Russell King, Colin Cross, Erik Gilling, Olof Johansson,
	linux-arm-kernel, linux-kernel, linux-tegra

This patch set adds support for the tegra2 based ventana development board.

Boot tested on ventana.                                                                                                                               

Uses a table based approach to select the correct init function.

Fix some compiler errors.

Peter De Schrijver (3):
  arm/tegra: prepare Seaboard pinmux code for derived boards
  arm/tegra: add support for ventana pinmuxing
  arm/tegra: device tree support for ventana board

 arch/arm/boot/dts/tegra-ventana.dts         |   32 ++++++++++++++
 arch/arm/mach-tegra/Kconfig                 |    6 +++
 arch/arm/mach-tegra/Makefile                |    1 +
 arch/arm/mach-tegra/Makefile.boot           |    1 +
 arch/arm/mach-tegra/board-dt.c              |    5 ++-
 arch/arm/mach-tegra/board-seaboard-pinmux.c |   63 ++++++++++++++++++++++++---
 6 files changed, 101 insertions(+), 7 deletions(-)
 create mode 100644 arch/arm/boot/dts/tegra-ventana.dts


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH v7 1/3] arm/tegra: prepare Seaboard pinmux code for derived boards
  2011-10-03 13:18 [PATCH v7 0/3] Add support for tegra2 based ventana board Peter De Schrijver
@ 2011-10-03 13:18 ` Peter De Schrijver
  2011-10-03 13:18 ` [PATCH v7 2/3] arm/tegra: add support for ventana pinmuxing Peter De Schrijver
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 8+ messages in thread
From: Peter De Schrijver @ 2011-10-03 13:18 UTC (permalink / raw)
  To: pdeschrijver
  Cc: Russell King, Colin Cross, Erik Gilling, Olof Johansson,
	linux-arm-kernel, linux-kernel, linux-tegra

This patch splits out the common part of pinmux and GPIO initialization for
seaboard and derived boards. This code is based on work done by Jong Kim
<jongk@nvidia.com>.

Signed-off-by: Peter De Schrijver <pdeschrijver@nvidia.com>
---
 arch/arm/mach-tegra/board-seaboard-pinmux.c |   14 ++++++++++----
 1 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/arch/arm/mach-tegra/board-seaboard-pinmux.c b/arch/arm/mach-tegra/board-seaboard-pinmux.c
index 74f78b7..b31c765 100644
--- a/arch/arm/mach-tegra/board-seaboard-pinmux.c
+++ b/arch/arm/mach-tegra/board-seaboard-pinmux.c
@@ -1,5 +1,6 @@
 /*
- * Copyright (C) 2010 NVIDIA Corporation
+ * Copyright (C) 2010,2011 NVIDIA Corporation
+ * Copyright (C) 2011 Google, Inc.
  *
  * This software is licensed under the terms of the GNU General Public
  * License version 2, as published by the Free Software Foundation, and
@@ -160,7 +161,7 @@ static __initdata struct tegra_pingroup_config seaboard_pinmux[] = {
 
 
 
-static struct tegra_gpio_table gpio_table[] = {
+static struct tegra_gpio_table common_gpio_table[] = {
 	{ .gpio = TEGRA_GPIO_SD2_CD,		.enable = true },
 	{ .gpio = TEGRA_GPIO_SD2_WP,		.enable = true },
 	{ .gpio = TEGRA_GPIO_SD2_POWER,		.enable = true },
@@ -171,12 +172,17 @@ static struct tegra_gpio_table gpio_table[] = {
 	{ .gpio = TEGRA_GPIO_USB1,		.enable = true },
 };
 
-void __init seaboard_pinmux_init(void)
+static void __init seaboard_common_pinmux_init(void)
 {
 	tegra_pinmux_config_table(seaboard_pinmux, ARRAY_SIZE(seaboard_pinmux));
 
 	tegra_drive_pinmux_config_table(seaboard_drive_pinmux,
 					ARRAY_SIZE(seaboard_drive_pinmux));
 
-	tegra_gpio_config(gpio_table, ARRAY_SIZE(gpio_table));
+	tegra_gpio_config(common_gpio_table, ARRAY_SIZE(common_gpio_table));
+}
+
+void __init seaboard_pinmux_init(void)
+{
+	seaboard_common_pinmux_init();
 }
-- 
1.7.7.rc0.72.g4b5ea.dirty


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH v7 2/3] arm/tegra: add support for ventana pinmuxing
  2011-10-03 13:18 [PATCH v7 0/3] Add support for tegra2 based ventana board Peter De Schrijver
  2011-10-03 13:18 ` [PATCH v7 1/3] arm/tegra: prepare Seaboard pinmux code for derived boards Peter De Schrijver
@ 2011-10-03 13:18 ` Peter De Schrijver
  2011-10-03 13:18 ` [PATCH v7 3/3] arm/tegra: device tree support for ventana board Peter De Schrijver
  2011-10-07 18:00 ` [PATCH v7 0/3] Add support for tegra2 based " Stephen Warren
  3 siblings, 0 replies; 8+ messages in thread
From: Peter De Schrijver @ 2011-10-03 13:18 UTC (permalink / raw)
  To: pdeschrijver
  Cc: Russell King, Colin Cross, Erik Gilling, Olof Johansson,
	linux-arm-kernel, linux-kernel, linux-tegra

Add support for ventana pinmuxing as a seaboard derivative. This is a cut down
version of work done by Jong Kim <jongk@nvidia.com>.

Signed-off-by: Peter De Schrijver <pdeschrijver@nvidia.com>
---
 arch/arm/mach-tegra/Makefile                |    1 +
 arch/arm/mach-tegra/board-seaboard-pinmux.c |   49 +++++++++++++++++++++++++-
 2 files changed, 48 insertions(+), 2 deletions(-)

diff --git a/arch/arm/mach-tegra/Makefile b/arch/arm/mach-tegra/Makefile
index f11b910..91a07e1 100644
--- a/arch/arm/mach-tegra/Makefile
+++ b/arch/arm/mach-tegra/Makefile
@@ -31,6 +31,7 @@ obj-${CONFIG_MACH_SEABOARD}             += board-seaboard-pinmux.o
 
 obj-${CONFIG_MACH_TEGRA_DT}             += board-dt.o
 obj-${CONFIG_MACH_TEGRA_DT}             += board-harmony-pinmux.o
+obj-${CONFIG_MACH_TEGRA_DT}             += board-seaboard-pinmux.o
 
 obj-${CONFIG_MACH_TRIMSLICE}            += board-trimslice.o
 obj-${CONFIG_MACH_TRIMSLICE}            += board-trimslice-pinmux.o
diff --git a/arch/arm/mach-tegra/board-seaboard-pinmux.c b/arch/arm/mach-tegra/board-seaboard-pinmux.c
index b31c765..b62b04d 100644
--- a/arch/arm/mach-tegra/board-seaboard-pinmux.c
+++ b/arch/arm/mach-tegra/board-seaboard-pinmux.c
@@ -158,8 +158,26 @@ static __initdata struct tegra_pingroup_config seaboard_pinmux[] = {
 	{TEGRA_PINGROUP_XM2D,  TEGRA_MUX_NONE,          TEGRA_PUPD_NORMAL,    TEGRA_TRI_NORMAL},
 };
 
-
-
+static __initdata struct tegra_pingroup_config ventana_pinmux[] = {
+	{TEGRA_PINGROUP_DAP3, TEGRA_MUX_DAP3,     TEGRA_PUPD_NORMAL,    TEGRA_TRI_TRISTATE},
+	{TEGRA_PINGROUP_DDC,  TEGRA_MUX_RSVD2,    TEGRA_PUPD_NORMAL,    TEGRA_TRI_NORMAL},
+	{TEGRA_PINGROUP_DTA,  TEGRA_MUX_VI,       TEGRA_PUPD_PULL_DOWN, TEGRA_TRI_NORMAL},
+	{TEGRA_PINGROUP_DTB,  TEGRA_MUX_VI,       TEGRA_PUPD_PULL_DOWN, TEGRA_TRI_NORMAL},
+	{TEGRA_PINGROUP_DTC,  TEGRA_MUX_VI,       TEGRA_PUPD_PULL_DOWN, TEGRA_TRI_NORMAL},
+	{TEGRA_PINGROUP_DTD,  TEGRA_MUX_VI,       TEGRA_PUPD_PULL_DOWN, TEGRA_TRI_NORMAL},
+	{TEGRA_PINGROUP_GMD,  TEGRA_MUX_SFLASH,   TEGRA_PUPD_NORMAL,    TEGRA_TRI_TRISTATE},
+	{TEGRA_PINGROUP_LPW0, TEGRA_MUX_RSVD4,    TEGRA_PUPD_NORMAL,    TEGRA_TRI_NORMAL},
+	{TEGRA_PINGROUP_LPW2, TEGRA_MUX_RSVD4,    TEGRA_PUPD_NORMAL,    TEGRA_TRI_NORMAL},
+	{TEGRA_PINGROUP_LSC1, TEGRA_MUX_RSVD4,    TEGRA_PUPD_NORMAL,    TEGRA_TRI_NORMAL},
+	{TEGRA_PINGROUP_LSCK, TEGRA_MUX_RSVD4,    TEGRA_PUPD_NORMAL,    TEGRA_TRI_TRISTATE},
+	{TEGRA_PINGROUP_LSDA, TEGRA_MUX_RSVD4,    TEGRA_PUPD_NORMAL,    TEGRA_TRI_TRISTATE},
+	{TEGRA_PINGROUP_PTA,  TEGRA_MUX_RSVD2,    TEGRA_PUPD_NORMAL,    TEGRA_TRI_NORMAL},
+	{TEGRA_PINGROUP_SLXC, TEGRA_MUX_SDIO3,    TEGRA_PUPD_NORMAL,    TEGRA_TRI_NORMAL},
+	{TEGRA_PINGROUP_SLXK, TEGRA_MUX_SDIO3,    TEGRA_PUPD_NORMAL,    TEGRA_TRI_NORMAL},
+	{TEGRA_PINGROUP_SPIA, TEGRA_MUX_GMI,      TEGRA_PUPD_NORMAL,    TEGRA_TRI_TRISTATE},
+	{TEGRA_PINGROUP_SPIC, TEGRA_MUX_GMI,      TEGRA_PUPD_NORMAL,    TEGRA_TRI_TRISTATE},
+	{TEGRA_PINGROUP_SPIG, TEGRA_MUX_SPI2_ALT, TEGRA_PUPD_NORMAL,    TEGRA_TRI_TRISTATE},
+};
 
 static struct tegra_gpio_table common_gpio_table[] = {
 	{ .gpio = TEGRA_GPIO_SD2_CD,		.enable = true },
@@ -172,6 +190,26 @@ static struct tegra_gpio_table common_gpio_table[] = {
 	{ .gpio = TEGRA_GPIO_USB1,		.enable = true },
 };
 
+static void __init update_pinmux(struct tegra_pingroup_config *newtbl, int size)
+{
+	int i, j;
+	struct tegra_pingroup_config *new_pingroup, *base_pingroup;
+
+	/* Update base seaboard pinmux table with secondary board
+	 * specific pinmux table table.
+	 */
+	for (i = 0; i < size; i++) {
+		new_pingroup = &newtbl[i];
+		for (j = 0; j < ARRAY_SIZE(seaboard_pinmux); j++) {
+			base_pingroup = &seaboard_pinmux[j];
+			if (new_pingroup->pingroup == base_pingroup->pingroup) {
+				*base_pingroup = *new_pingroup;
+				break;
+			}
+		}
+	}
+}
+
 static void __init seaboard_common_pinmux_init(void)
 {
 	tegra_pinmux_config_table(seaboard_pinmux, ARRAY_SIZE(seaboard_pinmux));
@@ -186,3 +224,10 @@ void __init seaboard_pinmux_init(void)
 {
 	seaboard_common_pinmux_init();
 }
+
+void __init ventana_pinmux_init(void)
+{
+	update_pinmux(ventana_pinmux, ARRAY_SIZE(ventana_pinmux));
+	seaboard_common_pinmux_init();
+}
+
-- 
1.7.7.rc0.72.g4b5ea.dirty


^ permalink raw reply	[flat|nested] 8+ messages in thread

* [PATCH v7 3/3] arm/tegra: device tree support for ventana board
  2011-10-03 13:18 [PATCH v7 0/3] Add support for tegra2 based ventana board Peter De Schrijver
  2011-10-03 13:18 ` [PATCH v7 1/3] arm/tegra: prepare Seaboard pinmux code for derived boards Peter De Schrijver
  2011-10-03 13:18 ` [PATCH v7 2/3] arm/tegra: add support for ventana pinmuxing Peter De Schrijver
@ 2011-10-03 13:18 ` Peter De Schrijver
  2011-10-07 18:04   ` Stephen Warren
  2011-10-07 18:00 ` [PATCH v7 0/3] Add support for tegra2 based " Stephen Warren
  3 siblings, 1 reply; 8+ messages in thread
From: Peter De Schrijver @ 2011-10-03 13:18 UTC (permalink / raw)
  To: pdeschrijver
  Cc: Russell King, Colin Cross, Erik Gilling, Olof Johansson,
	linux-arm-kernel, linux-kernel, linux-tegra

Change-Id: I5ed18750e6a8aa3242dae4bcd7165cfd819356d2
Signed-off-by: Peter De Schrijver <pdeschrijver@nvidia.com>
---
 arch/arm/boot/dts/tegra-ventana.dts |   32 ++++++++++++++++++++++++++++++++
 arch/arm/mach-tegra/Kconfig         |    6 ++++++
 arch/arm/mach-tegra/Makefile.boot   |    1 +
 arch/arm/mach-tegra/board-dt.c      |   26 +++++++++++++++++++++-----
 4 files changed, 60 insertions(+), 5 deletions(-)
 create mode 100644 arch/arm/boot/dts/tegra-ventana.dts

diff --git a/arch/arm/boot/dts/tegra-ventana.dts b/arch/arm/boot/dts/tegra-ventana.dts
new file mode 100644
index 0000000..9b29a62
--- /dev/null
+++ b/arch/arm/boot/dts/tegra-ventana.dts
@@ -0,0 +1,32 @@
+/dts-v1/;
+
+/memreserve/ 0x1c000000 0x04000000;
+/include/ "tegra20.dtsi"
+
+/ {
+	model = "NVIDIA Tegra2 Ventana evaluation board";
+	compatible = "nvidia,ventana", "nvidia,tegra20";
+
+	chosen {
+		bootargs = "vmalloc=192M video=tegrafb console=ttyS0,115200n8 root=/dev/ram rdinit=/sbin/init";
+	};
+
+	memory {
+		reg = < 0x00000000 0x40000000 >;
+	};
+
+	serial@70006300 {
+		clock-frequency = < 216000000 >;
+	};
+
+	sdhci@c8000400 {
+		cd-gpios = <&gpio 69 0>; /* gpio PI5 */
+		wp-gpios = <&gpio 57 0>; /* gpio PH1 */
+		power-gpios = <&gpio 155 0>; /* gpio PT3 */
+	};
+
+	sdhci@c8000600 {
+		power-gpios = <&gpio 70 0>; /* gpio PI6 */
+		support-8bit;
+	};
+};
diff --git a/arch/arm/mach-tegra/Kconfig b/arch/arm/mach-tegra/Kconfig
index d82ebab..91aff7c 100644
--- a/arch/arm/mach-tegra/Kconfig
+++ b/arch/arm/mach-tegra/Kconfig
@@ -69,6 +69,12 @@ config MACH_WARIO
        help
          Support for the Wario version of Seaboard
 
+config MACH_VENTANA
+       bool "Ventana board"
+       select MACH_TEGRA_DT
+       help
+         Support for the nVidia Ventana development platform
+
 choice
         prompt "Low-level debug console UART"
         default TEGRA_DEBUG_UART_NONE
diff --git a/arch/arm/mach-tegra/Makefile.boot b/arch/arm/mach-tegra/Makefile.boot
index 5e870d2..bd12c9f 100644
--- a/arch/arm/mach-tegra/Makefile.boot
+++ b/arch/arm/mach-tegra/Makefile.boot
@@ -4,3 +4,4 @@ initrd_phys-$(CONFIG_ARCH_TEGRA_2x_SOC)	:= 0x00800000
 
 dtb-$(CONFIG_MACH_HARMONY) += tegra-harmony.dtb
 dtb-$(CONFIG_MACH_SEABOARD) += tegra-seaboard.dtb
+dtb-$(CONFIG_MACH_VENTANA) += tegra-ventana.dtb
diff --git a/arch/arm/mach-tegra/board-dt.c b/arch/arm/mach-tegra/board-dt.c
index 9f47e04..1b4cf6e 100644
--- a/arch/arm/mach-tegra/board-dt.c
+++ b/arch/arm/mach-tegra/board-dt.c
@@ -47,7 +47,7 @@
 
 void harmony_pinmux_init(void);
 void seaboard_pinmux_init(void);
-
+void ventana_pinmux_init(void);
 
 struct of_dev_auxdata tegra20_auxdata_lookup[] __initdata = {
 	OF_DEV_AUXDATA("nvidia,tegra20-sdhci", TEGRA_SDMMC1_BASE, "sdhci-tegra.0", NULL),
@@ -80,9 +80,19 @@ static struct of_device_id tegra_dt_gic_match[] __initdata = {
 	{}
 };
 
+static struct {
+	char *machine;
+	void (*init)(void);
+} pinmux_configs[] = {
+	{ "nvidia,harmony", harmony_pinmux_init },
+	{ "nvidia,seaboard", seaboard_pinmux_init },
+	{ "nvidia,ventana", ventana_pinmux_init },
+};
+
 static void __init tegra_dt_init(void)
 {
 	struct device_node *node;
+	int i;
 
 	node = of_find_matching_node_by_address(NULL, tegra_dt_gic_match,
 						TEGRA_ARM_INT_DIST_BASE);
@@ -91,10 +101,15 @@ static void __init tegra_dt_init(void)
 
 	tegra_clk_init_from_table(tegra_dt_clk_init_table);
 
-	if (of_machine_is_compatible("nvidia,harmony"))
-		harmony_pinmux_init();
-	else if (of_machine_is_compatible("nvidia,seaboard"))
-		seaboard_pinmux_init();
+	for (i = 0; i < ARRAY_SIZE(pinmux_configs); i++) {
+		if (of_machine_is_compatible(pinmux_configs[i].machine)) {
+			pinmux_configs[i].init();
+			break;
+		}
+	}
+
+	if (i == ARRAY_SIZE(pinmux_configs))
+		printk(KERN_WARNING "Unknown platform! Pinmuxing not initialized\n");
 
 	/*
 	 * Finished with the static registrations now; fill in the missing
@@ -106,6 +121,7 @@ static void __init tegra_dt_init(void)
 static const char * tegra_dt_board_compat[] = {
 	"nvidia,harmony",
 	"nvidia,seaboard",
+	"nvidia,ventana",
 	NULL
 };
 
-- 
1.7.7.rc0.72.g4b5ea.dirty


^ permalink raw reply	[flat|nested] 8+ messages in thread

* RE: [PATCH v7 0/3] Add support for tegra2 based ventana board
  2011-10-03 13:18 [PATCH v7 0/3] Add support for tegra2 based ventana board Peter De Schrijver
                   ` (2 preceding siblings ...)
  2011-10-03 13:18 ` [PATCH v7 3/3] arm/tegra: device tree support for ventana board Peter De Schrijver
@ 2011-10-07 18:00 ` Stephen Warren
  3 siblings, 0 replies; 8+ messages in thread
From: Stephen Warren @ 2011-10-07 18:00 UTC (permalink / raw)
  To: Peter De Schrijver, Peter De Schrijver
  Cc: Russell King, Erik Gilling, linux-kernel, linux-tegra,
	Colin Cross, Olof Johansson, linux-arm-kernel

Peter De Schrijver wrote at Monday, October 03, 2011 7:19 AM:
> This patch set adds support for the tegra2 based ventana development board.
> 
> Boot tested on ventana.

With minor changes to the command-line in tegra-ventana.dts, to put the
root fs on an SD card, and using mainline U-Boot with the Ventana patch
series I wrote,

Tested-by: Stephen Warren <swarren@nvidia.com>

I have a couple of queries in patch 3 that I'll post separately.

-- 
nvpublic


^ permalink raw reply	[flat|nested] 8+ messages in thread

* RE: [PATCH v7 3/3] arm/tegra: device tree support for ventana board
  2011-10-03 13:18 ` [PATCH v7 3/3] arm/tegra: device tree support for ventana board Peter De Schrijver
@ 2011-10-07 18:04   ` Stephen Warren
  2011-10-10  8:01     ` Peter De Schrijver
  0 siblings, 1 reply; 8+ messages in thread
From: Stephen Warren @ 2011-10-07 18:04 UTC (permalink / raw)
  To: Peter De Schrijver, Peter De Schrijver
  Cc: Russell King, Erik Gilling, linux-kernel, linux-tegra,
	Colin Cross, Olof Johansson, linux-arm-kernel

Peter De Schrijver wrote at Monday, October 03, 2011 7:19 AM:

...
> diff --git a/arch/arm/boot/dts/tegra-ventana.dts b/arch/arm/boot/dts/tegra-ventana.dts
...
> +	chosen {
> +		bootargs = "vmalloc=192M video=tegrafb console=ttyS0,115200n8 root=/dev/ram rdinit=/sbin/init";

It might be nice to make this identical to what Harmony and Seaboard have here.

Still, it doesn't matter a lot, since I (and I imagine most people) have
to edit this command-line to point at the correct partition for my disks
anyway; eventually, U-Boot should be providing/re-writing this property
too.

...
> diff --git a/arch/arm/mach-tegra/board-dt.c b/arch/arm/mach-tegra/board-dt.c
...
> -	if (of_machine_is_compatible("nvidia,harmony"))
> -		harmony_pinmux_init();
> -	else if (of_machine_is_compatible("nvidia,seaboard"))
> -		seaboard_pinmux_init();
> +	for (i = 0; i < ARRAY_SIZE(pinmux_configs); i++) {
> +		if (of_machine_is_compatible(pinmux_configs[i].machine)) {
> +			pinmux_configs[i].init();
> +			break;
> +		}
> +	}
> +
> +	if (i == ARRAY_SIZE(pinmux_configs))
> +		printk(KERN_WARNING "Unknown platform! Pinmuxing not initialized\n");

Should that be WARN() instead of printk?

-- 
nvpublic


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [PATCH v7 3/3] arm/tegra: device tree support for ventana board
  2011-10-07 18:04   ` Stephen Warren
@ 2011-10-10  8:01     ` Peter De Schrijver
  2011-10-10 16:38       ` Stephen Warren
  0 siblings, 1 reply; 8+ messages in thread
From: Peter De Schrijver @ 2011-10-10  8:01 UTC (permalink / raw)
  To: Stephen Warren
  Cc: Russell King, Erik Gilling, linux-kernel, linux-tegra,
	Colin Cross, Olof Johansson, linux-arm-kernel

On Fri, Oct 07, 2011 at 08:04:34PM +0200, Stephen Warren wrote:
> Peter De Schrijver wrote at Monday, October 03, 2011 7:19 AM:
> 
> ...
> > diff --git a/arch/arm/boot/dts/tegra-ventana.dts b/arch/arm/boot/dts/tegra-ventana.dts
> ...
> > +	chosen {
> > +		bootargs = "vmalloc=192M video=tegrafb console=ttyS0,115200n8 root=/dev/ram rdinit=/sbin/init";
> 
> It might be nice to make this identical to what Harmony and Seaboard have here.
> 
> Still, it doesn't matter a lot, since I (and I imagine most people) have
> to edit this command-line to point at the correct partition for my disks
> anyway; eventually, U-Boot should be providing/re-writing this property
> too.
> 
> ...
> > diff --git a/arch/arm/mach-tegra/board-dt.c b/arch/arm/mach-tegra/board-dt.c
> ...
> > -	if (of_machine_is_compatible("nvidia,harmony"))
> > -		harmony_pinmux_init();
> > -	else if (of_machine_is_compatible("nvidia,seaboard"))
> > -		seaboard_pinmux_init();
> > +	for (i = 0; i < ARRAY_SIZE(pinmux_configs); i++) {
> > +		if (of_machine_is_compatible(pinmux_configs[i].machine)) {
> > +			pinmux_configs[i].init();
> > +			break;
> > +		}
> > +	}
> > +
> > +	if (i == ARRAY_SIZE(pinmux_configs))
> > +		printk(KERN_WARNING "Unknown platform! Pinmuxing not initialized\n");
> 
> Should that be WARN() instead of printk?

pr_warning() might be better. Or do we want a backtrace and a tainted kernel
in this case? 

Cheers,

Peter.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* RE: [PATCH v7 3/3] arm/tegra: device tree support for ventana board
  2011-10-10  8:01     ` Peter De Schrijver
@ 2011-10-10 16:38       ` Stephen Warren
  0 siblings, 0 replies; 8+ messages in thread
From: Stephen Warren @ 2011-10-10 16:38 UTC (permalink / raw)
  To: Peter De Schrijver
  Cc: Russell King, Erik Gilling, linux-kernel, linux-tegra,
	Colin Cross, Olof Johansson, linux-arm-kernel

Peter De Schrijver wrote at Monday, October 10, 2011 2:01 AM:
> On Fri, Oct 07, 2011 at 08:04:34PM +0200, Stephen Warren wrote:
> > Peter De Schrijver wrote at Monday, October 03, 2011 7:19 AM:
> > ...
> > > diff --git a/arch/arm/mach-tegra/board-dt.c b/arch/arm/mach-tegra/board-dt.c
> > ...
> > > -	if (of_machine_is_compatible("nvidia,harmony"))
> > > -		harmony_pinmux_init();
> > > -	else if (of_machine_is_compatible("nvidia,seaboard"))
> > > -		seaboard_pinmux_init();
> > > +	for (i = 0; i < ARRAY_SIZE(pinmux_configs); i++) {
> > > +		if (of_machine_is_compatible(pinmux_configs[i].machine)) {
> > > +			pinmux_configs[i].init();
> > > +			break;
> > > +		}
> > > +	}
> > > +
> > > +	if (i == ARRAY_SIZE(pinmux_configs))
> > > +		printk(KERN_WARNING "Unknown platform! Pinmuxing not initialized\n");
> >
> > Should that be WARN() instead of printk?
> 
> pr_warning() might be better. Or do we want a backtrace and a tainted kernel
> in this case?

Well, tainting seems like a good idea. I'm less thrilled about the backtrace,
but perhaps it is a good idea to bring attention to this condition.

-- 
nvpublic


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2011-10-10 16:39 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-10-03 13:18 [PATCH v7 0/3] Add support for tegra2 based ventana board Peter De Schrijver
2011-10-03 13:18 ` [PATCH v7 1/3] arm/tegra: prepare Seaboard pinmux code for derived boards Peter De Schrijver
2011-10-03 13:18 ` [PATCH v7 2/3] arm/tegra: add support for ventana pinmuxing Peter De Schrijver
2011-10-03 13:18 ` [PATCH v7 3/3] arm/tegra: device tree support for ventana board Peter De Schrijver
2011-10-07 18:04   ` Stephen Warren
2011-10-10  8:01     ` Peter De Schrijver
2011-10-10 16:38       ` Stephen Warren
2011-10-07 18:00 ` [PATCH v7 0/3] Add support for tegra2 based " Stephen Warren

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®