Re: Fwd: [RFC/PATCH v2 11/13] dt: omap4: add generic board file for dt support

2 messages, 2 authors, 2011-08-23 · open the first message on its own page

Re: Fwd: [RFC/PATCH v2 11/13] dt: omap4: add generic board file for dt support

From: Cousson, Benoit <hidden>
Date: 2011-08-23 13:05:01

From: G, Manjunath Kondaiah<redacted>
quoted hunk
The generic board file is created and derived from omap4 panda board file.

The changes here focus on minimal configuration to boot panda board with
dt enabled which provides basic platform for converting device drivers for
using dt.

Signed-off-by: G, Manjunath Kondaiah<redacted>
---
   arch/arm/boot/dts/omap4-panda.dts      |    2 +-
   arch/arm/mach-omap2/Kconfig            |   11 +++++
   arch/arm/mach-omap2/Makefile           |    1 +
   arch/arm/mach-omap2/board-omap4-dt.c   |   66
++++++++++++++++++++++++++++++++
   arch/arm/mach-omap2/board-omap4panda.c |    6 ---
   5 files changed, 79 insertions(+), 7 deletions(-)
   create mode 100644 arch/arm/mach-omap2/board-omap4-dt.c
diff --git a/arch/arm/boot/dts/omap4-panda.dts
b/arch/arm/boot/dts/omap4-panda.dts
index 6b831ca..9d1b17c 100644
--- a/arch/arm/boot/dts/omap4-panda.dts
+++ b/arch/arm/boot/dts/omap4-panda.dts
@@ -2,7 +2,7 @@

   / {
   	model = "TI OMAP4 PandaBoard";
-	compatible = "ti,omap4-panda", "ti,omap4430";
+	compatible = "ti,omap4-panda", "ti,omap4";
That change does not belong here, or at least should be listed in the 
changelog. Potentially you should keep the ti,omap4430 and just add the 
ti,omap4 to have the most generic compatible value.
quoted hunk
   	i2c1 {
   		clock-frequency =<400000>;
diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
index 4fbb54d..853b14c 100644
--- a/arch/arm/mach-omap2/Kconfig
+++ b/arch/arm/mach-omap2/Kconfig
@@ -337,6 +337,17 @@ config MACH_OMAP4_PANDA
   	select OMAP_PACKAGE_CBS
   	select REGULATOR_FIXED_VOLTAGE

+config MACH_OMAP4_DT
+	bool "Generic OMAP4 board(FDT support)"
+	depends on ARCH_OMAP4
+	select OMAP_PACKAGE_CBB
Wrong package... it looks like some OMAP3 copy/paste.
+	select USE_OF
+
+	help
+	  Support for generic TI OMAP4 boards using Flattened Device Tree.
+	  Say Y here to enable OMAP3 device tree support
Some more copy/paste evidence:-)
quoted hunk
+	  More information at Documentation/devicetree
+
   config OMAP3_EMU
   	bool "OMAP3 debugging peripherals"
   	depends on ARCH_OMAP3
diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile
index e702e47..8b8c29c 100644
--- a/arch/arm/mach-omap2/Makefile
+++ b/arch/arm/mach-omap2/Makefile
@@ -198,6 +198,7 @@ obj-$(CONFIG_MACH_OMAP3EVM)		+= board-omap3evm.o
   obj-$(CONFIG_MACH_OMAP3_PANDORA)	+= board-omap3pandora.o
   obj-$(CONFIG_MACH_OMAP_3430SDP)		+= board-3430sdp.o
   obj-$(CONFIG_MACH_OMAP3_DT)		+= board-omap3-dt.o
+obj-$(CONFIG_MACH_OMAP4_DT)		+= board-omap4-dt.o
Boards are grouped by SoC version.
quoted hunk
   obj-$(CONFIG_MACH_NOKIA_N8X0)		+= board-n8x0.o
   obj-$(CONFIG_MACH_NOKIA_RM680)		+= board-rm680.o \
   					   sdram-nokia.o
diff --git a/arch/arm/mach-omap2/board-omap4-dt.c
b/arch/arm/mach-omap2/board-omap4-dt.c
new file mode 100644
index 0000000..a4d296c
--- /dev/null
+++ b/arch/arm/mach-omap2/board-omap4-dt.c
@@ -0,0 +1,66 @@
+/*
+ * TI OMAP3 device tree board support
One more C&P.
+ *
+ * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#include<linux/kernel.h>
+#include<linux/init.h>
+#include<linux/i2c/twl.h>
+
+#include<mach/omap4-common.h>
nitpicking, but it should go after <plat/common.h>.
+#include<asm/mach/arch.h>
+#include<asm/mach/map.h>
+
+#include<plat/common.h>
+
+#include "common-board-devices.h"
+
+static void __init omap4_init_early(void)
+{
+	omap2_init_common_infrastructure();
+	omap2_init_common_devices(NULL, NULL);
+}
+
+static struct twl4030_platform_data omap4_twldata = {
+	.irq_base	= TWL6030_IRQ_BASE,
+	.irq_end	= TWL6030_IRQ_END,
+};
+
+static int __init omap4_i2c_init(void)
+{
+	omap4_pmic_init("twl6030",&omap4_twldata);
+	return 0;
+}
+
+static void __init omap4_init(void)
+{
+	omap4_i2c_init();
+	omap_serial_init();
+}
+
+static void __init omap4_map_io(void)
+{
+	omap2_set_globals_443x();
+	omap44xx_map_common_io();
+}
+
+static const char *omap4_match[] __initdata = {
+	"ti,omap4",
+	NULL,
+};
+
+DT_MACHINE_START(OMAP4_DT, "TI OMAP4 (Flattened Device Tree)")
+	.boot_params	= 0x80000100,
Not needed anymore with DT.
quoted hunk
+	.reserve	= omap_reserve,
+	.map_io		= omap4_map_io,
+	.init_early	= omap4_init_early,
+	.init_irq	= gic_init_irq,
+	.init_machine	= omap4_init,
+	.timer		=&omap4_timer,
+	.dt_compat	= omap4_match,
+MACHINE_END
diff --git a/arch/arm/mach-omap2/board-omap4panda.c
b/arch/arm/mach-omap2/board-omap4panda.c
index 1c583c7..9aaa960 100644
--- a/arch/arm/mach-omap2/board-omap4panda.c
+++ b/arch/arm/mach-omap2/board-omap4panda.c
That change does not really belong here or the changelog is not correct.
You can potentially do it in an other patch before. It will not really 
introduce any regression if you do it before adding any information into 
panda DT.

Regards,
Benoit

Re: Fwd: [RFC/PATCH v2 11/13] dt: omap4: add generic board file for dt support

From: G, Manjunath Kondaiah <hidden>
Date: 2011-08-23 15:30:41

On Tue, Aug 23, 2011 at 03:05:01PM +0200, Cousson, Benoit wrote:
From: G, Manjunath Kondaiah<redacted>
quoted
The generic board file is created and derived from omap4 panda board file.

The changes here focus on minimal configuration to boot panda board with
dt enabled which provides basic platform for converting device drivers for
using dt.

Signed-off-by: G, Manjunath Kondaiah<redacted>
---
  arch/arm/boot/dts/omap4-panda.dts      |    2 +-
  arch/arm/mach-omap2/Kconfig            |   11 +++++
  arch/arm/mach-omap2/Makefile           |    1 +
  arch/arm/mach-omap2/board-omap4-dt.c   |   66
++++++++++++++++++++++++++++++++
  arch/arm/mach-omap2/board-omap4panda.c |    6 ---
  5 files changed, 79 insertions(+), 7 deletions(-)
  create mode 100644 arch/arm/mach-omap2/board-omap4-dt.c
diff --git a/arch/arm/boot/dts/omap4-panda.dts
b/arch/arm/boot/dts/omap4-panda.dts
index 6b831ca..9d1b17c 100644
--- a/arch/arm/boot/dts/omap4-panda.dts
+++ b/arch/arm/boot/dts/omap4-panda.dts
@@ -2,7 +2,7 @@

  / {
  	model = "TI OMAP4 PandaBoard";
-	compatible = "ti,omap4-panda", "ti,omap4430";
+	compatible = "ti,omap4-panda", "ti,omap4";
That change does not belong here, or at least should be listed in
the changelog. Potentially you should keep the ti,omap4430 and just
add the ti,omap4 to have the most generic compatible value.
ok.
quoted
  	i2c1 {
  		clock-frequency =<400000>;
diff --git a/arch/arm/mach-omap2/Kconfig b/arch/arm/mach-omap2/Kconfig
index 4fbb54d..853b14c 100644
--- a/arch/arm/mach-omap2/Kconfig
+++ b/arch/arm/mach-omap2/Kconfig
@@ -337,6 +337,17 @@ config MACH_OMAP4_PANDA
  	select OMAP_PACKAGE_CBS
  	select REGULATOR_FIXED_VOLTAGE

+config MACH_OMAP4_DT
+	bool "Generic OMAP4 board(FDT support)"
+	depends on ARCH_OMAP4
+	select OMAP_PACKAGE_CBB
Wrong package... it looks like some OMAP3 copy/paste.
quoted
+	select USE_OF
+
+	help
+	  Support for generic TI OMAP4 boards using Flattened Device Tree.
+	  Say Y here to enable OMAP3 device tree support
Some more copy/paste evidence:-)
Sorry for this typo. Will fix it.
quoted
+	  More information at Documentation/devicetree
+
  config OMAP3_EMU
  	bool "OMAP3 debugging peripherals"
  	depends on ARCH_OMAP3
diff --git a/arch/arm/mach-omap2/Makefile b/arch/arm/mach-omap2/Makefile
index e702e47..8b8c29c 100644
--- a/arch/arm/mach-omap2/Makefile
+++ b/arch/arm/mach-omap2/Makefile
@@ -198,6 +198,7 @@ obj-$(CONFIG_MACH_OMAP3EVM)		+= board-omap3evm.o
  obj-$(CONFIG_MACH_OMAP3_PANDORA)	+= board-omap3pandora.o
  obj-$(CONFIG_MACH_OMAP_3430SDP)		+= board-3430sdp.o
  obj-$(CONFIG_MACH_OMAP3_DT)		+= board-omap3-dt.o
+obj-$(CONFIG_MACH_OMAP4_DT)		+= board-omap4-dt.o
Boards are grouped by SoC version.
one board file/soc family like board-omap4-dt for omap4xxxx
can you please be more specific what changes you are expecting?
quoted
  obj-$(CONFIG_MACH_NOKIA_N8X0)		+= board-n8x0.o
  obj-$(CONFIG_MACH_NOKIA_RM680)		+= board-rm680.o \
  					   sdram-nokia.o
diff --git a/arch/arm/mach-omap2/board-omap4-dt.c
b/arch/arm/mach-omap2/board-omap4-dt.c
new file mode 100644
index 0000000..a4d296c
--- /dev/null
+++ b/arch/arm/mach-omap2/board-omap4-dt.c
@@ -0,0 +1,66 @@
+/*
+ * TI OMAP3 device tree board support
One more C&P.
quoted
+ *
+ * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+
+#include<linux/kernel.h>
+#include<linux/init.h>
+#include<linux/i2c/twl.h>
+
+#include<mach/omap4-common.h>
nitpicking, but it should go after <plat/common.h>.
ok
quoted
+#include<asm/mach/arch.h>
+#include<asm/mach/map.h>
+
+#include<plat/common.h>
+
+#include "common-board-devices.h"
+
+static void __init omap4_init_early(void)
+{
+	omap2_init_common_infrastructure();
+	omap2_init_common_devices(NULL, NULL);
+}
+
+static struct twl4030_platform_data omap4_twldata = {
+	.irq_base	= TWL6030_IRQ_BASE,
+	.irq_end	= TWL6030_IRQ_END,
+};
+
+static int __init omap4_i2c_init(void)
+{
+	omap4_pmic_init("twl6030",&omap4_twldata);
+	return 0;
+}
+
+static void __init omap4_init(void)
+{
+	omap4_i2c_init();
+	omap_serial_init();
+}
+
+static void __init omap4_map_io(void)
+{
+	omap2_set_globals_443x();
+	omap44xx_map_common_io();
+}
+
+static const char *omap4_match[] __initdata = {
+	"ti,omap4",
+	NULL,
+};
+
+DT_MACHINE_START(OMAP4_DT, "TI OMAP4 (Flattened Device Tree)")
+	.boot_params	= 0x80000100,
Not needed anymore with DT.
yes
quoted
+	.reserve	= omap_reserve,
+	.map_io		= omap4_map_io,
+	.init_early	= omap4_init_early,
+	.init_irq	= gic_init_irq,
+	.init_machine	= omap4_init,
+	.timer		=&omap4_timer,
+	.dt_compat	= omap4_match,
+MACHINE_END
diff --git a/arch/arm/mach-omap2/board-omap4panda.c
b/arch/arm/mach-omap2/board-omap4panda.c
index 1c583c7..9aaa960 100644
--- a/arch/arm/mach-omap2/board-omap4panda.c
+++ b/arch/arm/mach-omap2/board-omap4panda.c
That change does not really belong here or the changelog is not correct.
You can potentially do it in an other patch before. It will not
really introduce any regression if you do it before adding any
information into panda DT.
ok.

-M
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help