Commit 7d980915 authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman
Browse files

Merge tag 'phy-for-4.20' of...

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: default avatarKishon 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
  ...
parents 29f79155 566b3884
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -8,6 +8,7 @@ Required properties:
     "brcm,iproc-nsp-sata-phy"
     "brcm,phy-sata3"
     "brcm,iproc-sr-sata-phy"
     "brcm,bcm63138-sata-phy"
- address-cells: should be 1
- size-cells: should be 0
- reg: register ranges for the PHY PCB interface
+30 −0
Original line number Diff line number Diff line
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 −0
Original line number Diff line number Diff line
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";
		...
	};
+14 −9
Original line number Diff line number Diff line
@@ -10,16 +10,20 @@ Required properties:
	       "qcom,msm8996-qmp-pcie-phy" for 14nm PCIe phy on msm8996,
	       "qcom,msm8996-qmp-usb3-phy" for 14nm USB3 phy on msm8996,
	       "qcom,sdm845-qmp-usb3-phy" for USB3 QMP V3 phy on sdm845,
	       "qcom,sdm845-qmp-usb3-uni-phy" for USB3 QMP V3 UNI phy on sdm845.
	       "qcom,sdm845-qmp-usb3-uni-phy" for USB3 QMP V3 UNI phy on sdm845,
	       "qcom,sdm845-qmp-ufs-phy" for UFS QMP phy on sdm845.

- reg:
  - index 0: address and length of register set for PHY's common
             serdes block.
  - index 1: address and length of the DP_COM control block (for
             "qcom,sdm845-qmp-usb3-phy" only).

- reg-names:
  - For "qcom,sdm845-qmp-usb3-phy":
     - index 0: address and length of register set for PHY's common serdes
       block.
     - named register "dp_com" (using reg-names): address and length of the
       DP_COM control block.
    - Should be: "reg-base", "dp_com"
  - For all others:
     - offset and length of register set for PHY's common serdes block.
    - The reg-names property shouldn't be defined.

 - #clock-cells: must be 1
    - Phy pll outputs a bunch of clocks for Tx, Rx and Pipe
@@ -35,6 +39,7 @@ Required properties:
		"aux" for phy aux clock,
		"ref" for 19.2 MHz ref clk,
		"com_aux" for phy common block aux clock,
		"ref_aux" for phy reference aux clock,
		For "qcom,msm8996-qmp-pcie-phy" must contain:
			"aux", "cfg_ahb", "ref".
		For "qcom,msm8996-qmp-usb3-phy" must contain:
+8 −3
Original line number Diff line number Diff line
* Renesas R-Car generation 3 USB 2.0 PHY

This file provides information on what the device node for the R-Car generation
3 USB 2.0 PHY contains.
3 and RZ/G2 USB 2.0 PHY contain.

Required properties:
- compatible: "renesas,usb2-phy-r8a7795" if the device is a part of an R8A7795
- compatible: "renesas,usb2-phy-r8a774a1" if the device is a part of an R8A774A1
	      SoC.
	      "renesas,usb2-phy-r8a7795" if the device is a part of an R8A7795
	      SoC.
	      "renesas,usb2-phy-r8a7796" if the device is a part of an R8A7796
	      SoC.
@@ -14,7 +16,8 @@ Required properties:
	      R8A77990 SoC.
	      "renesas,usb2-phy-r8a77995" if the device is a part of an
	      R8A77995 SoC.
	      "renesas,rcar-gen3-usb2-phy" for a generic R-Car Gen3 compatible device.
	      "renesas,rcar-gen3-usb2-phy" for a generic R-Car Gen3 or RZ/G2
	      compatible device.

	      When compatible with the generic version, nodes must list the
	      SoC-specific version corresponding to the platform first
@@ -31,6 +34,8 @@ channel as USB OTG:
- interrupts: interrupt specifier for the PHY.
- vbus-supply: Phandle to a regulator that provides power to the VBUS. This
	       regulator will be managed during the PHY power on/off sequence.
- renesas,no-otg-pins: boolean, specify when a board does not provide proper
		       otg pins.

Example (R-Car H3):

Loading