[PATCH] clk: sirf: add CSR atlas7 clk and reset support
Michael Turquette
mturquette at linaro.org
Fri Apr 10 17:23:58 PDT 2015
Quoting Barry Song (2014-12-25 00:24:05)
> From: Zhiwu Song <Zhiwu.Song at csr.com>
>
> the hardware node includes both clock and reset support, so it
> is named as "car".
> this patch implements Flexible clocks(mux, divider, gate), Selectable
> clock(mux, divider, gate), root clock(gate),leaf clock(gate), others.
> it also implements the reset controller functionality.
>
> Signed-off-by: Zhiwu Song <Zhiwu.Song at csr.com>
> Signed-off-by: Barry Song <Baohua.Song at csr.com>
> ---
> .../devicetree/bindings/clock/csr,atlas7-car.txt | 46 +
> drivers/clk/sirf/Makefile | 2 +-
> drivers/clk/sirf/clk-atlas7.c | 1652 ++++++++++++++++++++
> 3 files changed, 1699 insertions(+), 1 deletion(-)
> create mode 100644 Documentation/devicetree/bindings/clock/csr,atlas7-car.txt
> create mode 100644 drivers/clk/sirf/clk-atlas7.c
>
> diff --git a/Documentation/devicetree/bindings/clock/csr,atlas7-car.txt b/Documentation/devicetree/bindings/clock/csr,atlas7-car.txt
> new file mode 100644
> index 0000000..a1a9499
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/clock/csr,atlas7-car.txt
> @@ -0,0 +1,46 @@
> +* Clock and reset bindings for CSR atlas7
> +
> +Required properties:
> +- compatible: Should be "sirf,atlas7-car"
> +- reg: Address and length of the register set
> +- #clock-cells: Should be <1>
> +- #reset-cells: Should be <1>
> +
> +The clock consumer should specify the desired clock by having the clock
> +ID in its "clocks" phandle cell.
> +The ID list atlas7_clks defined in drivers/clk/sirf/clk-atlas7.c
> +
> +The reset consumer should specify the desired reset by having the reset
> +ID in its "reset" phandle cell.
> +The ID list atlas7_reset_unit defined in drivers/clk/sirf/clk-atlas7.c
> +
> +Examples:
> +
> +timer at 10dc0000 {
> + compatible = "sirf,macro-tick";
> + reg = <0x10dc0000 0x1000>;
> + clocks = <&car 54>;
> + interrupts = <0 0 0>,
> + <0 1 0>,
> + <0 2 0>,
> + <0 49 0>,
> + <0 50 0>,
> + <0 51 0>;
> +};
> +
> +uart1: uart at 18020000 {
> + cell-index = <1>;
> + compatible = "sirf,macro-uart";
> + reg = <0x18020000 0x1000>;
> + clocks = <&clks 95>;
> + interrupts = <0 18 0>;
> + fifosize = <32>;
> +};
> +
> +vpp at 13110000 {
> + compatible = "sirf,prima2-vpp";
> + reg = <0x13110000 0x10000>;
> + interrupts = <0 31 0>;
> + clocks = <&car 85>;
> + resets = <&car 29>;
> +};
It would be nice to provide an example of the clock provider node,
"sirf,atlas7-car". Also do you have a patch which adds this node to a
dts file somewhere?
Otherwise the rest of this patch looks OK.
Regards,
Mike
More information about the linux-arm-kernel
mailing list