162306a36Sopenharmony_ciMediaTek Serial ATA controller
262306a36Sopenharmony_ci
362306a36Sopenharmony_ciRequired properties:
462306a36Sopenharmony_ci - compatible	   : Must be "mediatek,<chip>-ahci", "mediatek,mtk-ahci".
562306a36Sopenharmony_ci		     When using "mediatek,mtk-ahci" compatible strings, you
662306a36Sopenharmony_ci		     need SoC specific ones in addition, one of:
762306a36Sopenharmony_ci		     - "mediatek,mt7622-ahci"
862306a36Sopenharmony_ci - reg		   : Physical base addresses and length of register sets.
962306a36Sopenharmony_ci - interrupts	   : Interrupt associated with the SATA device.
1062306a36Sopenharmony_ci - interrupt-names : Associated name must be: "hostc".
1162306a36Sopenharmony_ci - clocks	   : A list of phandle and clock specifier pairs, one for each
1262306a36Sopenharmony_ci		     entry in clock-names.
1362306a36Sopenharmony_ci - clock-names	   : Associated names must be: "ahb", "axi", "asic", "rbc", "pm".
1462306a36Sopenharmony_ci - phys		   : A phandle and PHY specifier pair for the PHY port.
1562306a36Sopenharmony_ci - phy-names	   : Associated name must be: "sata-phy".
1662306a36Sopenharmony_ci - ports-implemented : See ./ahci-platform.txt for details.
1762306a36Sopenharmony_ci
1862306a36Sopenharmony_ciOptional properties:
1962306a36Sopenharmony_ci - power-domains   : A phandle and power domain specifier pair to the power
2062306a36Sopenharmony_ci		     domain which is responsible for collapsing and restoring
2162306a36Sopenharmony_ci		     power to the peripheral.
2262306a36Sopenharmony_ci - resets	   : Must contain an entry for each entry in reset-names.
2362306a36Sopenharmony_ci		     See ../reset/reset.txt for details.
2462306a36Sopenharmony_ci - reset-names	   : Associated names must be: "axi", "sw", "reg".
2562306a36Sopenharmony_ci - mediatek,phy-mode : A phandle to the system controller, used to enable
2662306a36Sopenharmony_ci		       SATA function.
2762306a36Sopenharmony_ci
2862306a36Sopenharmony_ciExample:
2962306a36Sopenharmony_ci
3062306a36Sopenharmony_ci	sata: sata@1a200000 {
3162306a36Sopenharmony_ci		compatible = "mediatek,mt7622-ahci",
3262306a36Sopenharmony_ci			     "mediatek,mtk-ahci";
3362306a36Sopenharmony_ci		reg = <0 0x1a200000 0 0x1100>;
3462306a36Sopenharmony_ci		interrupts = <GIC_SPI 233 IRQ_TYPE_LEVEL_HIGH>;
3562306a36Sopenharmony_ci		interrupt-names = "hostc";
3662306a36Sopenharmony_ci		clocks = <&pciesys CLK_SATA_AHB_EN>,
3762306a36Sopenharmony_ci			 <&pciesys CLK_SATA_AXI_EN>,
3862306a36Sopenharmony_ci			 <&pciesys CLK_SATA_ASIC_EN>,
3962306a36Sopenharmony_ci			 <&pciesys CLK_SATA_RBC_EN>,
4062306a36Sopenharmony_ci			 <&pciesys CLK_SATA_PM_EN>;
4162306a36Sopenharmony_ci		clock-names = "ahb", "axi", "asic", "rbc", "pm";
4262306a36Sopenharmony_ci		phys = <&u3port1 PHY_TYPE_SATA>;
4362306a36Sopenharmony_ci		phy-names = "sata-phy";
4462306a36Sopenharmony_ci		ports-implemented = <0x1>;
4562306a36Sopenharmony_ci		power-domains = <&scpsys MT7622_POWER_DOMAIN_HIF0>;
4662306a36Sopenharmony_ci		resets = <&pciesys MT7622_SATA_AXI_BUS_RST>,
4762306a36Sopenharmony_ci			 <&pciesys MT7622_SATA_PHY_SW_RST>,
4862306a36Sopenharmony_ci			 <&pciesys MT7622_SATA_PHY_REG_RST>;
4962306a36Sopenharmony_ci		reset-names = "axi", "sw", "reg";
5062306a36Sopenharmony_ci		mediatek,phy-mode = <&pciesys>;
5162306a36Sopenharmony_ci	};
52