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