Skip to content

Commit c33ffdb

Browse files
committed
Merge tag 'phy-for-6.11' of git://git.kernel.org/pub/scm/linux/kernel/git/phy/linux-phy
Pull phy updates from Vinod Koul: "New Support - Samsung Exynos gs101 drd combo phy - Qualcomm SC8180x USB uniphy, IPQ9574 QMP PCIe phy - Airoha EN7581 PCIe phy - Freescale i.MX8Q HSIO SerDes phy - Starfive jh7110 dphy tx Updates: - Resume support for j721e-wiz driver - Updates to Exynos usbdrd driver - Support for optional power domains in g12a usb2-phy driver - Debugfs support and updates to zynqmp driver" * tag 'phy-for-6.11' of git://git.kernel.org/pub/scm/linux/kernel/git/phy/linux-phy: (56 commits) phy: airoha: Add dtime and Rx AEQ IO registers dt-bindings: phy: airoha: Add dtime and Rx AEQ IO registers dt-bindings: phy: rockchip-emmc-phy: Convert to dtschema dt-bindings: phy: qcom,qmp-usb: fix spelling error phy: exynos5-usbdrd: support Exynos USBDRD 3.1 combo phy (HS & SS) phy: exynos5-usbdrd: convert Vbus supplies to regulator_bulk phy: exynos5-usbdrd: convert (phy) register access clock to clk_bulk phy: exynos5-usbdrd: convert core clocks to clk_bulk phy: exynos5-usbdrd: support isolating HS and SS ports independently dt-bindings: phy: samsung,usb3-drd-phy: add gs101 compatible phy: core: Fix documentation of of_phy_get phy: starfive: Correct the dphy configure process phy: zynqmp: Add debugfs support phy: zynqmp: Take the phy mutex in xlate phy: zynqmp: Only wait for PLL lock "primary" instances phy: zynqmp: Store instance instead of type phy: zynqmp: Enable reference clock correctly phy: cadence-torrent: Check return value on register read phy: Fix the cacography in phy-exynos5250-usb2.c phy: phy-rockchip-samsung-hdptx: Select CONFIG_MFD_SYSCON ...
2 parents ad7b0b7 + 2a011c3 commit c33ffdb

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+4923
-452
lines changed
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/phy/airoha,en7581-pcie-phy.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Airoha EN7581 PCI-Express PHY
8+
9+
maintainers:
10+
- Lorenzo Bianconi <lorenzo@kernel.org>
11+
12+
description:
13+
The PCIe PHY supports physical layer functionality for PCIe Gen2/Gen3 port.
14+
15+
properties:
16+
compatible:
17+
const: airoha,en7581-pcie-phy
18+
19+
reg:
20+
items:
21+
- description: PCIE analog base address
22+
- description: PCIE lane0 base address
23+
- description: PCIE lane1 base address
24+
- description: PCIE lane0 detection time base address
25+
- description: PCIE lane1 detection time base address
26+
- description: PCIE Rx AEQ base address
27+
28+
reg-names:
29+
items:
30+
- const: csr-2l
31+
- const: pma0
32+
- const: pma1
33+
- const: p0-xr-dtime
34+
- const: p1-xr-dtime
35+
- const: rx-aeq
36+
37+
"#phy-cells":
38+
const: 0
39+
40+
required:
41+
- compatible
42+
- reg
43+
- reg-names
44+
- "#phy-cells"
45+
46+
additionalProperties: false
47+
48+
examples:
49+
- |
50+
#include <dt-bindings/phy/phy.h>
51+
52+
soc {
53+
#address-cells = <2>;
54+
#size-cells = <2>;
55+
56+
phy@11e80000 {
57+
compatible = "airoha,en7581-pcie-phy";
58+
#phy-cells = <0>;
59+
reg = <0x0 0x1fa5a000 0x0 0xfff>,
60+
<0x0 0x1fa5b000 0x0 0xfff>,
61+
<0x0 0x1fa5c000 0x0 0xfff>,
62+
<0x0 0x1fc10044 0x0 0x4>,
63+
<0x0 0x1fc30044 0x0 0x4>,
64+
<0x0 0x1fc15030 0x0 0x104>;
65+
reg-names = "csr-2l", "pma0", "pma1",
66+
"p0-xr-dtime", "p1-xr-dtime",
67+
"rx-aeq";
68+
};
69+
};

Documentation/devicetree/bindings/phy/amlogic,g12a-usb2-phy.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,9 @@ properties:
4141
Phandle to a regulator that provides power to the PHY. This
4242
regulator will be managed during the PHY power on/off sequence.
4343

44+
power-domains:
45+
maxItems: 1
46+
4447
required:
4548
- compatible
4649
- reg
Lines changed: 164 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,164 @@
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+
...

Documentation/devicetree/bindings/phy/marvell,armada-cp110-utmi-phy.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,12 @@ properties:
4141
Phandle to the system controller node
4242
$ref: /schemas/types.yaml#/definitions/phandle
4343

44+
swap-dx-lanes:
45+
$ref: /schemas/types.yaml#/definitions/uint32-array
46+
description: |
47+
Specifies the ports which will swap the differential-pair (D+/D-),
48+
default is not-swapped.
49+
4450
# Required child nodes:
4551

4652
patternProperties:

