Commit | Line | Data |
---|---|---|
5f098a3e | 1 | * AHCI SATA Controller |
02aac316 RH |
2 | |
3 | SATA nodes are defined to describe on-chip Serial ATA controllers. | |
4 | Each SATA controller should have its own node. | |
5 | ||
724f24ee AT |
6 | It is possible, but not required, to represent each port as a sub-node. |
7 | It allows to enable each port independently when dealing with multiple | |
8 | PHYs. | |
9 | ||
02aac316 | 10 | Required properties: |
5799d6d4 TP |
11 | - compatible : compatible string, one of: |
12 | - "allwinner,sun4i-a10-ahci" | |
a1a205df | 13 | - "hisilicon,hisi-ahci" |
5799d6d4 | 14 | - "ibm,476gtr-ahci" |
a3464ed2 | 15 | - "marvell,armada-380-ahci" |
5799d6d4 TP |
16 | - "snps,dwc-ahci" |
17 | - "snps,exynos5440-ahci" | |
18 | - "snps,spear-ahci" | |
724f24ee | 19 | - "generic-ahci" |
02aac316 RH |
20 | - interrupts : <interrupt mapping for SATA IRQ> |
21 | - reg : <registers mapping> | |
22 | ||
724f24ee AT |
23 | Please note that when using "generic-ahci" you must also specify a SoC specific |
24 | compatible: | |
25 | compatible = "manufacturer,soc-model-ahci", "generic-ahci"; | |
26 | ||
8996b89d | 27 | Optional properties: |
1dc737c4 | 28 | - dma-coherent : Present if dma operations are coherent |
156c5887 | 29 | - clocks : a list of phandle + clock specifier pairs |
4b3e603a | 30 | - target-supply : regulator for SATA target power |
724f24ee AT |
31 | - phys : reference to the SATA PHY node |
32 | - phy-names : must be "sata-phy" | |
33 | ||
34 | Required properties when using sub-nodes: | |
35 | - #address-cells : number of cells to encode an address | |
36 | - #size-cells : number of cells representing the size of an address | |
37 | ||
38 | ||
39 | Sub-nodes required properties: | |
40 | - reg : the port number | |
41 | - phys : reference to the SATA PHY node | |
42 | ||
8996b89d | 43 | |
c5754b52 | 44 | Examples: |
02aac316 | 45 | sata@ffe08000 { |
91c20950 ML |
46 | compatible = "snps,spear-ahci"; |
47 | reg = <0xffe08000 0x1000>; | |
48 | interrupts = <115>; | |
02aac316 | 49 | }; |
c5754b52 OS |
50 | |
51 | ahci: sata@01c18000 { | |
52 | compatible = "allwinner,sun4i-a10-ahci"; | |
53 | reg = <0x01c18000 0x1000>; | |
54 | interrupts = <56>; | |
55 | clocks = <&pll6 0>, <&ahb_gates 25>; | |
56 | target-supply = <®_ahci_5v>; | |
57 | }; | |
724f24ee AT |
58 | |
59 | With sub-nodes: | |
60 | sata@f7e90000 { | |
61 | compatible = "marvell,berlin2q-achi", "generic-ahci"; | |
62 | reg = <0xe90000 0x1000>; | |
63 | interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; | |
64 | clocks = <&chip CLKID_SATA>; | |
65 | #address-cells = <1>; | |
66 | #size-cells = <0>; | |
67 | ||
68 | sata0: sata-port@0 { | |
69 | reg = <0>; | |
70 | phys = <&sata_phy 0>; | |
71 | }; | |
72 | ||
73 | sata1: sata-port@1 { | |
74 | reg = <1>; | |
75 | phys = <&sata_phy 1>; | |
76 | }; | |
77 | }; |