arm64: Add APM X-Gene SoC SATA host controller and clock DTS entries

Signed-off-by: Loc Ho <[email protected]>
Signed-off-by: Tuan Phan <[email protected]>
Signed-off-by: Suman Tripathi <[email protected]>
---
 arch/arm64/boot/dts/apm-storm.dtsi |   81 ++++++++++++++++++++++++++++++++++++
 1 files changed, 81 insertions(+), 0 deletions(-)

diff --git a/arch/arm64/boot/dts/apm-storm.dtsi 
b/arch/arm64/boot/dts/apm-storm.dtsi
index f74c26a..fd8ff25 100644
--- a/arch/arm64/boot/dts/apm-storm.dtsi
+++ b/arch/arm64/boot/dts/apm-storm.dtsi
@@ -176,6 +176,51 @@
                                reg-names = "csr-reg";
                                clock-output-names = "eth8clk";
                        };
+
+                       sata01clk: sata01clk@1f21c000 {
+                               compatible = "apm,xgene-device-clock";
+                               #clock-cells = <1>;
+                               clocks = <&socplldiv2 0>;
+                               clock-names = "sata01clk";
+                               reg = <0x0 0x1f21c000 0x0 0x1000>;
+                               reg-names = "csr-reg";
+                               clock-output-names = "sata01clk";
+                               status = "disabled";
+                               csr-offset = <0x4>;
+                               csr-mask = <0x3f>;
+                               enable-offset = <0x0>;
+                               enable-mask = <0x3f>;
+                       };
+
+                       sata23clk: sata23clk@1f22c000 {
+                               compatible = "apm,xgene-device-clock";
+                               #clock-cells = <1>;
+                               clocks = <&socplldiv2 0>;
+                               clock-names = "sata23clk";
+                               reg = <0x0 0x1f22c000 0x0 0x1000>;
+                               reg-names = "csr-reg";
+                               clock-output-names = "sata23clk";
+                               status = "ok";
+                               csr-offset = <0x4>;
+                               csr-mask = <0x3f>;
+                               enable-offset = <0x0>;
+                               enable-mask = <0x3f>;
+                       };
+
+                       sata45clk: sata45clk@1f23c000 {
+                               compatible = "apm,xgene-device-clock";
+                               #clock-cells = <1>;
+                               clocks = <&socplldiv2 0>;
+                               clock-names = "sata45clk";
+                               reg = <0x0 0x1f23c000 0x0 0x1000>;
+                               reg-names = "csr-reg";
+                               clock-output-names = "sata45clk";
+                               status = "ok";
+                               csr-offset = <0x4>;
+                               csr-mask = <0x3f>;
+                               enable-offset = <0x0>;
+                               enable-mask = <0x3f>;
+                       };
                };
 
                serial0: serial@1c020000 {
@@ -224,5 +269,41 @@
                        apm-tx-boost-gain = <0x3 0x3 0x3 0x3 0x3 0x3>;
                        apm-tx-eye-tuning = <0xa 0xa 0xa 0xc 0xc 0xc>;
                };
+
+               sata1: sata@1a000000 {
+                       compatible = "apm,xgene-ahci-sgmii";
+                       reg = <0x0 0x1a000000 0x0 0x1000>,
+                             <0x0 0x1f210000 0x0 0x10000>;
+                       interrupt-parent = <&gic>;
+                       interrupts = <0x0 0x86 0x4>;
+                       status = "disabled";
+                       clocks = <&sata01clk 0>;
+                       phys = <&phy1 0>;
+                       phy-names = "sata-6g";
+               };
+
+               sata2: sata@1a400000 {
+                       compatible = "apm,xgene-ahci-sgmii";
+                       reg = <0x0 0x1a400000 0x0 0x1000>,
+                             <0x0 0x1f220000 0x0 0x10000>;
+                       interrupt-parent = <&gic>;
+                       interrupts = <0x0 0x87 0x4>;
+                       status = "ok";
+                       clocks = <&sata23clk 0>;
+                       phys = <&phy2 0>;
+                       phy-names = "sata-6g";
+               };
+
+               sata3: sata@1a800000 {
+                       compatible = "apm,xgene-ahci-pcie";
+                       reg = <0x0 0x1a800000 0x0 0x1000>,
+                             <0x0 0x1f230000 0x0 0x10000>;
+                       interrupt-parent = <&gic>;
+                       interrupts = <0x0 0x88 0x4>;
+                       status = "ok";
+                       clocks = <&sata45clk 0>;
+                       phys = <&phy3 0>;
+                       phy-names = "sata-6g";
+               };
        };
 };
-- 
1.5.5

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to