diff options
author | Lee Jones <lee.jones@linaro.org> | 2014-07-10 05:09:31 -0400 |
---|---|---|
committer | Kishon Vijay Abraham I <kishon@ti.com> | 2014-07-22 03:16:12 -0400 |
commit | f5c9f3be608017577731ebe8be37e55f800586d3 (patch) | |
tree | f5b22e9e1f8bcf0ae0a207d68a3affb8745398a2 /Documentation/devicetree/bindings/phy | |
parent | c4aee1aacb4798d23f514ab4eb59acef752d2397 (diff) |
phy: miphy365x: Add Device Tree bindings for the MiPHY365x
The MiPHY365x is a Generic PHY which can serve various SATA or PCIe
devices. It has 2 ports which it can use for either; both SATA, both
PCIe or one of each in any configuration.
Acked-by: Mark Rutland <mark.rutland@arm.com>
Acked-by: Alexandre Torgue <alexandre.torgue@st.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Diffstat (limited to 'Documentation/devicetree/bindings/phy')
-rw-r--r-- | Documentation/devicetree/bindings/phy/phy-miphy365x.txt | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/phy/phy-miphy365x.txt b/Documentation/devicetree/bindings/phy/phy-miphy365x.txt new file mode 100644 index 000000000000..42c880886cf7 --- /dev/null +++ b/Documentation/devicetree/bindings/phy/phy-miphy365x.txt | |||
@@ -0,0 +1,76 @@ | |||
1 | STMicroelectronics STi MIPHY365x PHY binding | ||
2 | ============================================ | ||
3 | |||
4 | This binding describes a miphy device that is used to control PHY hardware | ||
5 | for SATA and PCIe. | ||
6 | |||
7 | Required properties (controller (parent) node): | ||
8 | - compatible : Should be "st,miphy365x-phy" | ||
9 | - st,syscfg : Should be a phandle of the system configuration register group | ||
10 | which contain the SATA, PCIe mode setting bits | ||
11 | |||
12 | Required nodes : A sub-node is required for each channel the controller | ||
13 | provides. Address range information including the usual | ||
14 | 'reg' and 'reg-names' properties are used inside these | ||
15 | nodes to describe the controller's topology. These nodes | ||
16 | are translated by the driver's .xlate() function. | ||
17 | |||
18 | Required properties (port (child) node): | ||
19 | - #phy-cells : Should be 1 (See second example) | ||
20 | Cell after port phandle is device type from: | ||
21 | - MIPHY_TYPE_SATA | ||
22 | - MIPHY_TYPE_PCI | ||
23 | - reg : Address and length of register sets for each device in | ||
24 | "reg-names" | ||
25 | - reg-names : The names of the register addresses corresponding to the | ||
26 | registers filled in "reg": | ||
27 | - sata: For SATA devices | ||
28 | - pcie: For PCIe devices | ||
29 | - syscfg: To specify the syscfg based config register | ||
30 | |||
31 | Optional properties (port (child) node): | ||
32 | - st,sata-gen : Generation of locally attached SATA IP. Expected values | ||
33 | are {1,2,3). If not supplied generation 1 hardware will | ||
34 | be expected | ||
35 | - st,pcie-tx-pol-inv : Bool property to invert the polarity PCIe Tx (Txn/Txp) | ||
36 | - st,sata-tx-pol-inv : Bool property to invert the polarity SATA Tx (Txn/Txp) | ||
37 | |||
38 | Example: | ||
39 | |||
40 | miphy365x_phy: miphy365x@fe382000 { | ||
41 | compatible = "st,miphy365x-phy"; | ||
42 | st,syscfg = <&syscfg_rear>; | ||
43 | #address-cells = <1>; | ||
44 | #size-cells = <1>; | ||
45 | ranges; | ||
46 | |||
47 | phy_port0: port@fe382000 { | ||
48 | reg = <0xfe382000 0x100>, <0xfe394000 0x100>, <0x824 0x4>; | ||
49 | reg-names = "sata", "pcie", "syscfg"; | ||
50 | #phy-cells = <1>; | ||
51 | st,sata-gen = <3>; | ||
52 | }; | ||
53 | |||
54 | phy_port1: port@fe38a000 { | ||
55 | reg = <0xfe38a000 0x100>, <0xfe804000 0x100>, <0x828 0x4>;; | ||
56 | reg-names = "sata", "pcie", "syscfg"; | ||
57 | #phy-cells = <1>; | ||
58 | st,pcie-tx-pol-inv; | ||
59 | }; | ||
60 | }; | ||
61 | |||
62 | Specifying phy control of devices | ||
63 | ================================= | ||
64 | |||
65 | Device nodes should specify the configuration required in their "phys" | ||
66 | property, containing a phandle to the phy port node and a device type. | ||
67 | |||
68 | Example: | ||
69 | |||
70 | #include <dt-bindings/phy/phy-miphy365x.h> | ||
71 | |||
72 | sata0: sata@fe380000 { | ||
73 | ... | ||
74 | phys = <&phy_port0 MIPHY_TYPE_SATA>; | ||
75 | ... | ||
76 | }; | ||