xref: /linux/Documentation/devicetree/bindings/phy/fsl,imx8-pcie-phy.yaml (revision 7ae9fb1b7ecbb5d85d07857943f677fd1a559b18)
1b3b5516aSRichard Zhu# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2b3b5516aSRichard Zhu%YAML 1.2
3b3b5516aSRichard Zhu---
4b3b5516aSRichard Zhu$id: http://devicetree.org/schemas/phy/fsl,imx8-pcie-phy.yaml#
5b3b5516aSRichard Zhu$schema: http://devicetree.org/meta-schemas/core.yaml#
6b3b5516aSRichard Zhu
7dd3cb467SAndrew Lunntitle: Freescale i.MX8 SoC series PCIe PHY
8b3b5516aSRichard Zhu
9b3b5516aSRichard Zhumaintainers:
10b3b5516aSRichard Zhu  - Richard Zhu <hongxing.zhu@nxp.com>
11b3b5516aSRichard Zhu
12b3b5516aSRichard Zhuproperties:
13b3b5516aSRichard Zhu  "#phy-cells":
14b3b5516aSRichard Zhu    const: 0
15b3b5516aSRichard Zhu
16b3b5516aSRichard Zhu  compatible:
17b3b5516aSRichard Zhu    enum:
18b3b5516aSRichard Zhu      - fsl,imx8mm-pcie-phy
19*25caed3dSRichard Zhu      - fsl,imx8mp-pcie-phy
20b3b5516aSRichard Zhu
21b3b5516aSRichard Zhu  reg:
22b3b5516aSRichard Zhu    maxItems: 1
23b3b5516aSRichard Zhu
24b3b5516aSRichard Zhu  clocks:
25b3b5516aSRichard Zhu    maxItems: 1
26b3b5516aSRichard Zhu
27b3b5516aSRichard Zhu  clock-names:
28b3b5516aSRichard Zhu    items:
29b3b5516aSRichard Zhu      - const: ref
30b3b5516aSRichard Zhu
31b3b5516aSRichard Zhu  resets:
32*25caed3dSRichard Zhu    minItems: 1
33*25caed3dSRichard Zhu    maxItems: 2
34b3b5516aSRichard Zhu
35b3b5516aSRichard Zhu  reset-names:
36*25caed3dSRichard Zhu    oneOf:
37*25caed3dSRichard Zhu      - items:          # for iMX8MM
38b3b5516aSRichard Zhu          - const: pciephy
39*25caed3dSRichard Zhu      - items:          # for IMX8MP
40*25caed3dSRichard Zhu          - const: pciephy
41*25caed3dSRichard Zhu          - const: perst
42b3b5516aSRichard Zhu
43b3b5516aSRichard Zhu  fsl,refclk-pad-mode:
44b3b5516aSRichard Zhu    description: |
45b3b5516aSRichard Zhu      Specifies the mode of the refclk pad used. It can be UNUSED(PHY
46b3b5516aSRichard Zhu      refclock is derived from SoC internal source), INPUT(PHY refclock
47b3b5516aSRichard Zhu      is provided externally via the refclk pad) or OUTPUT(PHY refclock
48b3b5516aSRichard Zhu      is derived from SoC internal source and provided on the refclk pad).
49b3b5516aSRichard Zhu      Refer include/dt-bindings/phy/phy-imx8-pcie.h for the constants
50b3b5516aSRichard Zhu      to be used.
51b3b5516aSRichard Zhu    $ref: /schemas/types.yaml#/definitions/uint32
52b3b5516aSRichard Zhu    enum: [ 0, 1, 2 ]
53b3b5516aSRichard Zhu
54b3b5516aSRichard Zhu  fsl,tx-deemph-gen1:
55b3b5516aSRichard Zhu    description: Gen1 De-emphasis value (optional).
56b3b5516aSRichard Zhu    $ref: /schemas/types.yaml#/definitions/uint32
57b3b5516aSRichard Zhu    default: 0
58b3b5516aSRichard Zhu
59b3b5516aSRichard Zhu  fsl,tx-deemph-gen2:
60b3b5516aSRichard Zhu    description: Gen2 De-emphasis value (optional).
61b3b5516aSRichard Zhu    $ref: /schemas/types.yaml#/definitions/uint32
62b3b5516aSRichard Zhu    default: 0
63b3b5516aSRichard Zhu
64b3b5516aSRichard Zhu  fsl,clkreq-unsupported:
65b3b5516aSRichard Zhu    type: boolean
66b3b5516aSRichard Zhu    description: A boolean property indicating the CLKREQ# signal is
67b3b5516aSRichard Zhu      not supported in the board design (optional)
68b3b5516aSRichard Zhu
69*25caed3dSRichard Zhu  power-domains:
70*25caed3dSRichard Zhu    description: PCIe PHY  power domain (optional).
71*25caed3dSRichard Zhu    maxItems: 1
72*25caed3dSRichard Zhu
73b3b5516aSRichard Zhurequired:
74b3b5516aSRichard Zhu  - "#phy-cells"
75b3b5516aSRichard Zhu  - compatible
76b3b5516aSRichard Zhu  - reg
77b3b5516aSRichard Zhu  - clocks
78b3b5516aSRichard Zhu  - clock-names
79b3b5516aSRichard Zhu  - fsl,refclk-pad-mode
80b3b5516aSRichard Zhu
81b3b5516aSRichard ZhuadditionalProperties: false
82b3b5516aSRichard Zhu
83b3b5516aSRichard Zhuexamples:
84b3b5516aSRichard Zhu  - |
85b3b5516aSRichard Zhu    #include <dt-bindings/clock/imx8mm-clock.h>
86b3b5516aSRichard Zhu    #include <dt-bindings/phy/phy-imx8-pcie.h>
87b3b5516aSRichard Zhu    #include <dt-bindings/reset/imx8mq-reset.h>
88b3b5516aSRichard Zhu
89b3b5516aSRichard Zhu    pcie_phy: pcie-phy@32f00000 {
90b3b5516aSRichard Zhu            compatible = "fsl,imx8mm-pcie-phy";
91b3b5516aSRichard Zhu            reg = <0x32f00000 0x10000>;
92b3b5516aSRichard Zhu            clocks = <&clk IMX8MM_CLK_PCIE1_PHY>;
93b3b5516aSRichard Zhu            clock-names = "ref";
94b3b5516aSRichard Zhu            assigned-clocks = <&clk IMX8MM_CLK_PCIE1_PHY>;
95b3b5516aSRichard Zhu            assigned-clock-rates = <100000000>;
96b3b5516aSRichard Zhu            assigned-clock-parents = <&clk IMX8MM_SYS_PLL2_100M>;
97b3b5516aSRichard Zhu            resets = <&src IMX8MQ_RESET_PCIEPHY>;
98b3b5516aSRichard Zhu            reset-names = "pciephy";
99b3b5516aSRichard Zhu            fsl,refclk-pad-mode = <IMX8_PCIE_REFCLK_PAD_INPUT>;
100b3b5516aSRichard Zhu            #phy-cells = <0>;
101b3b5516aSRichard Zhu    };
102b3b5516aSRichard Zhu...
103