1*c66ec88fSEmmanuel Vadot* Qualcomm AHCI SATA Controller 2*c66ec88fSEmmanuel Vadot 3*c66ec88fSEmmanuel VadotSATA nodes are defined to describe on-chip Serial ATA controllers. 4*c66ec88fSEmmanuel VadotEach SATA controller should have its own node. 5*c66ec88fSEmmanuel Vadot 6*c66ec88fSEmmanuel VadotRequired properties: 7*c66ec88fSEmmanuel Vadot- compatible : compatible list, must contain "generic-ahci" 8*c66ec88fSEmmanuel Vadot- interrupts : <interrupt mapping for SATA IRQ> 9*c66ec88fSEmmanuel Vadot- reg : <registers mapping> 10*c66ec88fSEmmanuel Vadot- phys : Must contain exactly one entry as specified 11*c66ec88fSEmmanuel Vadot in phy-bindings.txt 12*c66ec88fSEmmanuel Vadot- phy-names : Must be "sata-phy" 13*c66ec88fSEmmanuel Vadot 14*c66ec88fSEmmanuel VadotRequired properties for "qcom,ipq806x-ahci" compatible: 15*c66ec88fSEmmanuel Vadot- clocks : Must contain an entry for each entry in clock-names. 16*c66ec88fSEmmanuel Vadot- clock-names : Shall be: 17*c66ec88fSEmmanuel Vadot "slave_iface" - Fabric port AHB clock for SATA 18*c66ec88fSEmmanuel Vadot "iface" - AHB clock 19*c66ec88fSEmmanuel Vadot "core" - core clock 20*c66ec88fSEmmanuel Vadot "rxoob" - RX out-of-band clock 21*c66ec88fSEmmanuel Vadot "pmalive" - Power Module Alive clock 22*c66ec88fSEmmanuel Vadot- assigned-clocks : Shall be: 23*c66ec88fSEmmanuel Vadot SATA_RXOOB_CLK 24*c66ec88fSEmmanuel Vadot SATA_PMALIVE_CLK 25*c66ec88fSEmmanuel Vadot- assigned-clock-rates : Shall be: 26*c66ec88fSEmmanuel Vadot 100Mhz (100000000) for SATA_RXOOB_CLK 27*c66ec88fSEmmanuel Vadot 100Mhz (100000000) for SATA_PMALIVE_CLK 28*c66ec88fSEmmanuel Vadot 29*c66ec88fSEmmanuel VadotExample: 30*c66ec88fSEmmanuel Vadot sata@29000000 { 31*c66ec88fSEmmanuel Vadot compatible = "qcom,ipq806x-ahci", "generic-ahci"; 32*c66ec88fSEmmanuel Vadot reg = <0x29000000 0x180>; 33*c66ec88fSEmmanuel Vadot 34*c66ec88fSEmmanuel Vadot interrupts = <0 209 0x0>; 35*c66ec88fSEmmanuel Vadot 36*c66ec88fSEmmanuel Vadot clocks = <&gcc SFAB_SATA_S_H_CLK>, 37*c66ec88fSEmmanuel Vadot <&gcc SATA_H_CLK>, 38*c66ec88fSEmmanuel Vadot <&gcc SATA_A_CLK>, 39*c66ec88fSEmmanuel Vadot <&gcc SATA_RXOOB_CLK>, 40*c66ec88fSEmmanuel Vadot <&gcc SATA_PMALIVE_CLK>; 41*c66ec88fSEmmanuel Vadot clock-names = "slave_iface", "iface", "core", 42*c66ec88fSEmmanuel Vadot "rxoob", "pmalive"; 43*c66ec88fSEmmanuel Vadot assigned-clocks = <&gcc SATA_RXOOB_CLK>, <&gcc SATA_PMALIVE_CLK>; 44*c66ec88fSEmmanuel Vadot assigned-clock-rates = <100000000>, <100000000>; 45*c66ec88fSEmmanuel Vadot 46*c66ec88fSEmmanuel Vadot phys = <&sata_phy>; 47*c66ec88fSEmmanuel Vadot phy-names = "sata-phy"; 48*c66ec88fSEmmanuel Vadot }; 49