~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/phy/fsl,imx8qm-hsio.yaml

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2 %YAML 1.2
  3 ---
  4 $id: http://devicetree.org/schemas/phy/fsl,imx8qm-hsio.yaml#
  5 $schema: http://devicetree.org/meta-schemas/core.yaml#
  6 
  7 title: Freescale i.MX8QM SoC series High Speed IO(HSIO) SERDES PHY
  8 
  9 maintainers:
 10   - Richard Zhu <hongxing.zhu@nxp.com>
 11 
 12 properties:
 13   compatible:
 14     enum:
 15       - fsl,imx8qm-hsio
 16       - fsl,imx8qxp-hsio
 17   reg:
 18     items:
 19       - description: Base address and length of the PHY block
 20       - description: HSIO control and status registers(CSR) of the PHY
 21       - description: HSIO CSR of the controller bound to the PHY
 22       - description: HSIO CSR for MISC
 23 
 24   reg-names:
 25     items:
 26       - const: reg
 27       - const: phy
 28       - const: ctrl
 29       - const: misc
 30 
 31   "#phy-cells":
 32     const: 3
 33     description:
 34       The first defines lane index.
 35       The second defines the type of the PHY refer to the include phy.h.
 36       The third defines the controller index, indicated which controller
 37       is bound to the lane.
 38 
 39   clocks:
 40     minItems: 5
 41     maxItems: 14
 42 
 43   clock-names:
 44     minItems: 5
 45     maxItems: 14
 46 
 47   fsl,hsio-cfg:
 48     description: |
 49       Specifies the use case of the HSIO module in the hardware design.
 50       Regarding the design of i.MX8QM HSIO subsystem, HSIO module can be
 51       confiured as following three use cases.
 52       +---------------------------------------+
 53       |                  | i.MX8QM            |
 54       |------------------|--------------------|
 55       |                  | Lane0| Lane1| Lane2|
 56       |------------------|------|------|------|
 57       | pciea-x2-sata    | PCIEA| PCIEA| SATA |
 58       |------------------|------|------|------|
 59       | pciea-x2-pcieb   | PCIEA| PCIEA| PCIEB|
 60       |------------------|------|------|------|
 61       | pciea-pcieb-sata | PCIEA| PCIEB| SATA |
 62       +---------------------------------------+
 63     $ref: /schemas/types.yaml#/definitions/string
 64     enum: [ pciea-x2-sata, pciea-x2-pcieb, pciea-pcieb-sata]
 65     default: pciea-pcieb-sata
 66 
 67   fsl,refclk-pad-mode:
 68     description:
 69       Specifies the mode of the refclk pad used. INPUT(PHY refclock is
 70       provided externally via the refclk pad) or OUTPUT(PHY refclock is
 71       derived from SoC internal source and provided on the refclk pad).
 72       This property not exists means unused(PHY refclock is derived from
 73       SoC internal source).
 74     $ref: /schemas/types.yaml#/definitions/string
 75     enum: [ input, output, unused ]
 76     default: unused
 77 
 78   power-domains:
 79     minItems: 1
 80     maxItems: 2
 81 
 82 required:
 83   - compatible
 84   - reg
 85   - reg-names
 86   - "#phy-cells"
 87   - clocks
 88   - clock-names
 89   - fsl,hsio-cfg
 90 
 91 allOf:
 92   - if:
 93       properties:
 94         compatible:
 95           contains:
 96             enum:
 97               - fsl,imx8qxp-hsio
 98     then:
 99       properties:
100         clock-names:
101           items:
102             - const: pclk0
103             - const: apb_pclk0
104             - const: phy0_crr
105             - const: ctl0_crr
106             - const: misc_crr
107         power-domains:
108           maxItems: 1
109 
110   - if:
111       properties:
112         compatible:
113           contains:
114             enum:
115               - fsl,imx8qm-hsio
116     then:
117       properties:
118         clock-names:
119           items:
120             - const: pclk0
121             - const: pclk1
122             - const: apb_pclk0
123             - const: apb_pclk1
124             - const: pclk2
125             - const: epcs_tx
126             - const: epcs_rx
127             - const: apb_pclk2
128             - const: phy0_crr
129             - const: phy1_crr
130             - const: ctl0_crr
131             - const: ctl1_crr
132             - const: ctl2_crr
133             - const: misc_crr
134         power-domains:
135           minItems: 2
136 
137 additionalProperties: false
138 
139 examples:
140   - |
141     #include <dt-bindings/clock/imx8-clock.h>
142     #include <dt-bindings/clock/imx8-lpcg.h>
143     #include <dt-bindings/firmware/imx/rsrc.h>
144     #include <dt-bindings/phy/phy-imx8-pcie.h>
145 
146     phy@5f1a0000 {
147         compatible = "fsl,imx8qxp-hsio";
148         reg = <0x5f1a0000 0x10000>,
149               <0x5f120000 0x10000>,
150               <0x5f140000 0x10000>,
151               <0x5f160000 0x10000>;
152         reg-names = "reg", "phy", "ctrl", "misc";
153         clocks = <&phyx1_lpcg IMX_LPCG_CLK_0>,
154                  <&phyx1_lpcg IMX_LPCG_CLK_4>,
155                  <&phyx1_crr1_lpcg IMX_LPCG_CLK_4>,
156                  <&pcieb_crr3_lpcg IMX_LPCG_CLK_4>,
157                  <&misc_crr5_lpcg IMX_LPCG_CLK_4>;
158         clock-names = "pclk0", "apb_pclk0", "phy0_crr", "ctl0_crr", "misc_crr";
159         power-domains = <&pd IMX_SC_R_SERDES_1>;
160         #phy-cells = <3>;
161         fsl,hsio-cfg = "pciea-pcieb-sata";
162         fsl,refclk-pad-mode = "input";
163     };
164 ...

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php