18859b901SDamien HorsleyPistachio Reset Controller
28859b901SDamien Horsley=============================================================================
38859b901SDamien Horsley
48859b901SDamien HorsleyThis binding describes a reset controller device that is used to enable and
58859b901SDamien Horsleydisable individual IP blocks within the Pistachio SoC using "soft reset"
68859b901SDamien Horsleycontrol bits found in the Pistachio SoC top level registers.
78859b901SDamien Horsley
88859b901SDamien HorsleyThe actual action taken when soft reset is asserted is hardware dependent.
98859b901SDamien HorsleyHowever, when asserted it may not be possible to access the hardware's
108859b901SDamien Horsleyregisters, and following an assert/deassert sequence the hardware's previous
118859b901SDamien Horsleystate may no longer be valid.
128859b901SDamien Horsley
138859b901SDamien HorsleyPlease refer to Documentation/devicetree/bindings/reset/reset.txt
148859b901SDamien Horsleyfor common reset controller binding usage.
158859b901SDamien Horsley
168859b901SDamien HorsleyRequired properties:
178859b901SDamien Horsley
188859b901SDamien Horsley- compatible: Contains "img,pistachio-reset"
198859b901SDamien Horsley
208859b901SDamien Horsley- #reset-cells: Contains 1
218859b901SDamien Horsley
228859b901SDamien HorsleyExample:
238859b901SDamien Horsley
248859b901SDamien Horsley	cr_periph: clk@18148000 {
258859b901SDamien Horsley		compatible = "img,pistachio-cr-periph", "syscon", "simple-mfd";
268859b901SDamien Horsley		reg = <0x18148000 0x1000>;
278859b901SDamien Horsley		clocks = <&clk_periph PERIPH_CLK_SYS>;
288859b901SDamien Horsley		clock-names = "sys";
298859b901SDamien Horsley		#clock-cells = <1>;
308859b901SDamien Horsley
318859b901SDamien Horsley		pistachio_reset: reset-controller {
328859b901SDamien Horsley			compatible = "img,pistachio-reset";
338859b901SDamien Horsley			#reset-cells = <1>;
348859b901SDamien Horsley		};
358859b901SDamien Horsley	};
368859b901SDamien Horsley
378859b901SDamien HorsleySpecifying reset control of devices
388859b901SDamien Horsley=======================================
398859b901SDamien Horsley
408859b901SDamien HorsleyDevice nodes should specify the reset channel required in their "resets"
418859b901SDamien Horsleyproperty, containing a phandle to the pistachio reset device node and an
428859b901SDamien Horsleyindex specifying which reset to use, as described in
438859b901SDamien HorsleyDocumentation/devicetree/bindings/reset/reset.txt.
448859b901SDamien Horsley
458859b901SDamien HorsleyExample:
468859b901SDamien Horsley
478859b901SDamien Horsley	spdif_out: spdif-out@18100d00 {
488859b901SDamien Horsley		...
498859b901SDamien Horsley		resets = <&pistachio_reset PISTACHIO_RESET_SPDIF_OUT>;
508859b901SDamien Horsley		reset-names = "rst";
518859b901SDamien Horsley		...
528859b901SDamien Horsley	};
538859b901SDamien Horsley
548859b901SDamien HorsleyMacro definitions for the supported resets can be found in:
558859b901SDamien Horsleyinclude/dt-bindings/reset/pistachio-resets.h
56