Skip to content

Commit

Permalink
arm/dts: OMAP3+: Add mpu, dsp and iva nodes
Browse files Browse the repository at this point in the history
Add nodes for devices used by PM code (mpu, dsp, iva).

Add a cpus node as well as recommended in the DT spec.

Remove mpu, dsp, iva devices init if is populated.

Signed-off-by: Benoit Cousson <b-cousson@ti.com>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
Cc: Kevin Hilman <khilman@ti.com>
  • Loading branch information
Benoit Cousson committed Oct 4, 2011
1 parent ad8dfac commit 476b679
Show file tree
Hide file tree
Showing 6 changed files with 104 additions and 1 deletion.
14 changes: 14 additions & 0 deletions Documentation/devicetree/bindings/arm/omap/dsp.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
* TI - DSP (Digital Signal Processor)

TI DSP included in OMAP SoC

Required properties:
- compatible : Should be "ti,omap3-c64" for OMAP3 & 4
- ti,hwmods: "dsp"

Examples:

dsp {
compatible = "ti,omap3-c64";
ti,hwmods = "dsp";
};
19 changes: 19 additions & 0 deletions Documentation/devicetree/bindings/arm/omap/iva.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
* TI - IVA (Imaging and Video Accelerator) subsystem

The IVA contain various audio, video or imaging HW accelerator
depending of the version.

Required properties:
- compatible : Should be:
- "ti,ivahd" for OMAP4
- "ti,iva2.2" for OMAP3
- "ti,iva2.1" for OMAP2430
- "ti,iva1" for OMAP2420
- ti,hwmods: "iva"

Examples:

iva {
compatible = "ti,ivahd", "ti,iva";
ti,hwmods = "iva";
};
27 changes: 27 additions & 0 deletions Documentation/devicetree/bindings/arm/omap/mpu.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
* TI - MPU (Main Processor Unit) subsystem

The MPU subsystem contain one or several ARM cores
depending of the version.
The MPU contain CPUs, GIC, L2 cache and a local PRCM.

Required properties:
- compatible : Should be "ti,omap3-mpu" for OMAP3
Should be "ti,omap4-mpu" for OMAP4
- ti,hwmods: "mpu"

Examples:

- For an OMAP4 SMP system:

mpu {
compatible = "ti,omap4-mpu";
ti,hwmods = "mpu";
};


- For an OMAP3 monocore system:

mpu {
compatible = "ti,omap3-mpu";
ti,hwmods = "mpu";
};
19 changes: 19 additions & 0 deletions arch/arm/boot/dts/omap3.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,31 @@
/ {
compatible = "ti,omap3430", "ti,omap3";

cpus {
cpu@0 {
compatible = "arm,cortex-a8";
};
};

/*
* The soc node represents the soc top level view. It is uses for IPs
* that are not memory mapped in the MPU view or for the MPU itself.
*/
soc {
compatible = "ti,omap-infra";
mpu {
compatible = "ti,omap3-mpu";
ti,hwmods = "mpu";
};

iva {
compatible = "ti,iva2.2";
ti,hwmods = "iva";

dsp {
compatible = "ti,omap3-c64";
};
};
};

/*
Expand Down
23 changes: 23 additions & 0 deletions arch/arm/boot/dts/omap4.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -23,12 +23,35 @@
aliases {
};

cpus {
cpu@0 {
compatible = "arm,cortex-a9";
};
cpu@1 {
compatible = "arm,cortex-a9";
};
};

/*
* The soc node represents the soc top level view. It is uses for IPs
* that are not memory mapped in the MPU view or for the MPU itself.
*/
soc {
compatible = "ti,omap-infra";
mpu {
compatible = "ti,omap4-mpu";
ti,hwmods = "mpu";
};

dsp {
compatible = "ti,omap3-c64";
ti,hwmods = "dsp";
};

iva {
compatible = "ti,ivahd";
ti,hwmods = "iva";
};
};

/*
Expand Down
3 changes: 2 additions & 1 deletion arch/arm/mach-omap2/pm.c
Original file line number Diff line number Diff line change
Expand Up @@ -215,7 +215,8 @@ static void __init omap4_init_voltages(void)

static int __init omap2_common_pm_init(void)
{
omap2_init_processor_devices();
if (!of_have_populated_dt())
omap2_init_processor_devices();
omap_pm_if_init();

return 0;
Expand Down

0 comments on commit 476b679

Please sign in to comment.