ARM: dts: qcom: apq8064 - Add SATA controller support
authorSrinivas Kandagatla <srinivas.kandagatla@linaro.org>
Fri, 10 Apr 2015 20:43:56 +0000 (21:43 +0100)
committerKumar Gala <galak@codeaurora.org>
Mon, 27 Apr 2015 21:10:23 +0000 (16:10 -0500)
This patch adds AHCI based SATA controller support to APQ8064.
Tested on IFC6410 board.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Kumar Gala <galak@codeaurora.org>
arch/arm/boot/dts/qcom-apq8064-ifc6410.dts
arch/arm/boot/dts/qcom-apq8064.dtsi

index 122bf34..3d96cb8 100644 (file)
                        };
                };
 
+               sata_phy0: phy@1b400000 {
+                       status = "okay";
+               };
+
+               sata0: sata@29000000 {
+                       status          = "okay";
+                       target-supply   = <&pm8921_s4>;
+               };
+
                /* OTG */
                usb1_phy: phy@12500000 {
                        status          = "okay";
index 5aac9a5..1f900c7 100644 (file)
                        usb-phy         = <&usb4_phy>;
                };
 
+               sata_phy0: phy@1b400000 {
+                       compatible      = "qcom,apq8064-sata-phy";
+                       status          = "disabled";
+                       reg             = <0x1b400000 0x200>;
+                       reg-names       = "phy_mem";
+                       clocks          = <&gcc SATA_PHY_CFG_CLK>;
+                       clock-names     = "cfg";
+                       #phy-cells      = <0>;
+               };
+
+               sata0: sata@29000000 {
+                       compatible              = "generic-ahci";
+                       status                  = "disabled";
+                       reg                     = <0x29000000 0x180>;
+                       interrupts              = <GIC_SPI 209 IRQ_TYPE_NONE>;
+
+                       clocks                  = <&gcc SFAB_SATA_S_H_CLK>,
+                                               <&gcc SATA_H_CLK>,
+                                               <&gcc SATA_A_CLK>,
+                                               <&gcc SATA_RXOOB_CLK>,
+                                               <&gcc SATA_PMALIVE_CLK>;
+                       clock-names             = "slave_iface",
+                                               "iface",
+                                               "bus",
+                                               "rxoob",
+                                               "core_pmalive";
+
+                       assigned-clocks         = <&gcc SATA_RXOOB_CLK>,
+                                               <&gcc SATA_PMALIVE_CLK>;
+                       assigned-clock-rates    = <100000000>, <100000000>;
+
+                       phys                    = <&sata_phy0>;
+                       phy-names               = "sata-phy";
+               };
+
                /* Temporary fixed regulator */
                vsdcc_fixed: vsdcc-regulator {
                        compatible = "regulator-fixed";