On Mon, Oct 26, 2015 at 8:33 AM, Linus Walleij <linus.wall...@linaro.org> wrote: > This adds the device tree bindings for the ARM Syscon ICST > oscillators, which is a register-level interface to the > Integrated Device Technology (IDT) ICS525 and ICS307 > serially programmable oscillators. > > Cc: devicet...@vger.kernel.org > Cc: Michael Turquette <mturque...@baylibre.com> > Cc: Stephen Boyd <sb...@codeaurora.org> > Cc: linux-clk@vger.kernel.org > Signed-off-by: Linus Walleij <linus.wall...@linaro.org>
Acked-by: Rob Herring <r...@kernel.org> > --- > ChangeLog v1->v2: > - Spelling fixes. > > I'm looking for an ACK from the CLK maintainers to take this > through the ARM SoC tree once the series stabilize. > --- > .../devicetree/bindings/clock/arm-syscon-icst.txt | 40 > ++++++++++++++++++++++ > 1 file changed, 40 insertions(+) > create mode 100644 > Documentation/devicetree/bindings/clock/arm-syscon-icst.txt > > diff --git a/Documentation/devicetree/bindings/clock/arm-syscon-icst.txt > b/Documentation/devicetree/bindings/clock/arm-syscon-icst.txt > new file mode 100644 > index 000000000000..8b7177cecb36 > --- /dev/null > +++ b/Documentation/devicetree/bindings/clock/arm-syscon-icst.txt > @@ -0,0 +1,40 @@ > +ARM System Controller ICST clocks > + > +The ICS525 and ICS307 oscillators are produced by Integrated Devices > +Technology (IDT). ARM integrated these oscillators deeply into their > +reference designs by adding special control registers that manage such > +oscillators to their system controllers. > + > +The ARM system controller contains logic to serialize and initialize > +an ICST clock request after a write to the 32 bit register at an offset > +into the system controller. Furthermore, to even be able to alter one of > +these frequencies, the system controller must first be unlocked by > +writing a special token to another offset in the system controller. > + > +The ICST oscillator must be provided inside a system controller node. > + > +Required properties: > +- lock-offset: the offset address into the system controller where the > + unlocking register is located > +- vco-offset: the offset address into the system controller where the > + ICST control register is located (even 32 bit address) > +- compatible: must be one of "arm,syscon-icst525" or "arm,syscon-icst307" > +- #clock-cells: must be <0> > +- clocks: parent clock, since the ICST needs a parent clock to derive its > + frequency from, this attribute is compulsory. > + > +Example: > + > +syscon: syscon@10000000 { > + compatible = "syscon"; > + reg = <0x10000000 0x1000>; > + > + oscclk0: osc0@0c { > + compatible = "arm,syscon-icst307"; > + #clock-cells = <0>; > + lock-offset = <0x20>; > + vco-offset = <0x0c>; > + clocks = <&xtal24mhz>; > + }; > + (...) > +}; > -- > 2.4.3 > > -- > To unsubscribe from this list: send the line "unsubscribe devicetree" in > the body of a message to majord...@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-clk" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html