-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge tag 'phy-for-4.20' of git://git.kernel.org/pub/scm/linux/kernel…
…/git/kishon/linux-phy into usb-next Kishon writes: phy: for 4.20 *) Add new PHY driver for Socionext PCIe, USB2 and USB3 PHY *) Add new PHY driver for Rockchip HDMI PHY *) Add new PHY driver for Cadence display port PHY *) Add support for UFS PHY in Qualcomm's SDM845 SoC *) Add correct PHY init sequence for BCM63138 SATA PHY *) Add support for bringing the uart2 out through the usb dm+dp pin in Rockchips's rk3188 *) Re-design R-Car Gen3 USB PHY w.r.t support for OTG *) Cleanup Qualcomm's UFS PHY, QMP PHY (for PCIe and USB3) and QUSB2 PHY *) A preparation patch to remove the node name pointer from struct device_node *) Minor cleanups in some of the other PHY drivers. Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com> * tag 'phy-for-4.20' of git://git.kernel.org/pub/scm/linux/kernel/git/kishon/linux-phy: (41 commits) phy: renesas: convert to SPDX identifiers phy: lantiq: Fix compile warning phy: qcom-ufs: Declare 20nm qcom ufs qmp phy as Broken scsi/ufs: qcom: Remove ufs_qcom_phy_*() calls from host phy: qcom-ufs: Remove stale methods that handle ref clk dt-bindings: phy-qcom-qmp: Add UFS phy compatible string for sdm845 phy: Add QMP phy based UFS phy support for sdm845 phy: General struct and field cleanup phy: Update PHY power control sequence phy: rockchip-usb: add usb-uart setup for rk3188 phy: phy-twl4030-usb: fix denied runtime access phy: renesas: rcar-gen3-usb2: add is_otg_channel to use "role" sysfs phy: renesas: rcar-gen3-usb2: add conditions for uses_otg_pins == false phy: renesas: rcar-gen3-usb2: change a condition "dr_mode" phy: renesas: rcar-gen3-usb2: unify OBINTEN handling phy: renesas: rcar-gen3-usb2: Check a property to use otg pins phy: renesas: rcar-gen3-usb2: Rename has_otg_pins to uses_otg_pins phy: renesas: rcar-gen3-usb2: fix vbus_ctrl for role sysfs dt-bindings: rcar-gen3-phy-usb2: add no-otg-pins property phy: brcm-sata: Add BCM63138 (DSL) PHY init sequence ...
- Loading branch information
Showing
51 changed files
with
3,954 additions
and
282 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
Cadence MHDP DisplayPort SD0801 PHY binding | ||
=========================================== | ||
|
||
This binding describes the Cadence SD0801 PHY hardware included with | ||
the Cadence MHDP DisplayPort controller. | ||
|
||
------------------------------------------------------------------------------- | ||
Required properties (controller (parent) node): | ||
- compatible : Should be "cdns,dp-phy" | ||
- reg : Defines the following sets of registers in the parent | ||
mhdp device: | ||
- Offset of the DPTX PHY configuration registers | ||
- Offset of the SD0801 PHY configuration registers | ||
- #phy-cells : from the generic PHY bindings, must be 0. | ||
|
||
Optional properties: | ||
- num_lanes : Number of DisplayPort lanes to use (1, 2 or 4) | ||
- max_bit_rate : Maximum DisplayPort link bit rate to use, in Mbps (2160, | ||
2430, 2700, 3240, 4320, 5400 or 8100) | ||
------------------------------------------------------------------------------- | ||
|
||
Example: | ||
dp_phy: phy@f0fb030a00 { | ||
compatible = "cdns,dp-phy"; | ||
reg = <0xf0 0xfb030a00 0x0 0x00000040>, | ||
<0xf0 0xfb500000 0x0 0x00100000>; | ||
num_lanes = <4>; | ||
max_bit_rate = <8100>; | ||
#phy-cells = <0>; | ||
}; |
43 changes: 43 additions & 0 deletions
43
Documentation/devicetree/bindings/phy/phy-rockchip-inno-hdmi.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
ROCKCHIP HDMI PHY WITH INNO IP BLOCK | ||
|
||
Required properties: | ||
- compatible : should be one of the listed compatibles: | ||
* "rockchip,rk3228-hdmi-phy", | ||
* "rockchip,rk3328-hdmi-phy"; | ||
- reg : Address and length of the hdmi phy control register set | ||
- clocks : phandle + clock specifier for the phy clocks | ||
- clock-names : string, clock name, must contain "sysclk" for system | ||
control and register configuration, "refoclk" for crystal- | ||
oscillator reference PLL clock input and "refpclk" for pclk- | ||
based refeference PLL clock input. | ||
- #clock-cells: should be 0. | ||
- clock-output-names : shall be the name for the output clock. | ||
- interrupts : phandle + interrupt specified for the hdmiphy interrupt | ||
- #phy-cells : must be 0. See ./phy-bindings.txt for details. | ||
|
||
Optional properties for rk3328-hdmi-phy: | ||
- nvmem-cells = phandle + nvmem specifier for the cpu-version efuse | ||
- nvmem-cell-names : "cpu-version" to read the chip version, required | ||
for adjustment to some frequency settings | ||
|
||
Example: | ||
hdmi_phy: hdmi-phy@12030000 { | ||
compatible = "rockchip,rk3228-hdmi-phy"; | ||
reg = <0x12030000 0x10000>; | ||
#phy-cells = <0>; | ||
clocks = <&cru PCLK_HDMI_PHY>, <&xin24m>, <&cru DCLK_HDMIPHY>; | ||
clock-names = "sysclk", "refoclk", "refpclk"; | ||
#clock-cells = <0>; | ||
clock-output-names = "hdmi_phy"; | ||
status = "disabled"; | ||
}; | ||
|
||
Then the PHY can be used in other nodes such as: | ||
|
||
hdmi: hdmi@200a0000 { | ||
compatible = "rockchip,rk3228-dw-hdmi"; | ||
... | ||
phys = <&hdmi_phy>; | ||
phy-names = "hdmi"; | ||
... | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
10 changes: 6 additions & 4 deletions
10
Documentation/devicetree/bindings/phy/rcar-gen3-phy-usb3.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
31 changes: 31 additions & 0 deletions
31
Documentation/devicetree/bindings/phy/uniphier-pcie-phy.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
Socionext UniPhier PCIe PHY bindings | ||
|
||
This describes the devicetree bindings for PHY interface built into | ||
PCIe controller implemented on Socionext UniPhier SoCs. | ||
|
||
Required properties: | ||
- compatible: Should contain one of the following: | ||
"socionext,uniphier-ld20-pcie-phy" - for LD20 PHY | ||
"socionext,uniphier-pxs3-pcie-phy" - for PXs3 PHY | ||
- reg: Specifies offset and length of the register set for the device. | ||
- #phy-cells: Must be zero. | ||
- clocks: A phandle to the clock gate for PCIe glue layer including | ||
this phy. | ||
- resets: A phandle to the reset line for PCIe glue layer including | ||
this phy. | ||
|
||
Optional properties: | ||
- socionext,syscon: A phandle to system control to set configurations | ||
for phy. | ||
|
||
Refer to phy/phy-bindings.txt for the generic PHY binding properties. | ||
|
||
Example: | ||
pcie_phy: phy@66038000 { | ||
compatible = "socionext,uniphier-ld20-pcie-phy"; | ||
reg = <0x66038000 0x4000>; | ||
#phy-cells = <0>; | ||
clocks = <&sys_clk 24>; | ||
resets = <&sys_rst 24>; | ||
socionext,syscon = <&soc_glue>; | ||
}; |
45 changes: 45 additions & 0 deletions
45
Documentation/devicetree/bindings/phy/uniphier-usb2-phy.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,45 @@ | ||
Socionext UniPhier USB2 PHY | ||
|
||
This describes the devicetree bindings for PHY interface built into | ||
USB2 controller implemented on Socionext UniPhier SoCs. | ||
|
||
Pro4 SoC has both USB2 and USB3 host controllers, however, this USB3 | ||
controller doesn't include its own High-Speed PHY. This needs to specify | ||
USB2 PHY instead of USB3 HS-PHY. | ||
|
||
Required properties: | ||
- compatible: Should contain one of the following: | ||
"socionext,uniphier-pro4-usb2-phy" - for Pro4 SoC | ||
"socionext,uniphier-ld11-usb2-phy" - for LD11 SoC | ||
|
||
Sub-nodes: | ||
Each PHY should be represented as a sub-node. | ||
|
||
Sub-nodes required properties: | ||
- #phy-cells: Should be 0. | ||
- reg: The number of the PHY. | ||
|
||
Sub-nodes optional properties: | ||
- vbus-supply: A phandle to the regulator for USB VBUS. | ||
|
||
Refer to phy/phy-bindings.txt for the generic PHY binding properties. | ||
|
||
Example: | ||
soc-glue@5f800000 { | ||
... | ||
usb-phy { | ||
compatible = "socionext,uniphier-ld11-usb2-phy"; | ||
usb_phy0: phy@0 { | ||
reg = <0>; | ||
#phy-cells = <0>; | ||
}; | ||
... | ||
}; | ||
}; | ||
|
||
usb@5a800100 { | ||
compatible = "socionext,uniphier-ehci", "generic-ehci"; | ||
... | ||
phy-names = "usb"; | ||
phys = <&usb_phy0>; | ||
}; |
69 changes: 69 additions & 0 deletions
69
Documentation/devicetree/bindings/phy/uniphier-usb3-hsphy.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,69 @@ | ||
Socionext UniPhier USB3 High-Speed (HS) PHY | ||
|
||
This describes the devicetree bindings for PHY interfaces built into | ||
USB3 controller implemented on Socionext UniPhier SoCs. | ||
Although the controller includes High-Speed PHY and Super-Speed PHY, | ||
this describes about High-Speed PHY. | ||
|
||
Required properties: | ||
- compatible: Should contain one of the following: | ||
"socionext,uniphier-pro4-usb3-hsphy" - for Pro4 SoC | ||
"socionext,uniphier-pxs2-usb3-hsphy" - for PXs2 SoC | ||
"socionext,uniphier-ld20-usb3-hsphy" - for LD20 SoC | ||
"socionext,uniphier-pxs3-usb3-hsphy" - for PXs3 SoC | ||
- reg: Specifies offset and length of the register set for the device. | ||
- #phy-cells: Should be 0. | ||
- clocks: A list of phandles to the clock gate for USB3 glue layer. | ||
According to the clock-names, appropriate clocks are required. | ||
- clock-names: Should contain the following: | ||
"gio", "link" - for Pro4 SoC | ||
"phy", "phy-ext", "link" - for PXs3 SoC, "phy-ext" is optional. | ||
"phy", "link" - for others | ||
- resets: A list of phandles to the reset control for USB3 glue layer. | ||
According to the reset-names, appropriate resets are required. | ||
- reset-names: Should contain the following: | ||
"gio", "link" - for Pro4 SoC | ||
"phy", "link" - for others | ||
|
||
Optional properties: | ||
- vbus-supply: A phandle to the regulator for USB VBUS. | ||
- nvmem-cells: Phandles to nvmem cell that contains the trimming data. | ||
Available only for HS-PHY implemented on LD20 and PXs3, and | ||
if unspecified, default value is used. | ||
- nvmem-cell-names: Should be the following names, which correspond to | ||
each nvmem-cells. | ||
All of the 3 parameters associated with the following names are | ||
required for each port, if any one is omitted, the trimming data | ||
of the port will not be set at all. | ||
"rterm", "sel_t", "hs_i" - Each cell name for phy parameters | ||
|
||
Refer to phy/phy-bindings.txt for the generic PHY binding properties. | ||
|
||
Example: | ||
|
||
usb-glue@65b00000 { | ||
compatible = "socionext,uniphier-ld20-dwc3-glue", | ||
"simple-mfd"; | ||
#address-cells = <1>; | ||
#size-cells = <1>; | ||
ranges = <0 0x65b00000 0x400>; | ||
|
||
usb_vbus0: regulator { | ||
... | ||
}; | ||
|
||
usb_hsphy0: hs-phy@200 { | ||
compatible = "socionext,uniphier-ld20-usb3-hsphy"; | ||
reg = <0x200 0x10>; | ||
#phy-cells = <0>; | ||
clock-names = "link", "phy"; | ||
clocks = <&sys_clk 14>, <&sys_clk 16>; | ||
reset-names = "link", "phy"; | ||
resets = <&sys_rst 14>, <&sys_rst 16>; | ||
vbus-supply = <&usb_vbus0>; | ||
nvmem-cell-names = "rterm", "sel_t", "hs_i"; | ||
nvmem-cells = <&usb_rterm0>, <&usb_sel_t0>, | ||
<&usb_hs_i0>; | ||
}; | ||
... | ||
}; |
57 changes: 57 additions & 0 deletions
57
Documentation/devicetree/bindings/phy/uniphier-usb3-ssphy.txt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,57 @@ | ||
Socionext UniPhier USB3 Super-Speed (SS) PHY | ||
|
||
This describes the devicetree bindings for PHY interfaces built into | ||
USB3 controller implemented on Socionext UniPhier SoCs. | ||
Although the controller includes High-Speed PHY and Super-Speed PHY, | ||
this describes about Super-Speed PHY. | ||
|
||
Required properties: | ||
- compatible: Should contain one of the following: | ||
"socionext,uniphier-pro4-usb3-ssphy" - for Pro4 SoC | ||
"socionext,uniphier-pxs2-usb3-ssphy" - for PXs2 SoC | ||
"socionext,uniphier-ld20-usb3-ssphy" - for LD20 SoC | ||
"socionext,uniphier-pxs3-usb3-ssphy" - for PXs3 SoC | ||
- reg: Specifies offset and length of the register set for the device. | ||
- #phy-cells: Should be 0. | ||
- clocks: A list of phandles to the clock gate for USB3 glue layer. | ||
According to the clock-names, appropriate clocks are required. | ||
- clock-names: | ||
"gio", "link" - for Pro4 SoC | ||
"phy", "phy-ext", "link" - for PXs3 SoC, "phy-ext" is optional. | ||
"phy", "link" - for others | ||
- resets: A list of phandles to the reset control for USB3 glue layer. | ||
According to the reset-names, appropriate resets are required. | ||
- reset-names: | ||
"gio", "link" - for Pro4 SoC | ||
"phy", "link" - for others | ||
|
||
Optional properties: | ||
- vbus-supply: A phandle to the regulator for USB VBUS. | ||
|
||
Refer to phy/phy-bindings.txt for the generic PHY binding properties. | ||
|
||
Example: | ||
|
||
usb-glue@65b00000 { | ||
compatible = "socionext,uniphier-ld20-dwc3-glue", | ||
"simple-mfd"; | ||
#address-cells = <1>; | ||
#size-cells = <1>; | ||
ranges = <0 0x65b00000 0x400>; | ||
|
||
usb_vbus0: regulator { | ||
... | ||
}; | ||
|
||
usb_ssphy0: ss-phy@300 { | ||
compatible = "socionext,uniphier-ld20-usb3-ssphy"; | ||
reg = <0x300 0x10>; | ||
#phy-cells = <0>; | ||
clock-names = "link", "phy"; | ||
clocks = <&sys_clk 14>, <&sys_clk 16>; | ||
reset-names = "link", "phy"; | ||
resets = <&sys_rst 14>, <&sys_rst 16>; | ||
vbus-supply = <&usb_vbus0>; | ||
}; | ||
... | ||
}; |
Oops, something went wrong.