summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBenoit Cousson2012-01-20 14:15:58 +0100
committerBenoit Cousson2012-03-12 14:58:25 +0100
commitefcf1e502012cc2cc9ee8165fa0a7679725c525c (patch)
treeaaa5d13b9884c1889e3f29ae2a8d0cc4bf067ed9
parentarm/dts: OMAP3: Add gpio nodes (diff)
downloadkernel-qcow2-linux-efcf1e502012cc2cc9ee8165fa0a7679725c525c.tar.gz
kernel-qcow2-linux-efcf1e502012cc2cc9ee8165fa0a7679725c525c.tar.xz
kernel-qcow2-linux-efcf1e502012cc2cc9ee8165fa0a7679725c525c.zip
arm/dts: OMAP4: Add SPI controller nodes
Add the 4 McSPI controller nodes present in an OMAP4 device. Remove SPI static device initialisation if DT is populated. Signed-off-by: Benoit Cousson <b-cousson@ti.com> Cc: Grant Likely <grant.likely@secretlab.ca> Acked-by: Rob Herring <rob.herring@calxeda.com>
-rw-r--r--arch/arm/boot/dts/omap4.dtsi32
-rw-r--r--arch/arm/mach-omap2/devices.c4
2 files changed, 35 insertions, 1 deletions
diff --git a/arch/arm/boot/dts/omap4.dtsi b/arch/arm/boot/dts/omap4.dtsi
index 7f8463b666fd..6c584534c290 100644
--- a/arch/arm/boot/dts/omap4.dtsi
+++ b/arch/arm/boot/dts/omap4.dtsi
@@ -209,5 +209,37 @@
#size-cells = <0>;
ti,hwmods = "i2c4";
};
+
+ mcspi1: spi@48098000 {
+ compatible = "ti,omap4-mcspi";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ ti,hwmods = "mcspi1";
+ ti,spi-num-cs = <4>;
+ };
+
+ mcspi2: spi@4809a000 {
+ compatible = "ti,omap4-mcspi";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ ti,hwmods = "mcspi2";
+ ti,spi-num-cs = <2>;
+ };
+
+ mcspi3: spi@480b8000 {
+ compatible = "ti,omap4-mcspi";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ ti,hwmods = "mcspi3";
+ ti,spi-num-cs = <2>;
+ };
+
+ mcspi4: spi@480ba000 {
+ compatible = "ti,omap4-mcspi";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ ti,hwmods = "mcspi4";
+ ti,spi-num-cs = <1>;
+ };
};
};
diff --git a/arch/arm/mach-omap2/devices.c b/arch/arm/mach-omap2/devices.c
index 283d11eae693..8a489ba68714 100644
--- a/arch/arm/mach-omap2/devices.c
+++ b/arch/arm/mach-omap2/devices.c
@@ -725,7 +725,9 @@ static int __init omap2_init_devices(void)
omap_init_dmic();
omap_init_camera();
omap_init_mbox();
- omap_init_mcspi();
+ /* If dtb is there, the devices will be created dynamically */
+ if (!of_have_populated_dt())
+ omap_init_mcspi();
omap_init_pmu();
omap_hdq_init();
omap_init_sti();