clk: sirf: add CSR atlas7 clk and reset support
Subsystems (2)
PATCH 1/1 clk: sirf: add CSR atlas7 clk and reset support
From: Zhiwu Song <[email protected]>
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.
--- .../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
Documentation/devicetree/bindings/clock/csr,atlas7-car.txt new file +46 -0
@@ -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>; +};
drivers/clk/sirf/Makefile +1 -1
@@ -2,4 +2,4 @@ # Makefile for sirf specific clk # -obj-$(CONFIG_ARCH_SIRF) += clk-prima2.o clk-atlas6.o +obj-$(CONFIG_ARCH_SIRF) += clk-prima2.o clk-atlas6.o clk-atlas7.o
drivers/clk/sirf/clk-atlas7.c new file +1652 -0
1,652 lines not on this page · raw message
Signature · 1 line
2.2.0
PATCH 1/1 clk: sirf: add CSR atlas7 clk and reset support
Quoting Barry Song (2014-12-25 00:24:05)
Quoted 60 lines
From: Zhiwu Song <[email protected]>
the hardware node includes both clock and reset support, so it is named as "car".
this patch implements Flexibleclocks(mux, divider, gate), Selectableclock(mux, divider, gate), root clock(gate),leaf clock(gate), others. it also implements the reset controller functionality.Signed-off-by Zhiwu Song <[email protected]>Signed-off-by Barry Song <[email protected]>--- .../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.cDocumentation/devicetree/bindings/clock/csr,atlas7-car.txt new file +36
-0@@ -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>;
Documentation/devicetree/bindings/clock/csr,atlas7-car.txt line 46
Quoted 10 lines
Documentation/devicetree/bindings/clock/csr,atlas7-car.txt new file +10
-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
PATCH 1/1 clk: sirf: add CSR atlas7 clk and reset support
2015-04-11 8:23 GMT+08:00 Michael Turquette <[email protected]>:
Quoted 66 lines
Quoting Barry Song (2014-12-25 00:24:05)
Quoted 65 lines
From: Zhiwu Song <[email protected]>
the hardware node includes both clock and reset support, so it is named as "car".
this patch implements Flexibleclocks(mux, divider, gate), Selectableclock(mux, divider, gate), root clock(gate),leaf clock(gate), others. it also implements the reset controller functionality.Signed-off-by Zhiwu Song <[email protected]>Signed-off-by Barry Song <[email protected]>--- .../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.cDocumentation/devicetree/bindings/clock/csr,atlas7-car.txt new file +41
-0@@ -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";
Quoted 8 lines
Documentation/devicetree/bindings/clock/csr,atlas7-car.txt line 46
Quoted 5 lines
Documentation/devicetree/bindings/clock/csr,atlas7-car.txt new file +5
-0+ 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".
ok. Mike, thanks for reviewing.
Quoted 3 lines
Also do you have a patch which adds this node to a dts file somewhere?
this has been done when atlas7 platform was added. see:
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/arch/arm/boot/dts/atlas7.dtsi
there is a node:
car: clock-controller at 18620000 {
compatible = "sirf,atlas7-car";
reg = <0x18620000 0x1000>;
#clock-cells = <1>;
#reset-cells = <1>;
};Quoted 4 lines
Otherwise the rest of this patch looks OK.
Regards,
Mike
-barry
PATCH 1/1 clk: sirf: add CSR atlas7 clk and reset support
2015-04-12 18:24 GMT+08:00, Barry Song <[email protected]>:
Quoted 79 lines
2015-04-11 8:23 GMT+08:00 Michael Turquette <[email protected]>:
Quoted 69 lines
Quoting Barry Song (2014-12-25 00:24:05)
Quoted 68 lines
From: Zhiwu Song <[email protected]>
the hardware node includes both clock and reset support, so it is named as "car".
this patch implements Flexibleclocks(mux, divider, gate), Selectableclock(mux, divider, gate), root clock(gate),leaf clock(gate), others. it also implements the reset controller functionality.Signed-off-by Zhiwu Song <[email protected]>Signed-off-by Barry Song <[email protected]>--- .../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.cDocumentation/devicetree/bindings/clock/csr,atlas7-car.txt new file +41
-0@@ -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";Quoted 8 lines
Documentation/devicetree/bindings/clock/csr,atlas7-car.txt line 46
Quoted 5 lines
Documentation/devicetree/bindings/clock/csr,atlas7-car.txt new file +5
-0+ 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".
Quoted 1 line
ok. Mike, thanks for reviewing.
hi mike, the example of the clock provider node has been done by the v2 patch sent two days ago.is there enough time to push it to 4.1?
Quoted 16 lines
Quoted 4 lines
Also do you have a patch which adds this node to a dts file somewhere?
this has been done when atlas7 platform was added. see:
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/arch/arm/boot/dts/atlas7.dtsithere is a node:
car: clock-controller at 18620000 { compatible = "sirf,atlas7-car"; reg = <0x18620000 0x1000>; #clock-cells = <1>; #reset-cells = <1>; };
Quoted 7 lines
Quoted 4 lines
Otherwise the rest of this patch looks OK.
Regards,
Mike-barry
-barry
PATCH 1/1 clk: sirf: add CSR atlas7 clk and reset support
Quoting Barry Song (2015-04-14 04:57:18)
Quoted 80 lines
2015-04-12 18:24 GMT+08:00, Barry Song <[email protected]>:
Quoted 79 lines
2015-04-11 8:23 GMT+08:00 Michael Turquette <[email protected]>:
Quoted 77 lines
Quoting Barry Song (2014-12-25 00:24:05)
Quoted 63 lines
From: Zhiwu Song <[email protected]>
the hardware node includes both clock and reset support, so it is named as "car".
this patch implements Flexibleclocks(mux, divider, gate), Selectableclock(mux, divider, gate), root clock(gate),leaf clock(gate), others. it also implements the reset controller functionality.Signed-off-by Zhiwu Song <[email protected]>Signed-off-by Barry Song <[email protected]>--- .../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.cDocumentation/devicetree/bindings/clock/csr,atlas7-car.txt new file +36
-0@@ -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>;Documentation/devicetree/bindings/clock/csr,atlas7-car.txt line 46
Quoted 10 lines
Documentation/devicetree/bindings/clock/csr,atlas7-car.txt new file +10
-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".
Quoted 4 lines
Quoted 1 line
ok. Mike, thanks for reviewing.
hi mike, the example of the clock provider node has been done by the v2 patch sent two days ago.is there enough time to push it to 4.1?
I'm afraid not. I'll take it after 4.1-rc1 drops.
Regards,
Mike
Quoted 26 lines
Quoted 17 lines
Quoted 5 lines
Also do you have a patch which adds this node to a dts file somewhere?
this has been done when atlas7 platform was added. see:
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/arch/arm/boot/dts/atlas7.dtsithere is a node:
car: clock-controller at 18620000 { compatible = "sirf,atlas7-car"; reg = <0x18620000 0x1000>; #clock-cells = <1>; #reset-cells = <1>; };Quoted 7 lines
Quoted 4 lines
Otherwise the rest of this patch looks OK.
Regards,
Mike-barry
-barry
PATCH 1/1 clk: sirf: add CSR atlas7 clk and reset support
2015-04-17 5:59 GMT+08:00 Michael Turquette <[email protected]>:
Quoted 81 lines
Quoting Barry Song (2015-04-14 04:57:18)
Quoted 80 lines
2015-04-12 18:24 GMT+08:00, Barry Song <[email protected]>:
Quoted 79 lines
2015-04-11 8:23 GMT+08:00 Michael Turquette <[email protected]>:
Quoted 77 lines
Quoting Barry Song (2014-12-25 00:24:05)
Quoted 63 lines
From: Zhiwu Song <[email protected]>
the hardware node includes both clock and reset support, so it is named as "car".
this patch implements Flexibleclocks(mux, divider, gate), Selectableclock(mux, divider, gate), root clock(gate),leaf clock(gate), others. it also implements the reset controller functionality.Signed-off-by Zhiwu Song <[email protected]>Signed-off-by Barry Song <[email protected]>--- .../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.cDocumentation/devicetree/bindings/clock/csr,atlas7-car.txt new file +36
-0@@ -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>;Documentation/devicetree/bindings/clock/csr,atlas7-car.txt line 46
Quoted 10 lines
Documentation/devicetree/bindings/clock/csr,atlas7-car.txt new file +10
-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".
Quoted 6 lines
Quoted 4 lines
Quoted 1 line
ok. Mike, thanks for reviewing.
hi mike, the example of the clock provider node has been done by the v2 patch sent two days ago.is there enough time to push it to 4.1?
I'm afraid not. I'll take it after 4.1-rc1 drops.
hi Mike, can you pick up this one to clk-next as the plan? after this, i have several incremental patches to rebase against your tree for 4.1.
Quoted 3 lines
Regards,
Mike
-barry