17415b0b4STero KristoOMAP Control Module bindings
27415b0b4STero Kristo
37415b0b4STero KristoControl Module contains miscellaneous features under it based on SoC type.
47415b0b4STero KristoPincontrol is one common feature, and it has a specialized support
57415b0b4STero Kristodescribed in [1]. Typically some clock nodes are also under control module.
67415b0b4STero KristoSyscon is used to share register level access to drivers external to
77415b0b4STero Kristocontrol module driver itself.
87415b0b4STero Kristo
97415b0b4STero KristoSee [2] for documentation about clock/clockdomain nodes.
107415b0b4STero Kristo
117415b0b4STero Kristo[1] Documentation/devicetree/bindings/pinctrl/pinctrl-single.txt
127415b0b4STero Kristo[2] Documentation/devicetree/bindings/clock/ti/*
137415b0b4STero Kristo
147415b0b4STero KristoRequired properties:
157415b0b4STero Kristo- compatible:	Must be one of:
167415b0b4STero Kristo		"ti,am3-scm"
177415b0b4STero Kristo		"ti,am4-scm"
187415b0b4STero Kristo		"ti,dm814-scrm"
197415b0b4STero Kristo		"ti,dm816-scrm"
207415b0b4STero Kristo		"ti,omap2-scm"
217415b0b4STero Kristo		"ti,omap3-scm"
227415b0b4STero Kristo		"ti,omap4-scm-core"
237415b0b4STero Kristo		"ti,omap4-scm-padconf-core"
24ed8509edSTero Kristo		"ti,omap5-scm-core"
25ed8509edSTero Kristo		"ti,omap5-scm-padconf-core"
267415b0b4STero Kristo- reg:		Contains Control Module register address range
277415b0b4STero Kristo		(base address and length)
287415b0b4STero Kristo
297415b0b4STero KristoOptional properties:
307415b0b4STero Kristo- clocks:	clocks for this module
317415b0b4STero Kristo- clockdomains:	clockdomains for this module
327415b0b4STero Kristo
337415b0b4STero KristoExamples:
347415b0b4STero Kristo
357415b0b4STero Kristoscm: scm@2000 {
367415b0b4STero Kristo	compatible = "ti,omap3-scm", "simple-bus";
377415b0b4STero Kristo	reg = <0x2000 0x2000>;
387415b0b4STero Kristo	#address-cells = <1>;
397415b0b4STero Kristo	#size-cells = <1>;
407415b0b4STero Kristo	ranges = <0 0x2000 0x2000>;
417415b0b4STero Kristo
427415b0b4STero Kristo	omap3_pmx_core: pinmux@30 {
437415b0b4STero Kristo		compatible = "ti,omap3-padconf",
447415b0b4STero Kristo			     "pinctrl-single";
457415b0b4STero Kristo		reg = <0x30 0x230>;
467415b0b4STero Kristo		#address-cells = <1>;
477415b0b4STero Kristo		#size-cells = <0>;
487415b0b4STero Kristo		#interrupt-cells = <1>;
497415b0b4STero Kristo		interrupt-controller;
507415b0b4STero Kristo		pinctrl-single,register-width = <16>;
517415b0b4STero Kristo		pinctrl-single,function-mask = <0xff1f>;
527415b0b4STero Kristo	};
537415b0b4STero Kristo
547415b0b4STero Kristo	scm_conf: scm_conf@270 {
557415b0b4STero Kristo		compatible = "syscon";
567415b0b4STero Kristo		reg = <0x270 0x330>;
577415b0b4STero Kristo		#address-cells = <1>;
587415b0b4STero Kristo		#size-cells = <1>;
597415b0b4STero Kristo
607415b0b4STero Kristo		scm_clocks: clocks {
617415b0b4STero Kristo			#address-cells = <1>;
627415b0b4STero Kristo			#size-cells = <0>;
637415b0b4STero Kristo		};
647415b0b4STero Kristo	};
657415b0b4STero Kristo
667415b0b4STero Kristo	scm_clockdomains: clockdomains {
677415b0b4STero Kristo	};
687415b0b4STero Kristo}
697415b0b4STero Kristo
707415b0b4STero Kristo&scm_clocks {
717415b0b4STero Kristo	mcbsp5_mux_fck: mcbsp5_mux_fck {
727415b0b4STero Kristo		#clock-cells = <0>;
737415b0b4STero Kristo		compatible = "ti,composite-mux-clock";
747415b0b4STero Kristo		clocks = <&core_96m_fck>, <&mcbsp_clks>;
757415b0b4STero Kristo		ti,bit-shift = <4>;
767415b0b4STero Kristo		reg = <0x02d8>;
777415b0b4STero Kristo	};
787415b0b4STero Kristo};
79