18c2ecf20Sopenharmony_ciMediaTek Serial ATA controller
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ciRequired properties:
48c2ecf20Sopenharmony_ci - compatible	   : Must be "mediatek,<chip>-ahci", "mediatek,mtk-ahci".
58c2ecf20Sopenharmony_ci		     When using "mediatek,mtk-ahci" compatible strings, you
68c2ecf20Sopenharmony_ci		     need SoC specific ones in addition, one of:
78c2ecf20Sopenharmony_ci		     - "mediatek,mt7622-ahci"
88c2ecf20Sopenharmony_ci - reg		   : Physical base addresses and length of register sets.
98c2ecf20Sopenharmony_ci - interrupts	   : Interrupt associated with the SATA device.
108c2ecf20Sopenharmony_ci - interrupt-names : Associated name must be: "hostc".
118c2ecf20Sopenharmony_ci - clocks	   : A list of phandle and clock specifier pairs, one for each
128c2ecf20Sopenharmony_ci		     entry in clock-names.
138c2ecf20Sopenharmony_ci - clock-names	   : Associated names must be: "ahb", "axi", "asic", "rbc", "pm".
148c2ecf20Sopenharmony_ci - phys		   : A phandle and PHY specifier pair for the PHY port.
158c2ecf20Sopenharmony_ci - phy-names	   : Associated name must be: "sata-phy".
168c2ecf20Sopenharmony_ci - ports-implemented : See ./ahci-platform.txt for details.
178c2ecf20Sopenharmony_ci
188c2ecf20Sopenharmony_ciOptional properties:
198c2ecf20Sopenharmony_ci - power-domains   : A phandle and power domain specifier pair to the power
208c2ecf20Sopenharmony_ci		     domain which is responsible for collapsing and restoring
218c2ecf20Sopenharmony_ci		     power to the peripheral.
228c2ecf20Sopenharmony_ci - resets	   : Must contain an entry for each entry in reset-names.
238c2ecf20Sopenharmony_ci		     See ../reset/reset.txt for details.
248c2ecf20Sopenharmony_ci - reset-names	   : Associated names must be: "axi", "sw", "reg".
258c2ecf20Sopenharmony_ci - mediatek,phy-mode : A phandle to the system controller, used to enable
268c2ecf20Sopenharmony_ci		       SATA function.
278c2ecf20Sopenharmony_ci
288c2ecf20Sopenharmony_ciExample:
298c2ecf20Sopenharmony_ci
308c2ecf20Sopenharmony_ci	sata: sata@1a200000 {
318c2ecf20Sopenharmony_ci		compatible = "mediatek,mt7622-ahci",
328c2ecf20Sopenharmony_ci			     "mediatek,mtk-ahci";
338c2ecf20Sopenharmony_ci		reg = <0 0x1a200000 0 0x1100>;
348c2ecf20Sopenharmony_ci		interrupts = <GIC_SPI 233 IRQ_TYPE_LEVEL_HIGH>;
358c2ecf20Sopenharmony_ci		interrupt-names = "hostc";
368c2ecf20Sopenharmony_ci		clocks = <&pciesys CLK_SATA_AHB_EN>,
378c2ecf20Sopenharmony_ci			 <&pciesys CLK_SATA_AXI_EN>,
388c2ecf20Sopenharmony_ci			 <&pciesys CLK_SATA_ASIC_EN>,
398c2ecf20Sopenharmony_ci			 <&pciesys CLK_SATA_RBC_EN>,
408c2ecf20Sopenharmony_ci			 <&pciesys CLK_SATA_PM_EN>;
418c2ecf20Sopenharmony_ci		clock-names = "ahb", "axi", "asic", "rbc", "pm";
428c2ecf20Sopenharmony_ci		phys = <&u3port1 PHY_TYPE_SATA>;
438c2ecf20Sopenharmony_ci		phy-names = "sata-phy";
448c2ecf20Sopenharmony_ci		ports-implemented = <0x1>;
458c2ecf20Sopenharmony_ci		power-domains = <&scpsys MT7622_POWER_DOMAIN_HIF0>;
468c2ecf20Sopenharmony_ci		resets = <&pciesys MT7622_SATA_AXI_BUS_RST>,
478c2ecf20Sopenharmony_ci			 <&pciesys MT7622_SATA_PHY_SW_RST>,
488c2ecf20Sopenharmony_ci			 <&pciesys MT7622_SATA_PHY_REG_RST>;
498c2ecf20Sopenharmony_ci		reset-names = "axi", "sw", "reg";
508c2ecf20Sopenharmony_ci		mediatek,phy-mode = <&pciesys>;
518c2ecf20Sopenharmony_ci	};
52