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