[PATCH v3 4/4] ARM: dts: apq8064: Add SATA controller support.
From: Srinivas Kandagatla <hidden>
Date: 2014-10-01 09:07:08
Also in:
linux-arm-msm, linux-devicetree, lkml
Subsystem:
the rest · Maintainer:
Linus Torvalds
This patch adds AHCI based SATA controller support to APQ8064. Tested on IFC6410 board. Signed-off-by: Srinivas Kandagatla <redacted> --- arch/arm/boot/dts/qcom-apq8064-ifc6410.dts | 15 +++++++++++++ arch/arm/boot/dts/qcom-apq8064.dtsi | 35 ++++++++++++++++++++++++++++++ 2 files changed, 50 insertions(+)
diff --git a/arch/arm/boot/dts/qcom-apq8064-ifc6410.dts b/arch/arm/boot/dts/qcom-apq8064-ifc6410.dts
index 3e2c777..6856c9d 100644
--- a/arch/arm/boot/dts/qcom-apq8064-ifc6410.dts
+++ b/arch/arm/boot/dts/qcom-apq8064-ifc6410.dts@@ -47,6 +47,12 @@ qcom,switch-mode-frequency = <4800000>; }; + pm8921_s4: pm8921-s4 { + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + qcom,switch-mode-frequency = <3200000>; + }; + pm8921_l3: pm8921-l3 { regulator-min-microvolt = <3050000>; regulator-max-microvolt = <3300000>;
@@ -63,6 +69,15 @@ }; }; + sata_phy0: sata-phy at 1b400000{ + status = "okay"; + }; + + sata0: sata at 29000000 { + status = "okay"; + target-supply = <&pm8921_s4>; + }; + /* OTG */ usb1_phy: phy at 12500000 { status = "okay";
diff --git a/arch/arm/boot/dts/qcom-apq8064.dtsi b/arch/arm/boot/dts/qcom-apq8064.dtsi
index c251c72..e65aff0 100644
--- a/arch/arm/boot/dts/qcom-apq8064.dtsi
+++ b/arch/arm/boot/dts/qcom-apq8064.dtsi@@ -566,6 +566,41 @@ usb-phy = <&usb4_phy>; }; + sata_phy0: sata-phy at 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 at 29000000 { + compatible = "generic-ahci"; + status = "disabled"; + reg = <0x29000000 0x180>; + interrupts = <0 209 0>; + + 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";
--
1.9.1