1*c66ec88fSEmmanuel VadotMediaTek Serial ATA controller 2*c66ec88fSEmmanuel Vadot 3*c66ec88fSEmmanuel VadotRequired properties: 4*c66ec88fSEmmanuel Vadot - compatible : Must be "mediatek,<chip>-ahci", "mediatek,mtk-ahci". 5*c66ec88fSEmmanuel Vadot When using "mediatek,mtk-ahci" compatible strings, you 6*c66ec88fSEmmanuel Vadot need SoC specific ones in addition, one of: 7*c66ec88fSEmmanuel Vadot - "mediatek,mt7622-ahci" 8*c66ec88fSEmmanuel Vadot - reg : Physical base addresses and length of register sets. 9*c66ec88fSEmmanuel Vadot - interrupts : Interrupt associated with the SATA device. 10*c66ec88fSEmmanuel Vadot - interrupt-names : Associated name must be: "hostc". 11*c66ec88fSEmmanuel Vadot - clocks : A list of phandle and clock specifier pairs, one for each 12*c66ec88fSEmmanuel Vadot entry in clock-names. 13*c66ec88fSEmmanuel Vadot - clock-names : Associated names must be: "ahb", "axi", "asic", "rbc", "pm". 14*c66ec88fSEmmanuel Vadot - phys : A phandle and PHY specifier pair for the PHY port. 15*c66ec88fSEmmanuel Vadot - phy-names : Associated name must be: "sata-phy". 16*c66ec88fSEmmanuel Vadot - ports-implemented : See ./ahci-platform.txt for details. 17*c66ec88fSEmmanuel Vadot 18*c66ec88fSEmmanuel VadotOptional properties: 19*c66ec88fSEmmanuel Vadot - power-domains : A phandle and power domain specifier pair to the power 20*c66ec88fSEmmanuel Vadot domain which is responsible for collapsing and restoring 21*c66ec88fSEmmanuel Vadot power to the peripheral. 22*c66ec88fSEmmanuel Vadot - resets : Must contain an entry for each entry in reset-names. 23*c66ec88fSEmmanuel Vadot See ../reset/reset.txt for details. 24*c66ec88fSEmmanuel Vadot - reset-names : Associated names must be: "axi", "sw", "reg". 25*c66ec88fSEmmanuel Vadot - mediatek,phy-mode : A phandle to the system controller, used to enable 26*c66ec88fSEmmanuel Vadot SATA function. 27*c66ec88fSEmmanuel Vadot 28*c66ec88fSEmmanuel VadotExample: 29*c66ec88fSEmmanuel Vadot 30*c66ec88fSEmmanuel Vadot sata: sata@1a200000 { 31*c66ec88fSEmmanuel Vadot compatible = "mediatek,mt7622-ahci", 32*c66ec88fSEmmanuel Vadot "mediatek,mtk-ahci"; 33*c66ec88fSEmmanuel Vadot reg = <0 0x1a200000 0 0x1100>; 34*c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 233 IRQ_TYPE_LEVEL_HIGH>; 35*c66ec88fSEmmanuel Vadot interrupt-names = "hostc"; 36*c66ec88fSEmmanuel Vadot clocks = <&pciesys CLK_SATA_AHB_EN>, 37*c66ec88fSEmmanuel Vadot <&pciesys CLK_SATA_AXI_EN>, 38*c66ec88fSEmmanuel Vadot <&pciesys CLK_SATA_ASIC_EN>, 39*c66ec88fSEmmanuel Vadot <&pciesys CLK_SATA_RBC_EN>, 40*c66ec88fSEmmanuel Vadot <&pciesys CLK_SATA_PM_EN>; 41*c66ec88fSEmmanuel Vadot clock-names = "ahb", "axi", "asic", "rbc", "pm"; 42*c66ec88fSEmmanuel Vadot phys = <&u3port1 PHY_TYPE_SATA>; 43*c66ec88fSEmmanuel Vadot phy-names = "sata-phy"; 44*c66ec88fSEmmanuel Vadot ports-implemented = <0x1>; 45*c66ec88fSEmmanuel Vadot power-domains = <&scpsys MT7622_POWER_DOMAIN_HIF0>; 46*c66ec88fSEmmanuel Vadot resets = <&pciesys MT7622_SATA_AXI_BUS_RST>, 47*c66ec88fSEmmanuel Vadot <&pciesys MT7622_SATA_PHY_SW_RST>, 48*c66ec88fSEmmanuel Vadot <&pciesys MT7622_SATA_PHY_REG_RST>; 49*c66ec88fSEmmanuel Vadot reset-names = "axi", "sw", "reg"; 50*c66ec88fSEmmanuel Vadot mediatek,phy-mode = <&pciesys>; 51*c66ec88fSEmmanuel Vadot }; 52