Documentation/devicetree/bindings/phy/qcom,ipq8074-qmp-pcie-phy.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ properties:
1919
- qcom,ipq6018-qmp-pcie-phy
2020
- qcom,ipq8074-qmp-gen3-pcie-phy
2121
- qcom,ipq8074-qmp-pcie-phy
22+
- qcom,ipq9574-qmp-gen3x1-pcie-phy
23+
- qcom,ipq9574-qmp-gen3x2-pcie-phy
2224

2325
reg:
2426
items:

Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-pcie-phy.yaml

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -91,8 +91,7 @@ properties:
9191
"#clock-cells": true
9292

9393
clock-output-names:
94-
minItems: 1
95-
maxItems: 2
94+
maxItems: 1
9695

9796
"#phy-cells":
9897
const: 0
@@ -222,14 +221,10 @@ allOf:
222221
- qcom,sm8650-qmp-gen4x2-pcie-phy
223222
then:
224223
properties:
225-
clock-output-names:
226-
minItems: 2
227224
"#clock-cells":
228225
const: 1
229226
else:
230227
properties:
231-
clock-output-names:
232-
maxItems: 1
233228
"#clock-cells":
234229
const: 0
235230

Documentation/devicetree/bindings/phy/qcom,sc8280xp-qmp-usb3-uni-phy.yaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,9 @@ properties:
2020
- qcom,ipq8074-qmp-usb3-phy
2121
- qcom,ipq9574-qmp-usb3-phy
2222
- qcom,msm8996-qmp-usb3-phy
23-
- com,qdu1000-qmp-usb3-uni-phy
23+
- qcom,qdu1000-qmp-usb3-uni-phy
2424
- qcom,sa8775p-qmp-usb3-uni-phy
25+
- qcom,sc8180x-qmp-usb3-uni-phy
2526
- qcom,sc8280xp-qmp-usb3-uni-phy
2627
- qcom,sdm845-qmp-usb3-uni-phy
2728
- qcom,sdx55-qmp-usb3-uni-phy
@@ -112,6 +113,7 @@ allOf:
112113
enum:
113114
- qcom,qdu1000-qmp-usb3-uni-phy
114115
- qcom,sa8775p-qmp-usb3-uni-phy
116+
- qcom,sc8180x-qmp-usb3-uni-phy
115117
- qcom,sc8280xp-qmp-usb3-uni-phy
116118
- qcom,sm8150-qmp-usb3-uni-phy
117119
- qcom,sm8250-qmp-usb3-uni-phy
@@ -152,6 +154,7 @@ allOf:
152154
contains:
153155
enum:
154156
- qcom,sa8775p-qmp-usb3-uni-phy
157+
- qcom,sc8180x-qmp-usb3-uni-phy
155158
- qcom,sc8280xp-qmp-usb3-uni-phy
156159
- qcom,x1e80100-qmp-usb3-uni-phy
157160
then:

Documentation/devicetree/bindings/phy/qcom,usb-hs-phy.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ if:
1515
contains:
1616
enum:
1717
- qcom,usb-hs-phy-apq8064
18+
- qcom,usb-hs-phy-msm8660
1819
- qcom,usb-hs-phy-msm8960
1920
then:
2021
properties:
@@ -41,6 +42,7 @@ properties:
4142
- enum:
4243
- qcom,usb-hs-phy-apq8064
4344
- qcom,usb-hs-phy-msm8226
45+
- qcom,usb-hs-phy-msm8660
4446
- qcom,usb-hs-phy-msm8916
4547
- qcom,usb-hs-phy-msm8960
4648
- qcom,usb-hs-phy-msm8974
Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
# SPDX-License-Identifier: GPL-2.0-only
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/phy/rockchip,rk3399-emmc-phy.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Rockchip EMMC PHY
8+
9+
maintainers:
10+
- Heiko Stuebner <heiko@sntech.de>
11+
12+
properties:
13+
compatible:
14+
const: rockchip,rk3399-emmc-phy
15+
16+
reg:
17+
maxItems: 1
18+
19+
clocks:
20+
maxItems: 1
21+
22+
clock-names:
23+
const: emmcclk
24+
25+
drive-impedance-ohm:
26+
$ref: /schemas/types.yaml#/definitions/uint32
27+
description:
28+
Specifies the drive impedance in Ohm.
29+
enum: [33, 40, 50, 66, 100]
30+
default: 50
31+
32+
rockchip,enable-strobe-pulldown:
33+
type: boolean
34+
description: |
35+
Enable internal pull-down for the strobe
36+
line. If not set, pull-down is not used.
37+
38+
rockchip,output-tapdelay-select:
39+
$ref: /schemas/types.yaml#/definitions/uint32
40+
description:
41+
Specifies the phyctrl_otapdlysec register.
42+
default: 0x4
43+
maximum: 0xf
44+
45+
"#phy-cells":
46+
const: 0
47+
48+
required:
49+
- compatible
50+
- reg
51+
- "#phy-cells"
52+
53+
additionalProperties: false
54+
55+
examples:
56+
- |
57+
phy@f780 {
58+
compatible = "rockchip,rk3399-emmc-phy";
59+
reg = <0xf780 0x20>;
60+
clocks = <&sdhci>;
61+
clock-names = "emmcclk";
62+
drive-impedance-ohm = <50>;
63+
#phy-cells = <0>;
64+
};

0 commit comments

Comments
 (0)