Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ee200119 authored by Tero Kristo's avatar Tero Kristo
Browse files

ARM: OMAP2: PRM: add support for OMAP2 specific clock providers



This patch adds support for initializing also omap2-prcm and omap2-scrm
through DT.

Signed-off-by: default avatarTero Kristo <t-kristo@ti.com>
parent a37f05ac
Loading
Loading
Loading
Loading
+65 −0
Original line number Diff line number Diff line
OMAP PRCM bindings

Power Reset and Clock Manager lists the device clocks and clockdomains under
a DT hierarchy. Each TI SoC can have multiple PRCM entities listed for it,
each describing one module and the clock hierarchy under it. see [1] for
documentation about the individual clock/clockdomain nodes.

[1] Documentation/devicetree/bindings/clock/ti/*

Required properties:
- compatible:	Must be one of:
		"ti,am3-prcm"
		"ti,am3-scrm"
		"ti,am4-prcm"
		"ti,am4-scrm"
		"ti,omap2-prcm"
		"ti,omap2-scrm"
		"ti,omap3-prm"
		"ti,omap3-cm"
		"ti,omap3-scrm"
		"ti,omap4-cm1"
		"ti,omap4-prm"
		"ti,omap4-cm2"
		"ti,omap4-scrm"
		"ti,omap5-prm"
		"ti,omap5-cm-core-aon"
		"ti,omap5-scrm"
		"ti,omap5-cm-core"
		"ti,dra7-prm"
		"ti,dra7-cm-core-aon"
		"ti,dra7-cm-core"
- reg:		Contains PRCM module register address range
		(base address and length)
- clocks:	clocks for this module
- clockdomains:	clockdomains for this module

Example:

cm: cm@48004000 {
	compatible = "ti,omap3-cm";
	reg = <0x48004000 0x4000>;

	cm_clocks: clocks {
		#address-cells = <1>;
		#size-cells = <0>;
	};

	cm_clockdomains: clockdomains {
	};
}

&cm_clocks {
	omap2_32k_fck: omap_32k_fck {
		#clock-cells = <0>;
		compatible = "fixed-clock";
		clock-frequency = <32768>;
	};
};

&cm_clockdomains {
	core_l3_clkdm: core_l3_clkdm {
		compatible = "ti,clockdomain";
		clocks = <&sdrc_ick>;
	};
};
+2 −0
Original line number Diff line number Diff line
@@ -472,6 +472,8 @@ static struct of_device_id omap_prcm_dt_match_table[] = {
	{ .compatible = "ti,am3-scrm" },
	{ .compatible = "ti,am4-prcm" },
	{ .compatible = "ti,am4-scrm" },
	{ .compatible = "ti,omap2-prcm" },
	{ .compatible = "ti,omap2-scrm" },
	{ .compatible = "ti,omap3-prm" },
	{ .compatible = "ti,omap3-cm" },
	{ .compatible = "ti,omap3-scrm" },