Browse Source

arm/dts: OMAP4: Add a main ocp entry bound to l3-noc driver

Used the main OCP node to add bindings with the l3_noc driver.
Remove l3_noc static device creation if DT is populated.

Signed-off-by: Benoit Cousson <b-cousson@ti.com>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
Cc: Tony Lindgren <tony@atomide.com>
Cc: Santosh Shilimkar <santosh.shilimkar@ti.com>
Benoit Cousson 14 years ago
parent
commit
ad8dfac66f
2 changed files with 7 additions and 1 deletions
  1. 2 1
      arch/arm/boot/dts/omap4.dtsi
  2. 5 0
      arch/arm/mach-omap2/devices.c

+ 2 - 1
arch/arm/boot/dts/omap4.dtsi

@@ -63,10 +63,11 @@
 	 * hierarchy.
 	 * hierarchy.
 	 */
 	 */
 	ocp {
 	ocp {
-		compatible = "simple-bus";
+		compatible = "ti,omap4-l3-noc", "simple-bus";
 		#address-cells = <1>;
 		#address-cells = <1>;
 		#size-cells = <1>;
 		#size-cells = <1>;
 		ranges;
 		ranges;
+		ti,hwmods = "l3_main_1", "l3_main_2", "l3_main_3";
 
 
 		gic: interrupt-controller@48241000 {
 		gic: interrupt-controller@48241000 {
 			compatible = "arm,cortex-a9-gic";
 			compatible = "arm,cortex-a9-gic";

+ 5 - 0
arch/arm/mach-omap2/devices.c

@@ -16,6 +16,7 @@
 #include <linux/clk.h>
 #include <linux/clk.h>
 #include <linux/err.h>
 #include <linux/err.h>
 #include <linux/slab.h>
 #include <linux/slab.h>
+#include <linux/of.h>
 
 
 #include <mach/hardware.h>
 #include <mach/hardware.h>
 #include <mach/irqs.h>
 #include <mach/irqs.h>
@@ -77,6 +78,10 @@ static int __init omap4_l3_init(void)
 	struct platform_device *pdev;
 	struct platform_device *pdev;
 	char oh_name[L3_MODULES_MAX_LEN];
 	char oh_name[L3_MODULES_MAX_LEN];
 
 
+	/* If dtb is there, the devices will be created dynamically */
+	if (of_have_populated_dt())
+		return -ENODEV;
+
 	/*
 	/*
 	 * To avoid code running on other OMAPs in
 	 * To avoid code running on other OMAPs in
 	 * multi-omap builds
 	 * multi-omap builds