xref: /freebsd/sys/contrib/device-tree/Bindings/ata/cortina,gemini-sata-bridge.txt (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1* Cortina Systems Gemini SATA Bridge
2
3The Gemini SATA bridge in a SoC-internal PATA to SATA bridge that
4takes two Faraday Technology FTIDE010 PATA controllers and bridges
5them in different configurations to two SATA ports.
6
7Required properties:
8- compatible: should be
9  "cortina,gemini-sata-bridge"
10- reg: registers and size for the block
11- resets: phandles to the reset lines for both SATA bridges
12- reset-names: must be "sata0", "sata1"
13- clocks: phandles to the compulsory peripheral clocks
14- clock-names: must be "SATA0_PCLK", "SATA1_PCLK"
15- syscon: a phandle to the global Gemini system controller
16- cortina,gemini-ata-muxmode: tell the desired multiplexing mode for
17  the ATA controller and SATA bridges. Values 0..3:
18  Mode 0: ata0 master <-> sata0
19          ata1 master <-> sata1
20          ata0 slave interface brought out on IDE pads
21  Mode 1: ata0 master <-> sata0
22          ata1 master <-> sata1
23          ata1 slave interface brought out on IDE pads
24  Mode 2: ata1 master <-> sata1
25          ata1 slave  <-> sata0
26          ata0 master and slave interfaces brought out
27               on IDE pads
28  Mode 3: ata0 master <-> sata0
29          ata0 slave  <-> sata1
30          ata1 master and slave interfaces brought out
31               on IDE pads
32
33Optional boolean properties:
34- cortina,gemini-enable-ide-pins: enables the PATA to IDE connection.
35  The muxmode setting decides whether ATA0 or ATA1 is brought out,
36  and whether master, slave or both interfaces get brought out.
37- cortina,gemini-enable-sata-bridge: enables the PATA to SATA bridge
38  inside the Gemnini SoC. The Muxmode decides what PATA blocks will
39  be muxed out and how.
40
41Example:
42
43sata: sata@46000000 {
44	compatible = "cortina,gemini-sata-bridge";
45	reg = <0x46000000 0x100>;
46	resets = <&rcon 26>, <&rcon 27>;
47	reset-names = "sata0", "sata1";
48	clocks = <&gcc GEMINI_CLK_GATE_SATA0>,
49		 <&gcc GEMINI_CLK_GATE_SATA1>;
50	clock-names = "SATA0_PCLK", "SATA1_PCLK";
51	syscon = <&syscon>;
52	cortina,gemini-ata-muxmode = <3>;
53	cortina,gemini-enable-ide-pins;
54	cortina,gemini-enable-sata-bridge;
55};
56