18c2ecf20Sopenharmony_ci* Qualcomm AHCI SATA Controller
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ciSATA nodes are defined to describe on-chip Serial ATA controllers.
48c2ecf20Sopenharmony_ciEach SATA controller should have its own node.
58c2ecf20Sopenharmony_ci
68c2ecf20Sopenharmony_ciRequired properties:
78c2ecf20Sopenharmony_ci- compatible		: compatible list, must contain "generic-ahci"
88c2ecf20Sopenharmony_ci- interrupts		: <interrupt mapping for SATA IRQ>
98c2ecf20Sopenharmony_ci- reg			: <registers mapping>
108c2ecf20Sopenharmony_ci- phys			: Must contain exactly one entry as specified
118c2ecf20Sopenharmony_ci			  in phy-bindings.txt
128c2ecf20Sopenharmony_ci- phy-names		: Must be "sata-phy"
138c2ecf20Sopenharmony_ci
148c2ecf20Sopenharmony_ciRequired properties for "qcom,ipq806x-ahci" compatible:
158c2ecf20Sopenharmony_ci- clocks		: Must contain an entry for each entry in clock-names.
168c2ecf20Sopenharmony_ci- clock-names		: Shall be:
178c2ecf20Sopenharmony_ci				"slave_iface" - Fabric port AHB clock for SATA
188c2ecf20Sopenharmony_ci				"iface" - AHB clock
198c2ecf20Sopenharmony_ci				"core" - core clock
208c2ecf20Sopenharmony_ci				"rxoob" - RX out-of-band clock
218c2ecf20Sopenharmony_ci				"pmalive" - Power Module Alive clock
228c2ecf20Sopenharmony_ci- assigned-clocks	: Shall be:
238c2ecf20Sopenharmony_ci				SATA_RXOOB_CLK
248c2ecf20Sopenharmony_ci				SATA_PMALIVE_CLK
258c2ecf20Sopenharmony_ci- assigned-clock-rates	: Shall be:
268c2ecf20Sopenharmony_ci				100Mhz (100000000) for SATA_RXOOB_CLK
278c2ecf20Sopenharmony_ci				100Mhz (100000000) for SATA_PMALIVE_CLK
288c2ecf20Sopenharmony_ci
298c2ecf20Sopenharmony_ciExample:
308c2ecf20Sopenharmony_ci	sata@29000000 {
318c2ecf20Sopenharmony_ci		compatible = "qcom,ipq806x-ahci", "generic-ahci";
328c2ecf20Sopenharmony_ci		reg = <0x29000000 0x180>;
338c2ecf20Sopenharmony_ci
348c2ecf20Sopenharmony_ci		interrupts = <0 209 0x0>;
358c2ecf20Sopenharmony_ci
368c2ecf20Sopenharmony_ci		clocks = <&gcc SFAB_SATA_S_H_CLK>,
378c2ecf20Sopenharmony_ci			 <&gcc SATA_H_CLK>,
388c2ecf20Sopenharmony_ci			 <&gcc SATA_A_CLK>,
398c2ecf20Sopenharmony_ci			 <&gcc SATA_RXOOB_CLK>,
408c2ecf20Sopenharmony_ci			 <&gcc SATA_PMALIVE_CLK>;
418c2ecf20Sopenharmony_ci		clock-names = "slave_iface", "iface", "core",
428c2ecf20Sopenharmony_ci				"rxoob", "pmalive";
438c2ecf20Sopenharmony_ci		assigned-clocks = <&gcc SATA_RXOOB_CLK>, <&gcc SATA_PMALIVE_CLK>;
448c2ecf20Sopenharmony_ci		assigned-clock-rates = <100000000>, <100000000>;
458c2ecf20Sopenharmony_ci
468c2ecf20Sopenharmony_ci		phys = <&sata_phy>;
478c2ecf20Sopenharmony_ci		phy-names = "sata-phy";
488c2ecf20Sopenharmony_ci	};
49