xref: /linux/Documentation/devicetree/bindings/ata/apm-xgene.txt (revision cf40a76e7d5874bb25f4404eecc58a2e033af885)
11ccaead5SLoc Ho* APM X-Gene 6.0 Gb/s SATA host controller nodes
21ccaead5SLoc Ho
31ccaead5SLoc HoSATA host controller nodes are defined to describe on-chip Serial ATA
41ccaead5SLoc Hocontrollers. Each SATA controller (pair of ports) have its own node.
51ccaead5SLoc Ho
61ccaead5SLoc HoRequired properties:
71ccaead5SLoc Ho- compatible		: Shall contain:
81ccaead5SLoc Ho  * "apm,xgene-ahci"
91ccaead5SLoc Ho- reg			: First memory resource shall be the AHCI memory
101ccaead5SLoc Ho			  resource.
111ccaead5SLoc Ho			  Second memory resource shall be the host controller
121ccaead5SLoc Ho			  core memory resource.
131ccaead5SLoc Ho			  Third memory resource shall be the host controller
141ccaead5SLoc Ho			  diagnostic memory resource.
151ccaead5SLoc Ho			  4th memory resource shall be the host controller
161ccaead5SLoc Ho			  AXI memory resource.
171ccaead5SLoc Ho			  5th optional memory resource shall be the host
181ccaead5SLoc Ho			  controller MUX memory resource if required.
191ccaead5SLoc Ho- interrupts		: Interrupt-specifier for SATA host controller IRQ.
201ccaead5SLoc Ho- clocks		: Reference to the clock entry.
211ccaead5SLoc Ho- phys			: A list of phandles + phy-specifiers, one for each
221ccaead5SLoc Ho			  entry in phy-names.
231ccaead5SLoc Ho- phy-names		: Should contain:
241ccaead5SLoc Ho  * "sata-phy" for the SATA 6.0Gbps PHY
251ccaead5SLoc Ho
261ccaead5SLoc HoOptional properties:
27*7a8d1ec1SCatalin Marinas- dma-coherent		: Present if dma operations are coherent
281ccaead5SLoc Ho- status		: Shall be "ok" if enabled or "disabled" if disabled.
291ccaead5SLoc Ho			  Default is "ok".
301ccaead5SLoc Ho
311ccaead5SLoc HoExample:
321ccaead5SLoc Ho		sataclk: sataclk {
331ccaead5SLoc Ho			compatible = "fixed-clock";
341ccaead5SLoc Ho			#clock-cells = <1>;
351ccaead5SLoc Ho			clock-frequency = <100000000>;
361ccaead5SLoc Ho			clock-output-names = "sataclk";
371ccaead5SLoc Ho		};
381ccaead5SLoc Ho
391ccaead5SLoc Ho		phy2: phy@1f22a000 {
401ccaead5SLoc Ho			compatible = "apm,xgene-phy";
411ccaead5SLoc Ho			reg = <0x0 0x1f22a000 0x0 0x100>;
421ccaead5SLoc Ho			#phy-cells = <1>;
431ccaead5SLoc Ho		};
441ccaead5SLoc Ho
451ccaead5SLoc Ho		phy3: phy@1f23a000 {
461ccaead5SLoc Ho			compatible = "apm,xgene-phy";
471ccaead5SLoc Ho			reg = <0x0 0x1f23a000 0x0 0x100>;
481ccaead5SLoc Ho			#phy-cells = <1>;
491ccaead5SLoc Ho		};
501ccaead5SLoc Ho
511ccaead5SLoc Ho		sata2: sata@1a400000 {
521ccaead5SLoc Ho			compatible = "apm,xgene-ahci";
531ccaead5SLoc Ho			reg = <0x0 0x1a400000 0x0 0x1000>,
541ccaead5SLoc Ho			      <0x0 0x1f220000 0x0 0x1000>,
551ccaead5SLoc Ho			      <0x0 0x1f22d000 0x0 0x1000>,
561ccaead5SLoc Ho			      <0x0 0x1f22e000 0x0 0x1000>,
571ccaead5SLoc Ho			      <0x0 0x1f227000 0x0 0x1000>;
581ccaead5SLoc Ho			interrupts = <0x0 0x87 0x4>;
59*7a8d1ec1SCatalin Marinas			dma-coherent;
601ccaead5SLoc Ho			clocks = <&sataclk 0>;
611ccaead5SLoc Ho			phys = <&phy2 0>;
621ccaead5SLoc Ho			phy-names = "sata-phy";
631ccaead5SLoc Ho		};
641ccaead5SLoc Ho
651ccaead5SLoc Ho		sata3: sata@1a800000 {
661ccaead5SLoc Ho			compatible = "apm,xgene-ahci-pcie";
671ccaead5SLoc Ho			reg = <0x0 0x1a800000 0x0 0x1000>,
681ccaead5SLoc Ho			      <0x0 0x1f230000 0x0 0x1000>,
691ccaead5SLoc Ho			      <0x0 0x1f23d000 0x0 0x1000>,
701ccaead5SLoc Ho			      <0x0 0x1f23e000 0x0 0x1000>,
711ccaead5SLoc Ho			      <0x0 0x1f237000 0x0 0x1000>;
721ccaead5SLoc Ho			interrupts = <0x0 0x88 0x4>;
73*7a8d1ec1SCatalin Marinas			dma-coherent;
741ccaead5SLoc Ho			clocks = <&sataclk 0>;
751ccaead5SLoc Ho			phys = <&phy3 0>;
761ccaead5SLoc Ho			phy-names = "sata-phy";
771ccaead5SLoc Ho		};
78