dt-bindings: phy: qcom,qmp-usb3-dp: Add DP phy information
This binding only describes the USB phy inside the USB3 + DP "combo" phy. Add information for the DP phy and describe the sub-nodes that represent the DP and USB3 phys that exist inside the combo wrapper. Remove reg-names from required properties because it isn't required nor used by the kernel driver. Signed-off-by: Stephen Boyd <swboyd@chromium.org> Reviewed-by: Rob Herring <robh@kernel.org> Cc: Jeykumar Sankaran <jsanka@codeaurora.org> Cc: Chandan Uddaraju <chandanu@codeaurora.org> Cc: Vara Reddy <varar@codeaurora.org> Cc: Tanmay Shah <tanmay@codeaurora.org> Cc: Bjorn Andersson <bjorn.andersson@linaro.org> Cc: Manu Gautam <mgautam@codeaurora.org> Cc: Sandeep Maheswaram <sanm@codeaurora.org> Cc: Douglas Anderson <dianders@chromium.org> Cc: Sean Paul <seanpaul@chromium.org> Cc: Jonathan Marek <jonathan@marek.ca> Cc: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> Cc: <devicetree@vger.kernel.org> Cc: Rob Herring <robh+dt@kernel.org> Cc: Rob Clark <robdclark@chromium.org> Link: https://lore.kernel.org/r/20200916231202.3637932-2-swboyd@chromium.org Signed-off-by: Vinod Koul <vkoul@kernel.org>
This commit is contained in:
parent
b7132285c6
commit
724fabf5df
@ -13,17 +13,21 @@ maintainers:
|
|||||||
properties:
|
properties:
|
||||||
compatible:
|
compatible:
|
||||||
enum:
|
enum:
|
||||||
|
- qcom,sc7180-qmp-usb3-dp-phy
|
||||||
- qcom,sc7180-qmp-usb3-phy
|
- qcom,sc7180-qmp-usb3-phy
|
||||||
|
- qcom,sdm845-qmp-usb3-dp-phy
|
||||||
- qcom,sdm845-qmp-usb3-phy
|
- qcom,sdm845-qmp-usb3-phy
|
||||||
reg:
|
reg:
|
||||||
items:
|
items:
|
||||||
- description: Address and length of PHY's common serdes block.
|
- description: Address and length of PHY's USB serdes block.
|
||||||
- description: Address and length of the DP_COM control block.
|
- description: Address and length of the DP_COM control block.
|
||||||
|
- description: Address and length of PHY's DP serdes block.
|
||||||
|
|
||||||
reg-names:
|
reg-names:
|
||||||
items:
|
items:
|
||||||
- const: reg-base
|
- const: usb
|
||||||
- const: dp_com
|
- const: dp_com
|
||||||
|
- const: dp
|
||||||
|
|
||||||
"#clock-cells":
|
"#clock-cells":
|
||||||
enum: [ 1, 2 ]
|
enum: [ 1, 2 ]
|
||||||
@ -74,16 +78,74 @@ properties:
|
|||||||
|
|
||||||
#Required nodes:
|
#Required nodes:
|
||||||
patternProperties:
|
patternProperties:
|
||||||
"^phy@[0-9a-f]+$":
|
"^usb3-phy@[0-9a-f]+$":
|
||||||
type: object
|
type: object
|
||||||
description:
|
description:
|
||||||
Each device node of QMP phy is required to have as many child nodes as
|
The USB3 PHY.
|
||||||
the number of lanes the PHY has.
|
|
||||||
|
properties:
|
||||||
|
reg:
|
||||||
|
items:
|
||||||
|
- description: Address and length of TX.
|
||||||
|
- description: Address and length of RX.
|
||||||
|
- description: Address and length of PCS.
|
||||||
|
- description: Address and length of TX2.
|
||||||
|
- description: Address and length of RX2.
|
||||||
|
- description: Address and length of pcs_misc.
|
||||||
|
|
||||||
|
clocks:
|
||||||
|
items:
|
||||||
|
- description: pipe clock
|
||||||
|
|
||||||
|
clock-names:
|
||||||
|
items:
|
||||||
|
- const: pipe0
|
||||||
|
|
||||||
|
clock-output-names:
|
||||||
|
items:
|
||||||
|
- const: usb3_phy_pipe_clk_src
|
||||||
|
|
||||||
|
'#clock-cells':
|
||||||
|
const: 0
|
||||||
|
|
||||||
|
'#phy-cells':
|
||||||
|
const: 0
|
||||||
|
|
||||||
|
required:
|
||||||
|
- reg
|
||||||
|
- clocks
|
||||||
|
- clock-names
|
||||||
|
- '#clock-cells'
|
||||||
|
- '#phy-cells'
|
||||||
|
|
||||||
|
"^dp-phy@[0-9a-f]+$":
|
||||||
|
type: object
|
||||||
|
description:
|
||||||
|
The DP PHY.
|
||||||
|
|
||||||
|
properties:
|
||||||
|
reg:
|
||||||
|
items:
|
||||||
|
- description: Address and length of TX.
|
||||||
|
- description: Address and length of RX.
|
||||||
|
- description: Address and length of PCS.
|
||||||
|
- description: Address and length of TX2.
|
||||||
|
- description: Address and length of RX2.
|
||||||
|
|
||||||
|
'#clock-cells':
|
||||||
|
const: 1
|
||||||
|
|
||||||
|
'#phy-cells':
|
||||||
|
const: 0
|
||||||
|
|
||||||
|
required:
|
||||||
|
- reg
|
||||||
|
- '#clock-cells'
|
||||||
|
- '#phy-cells'
|
||||||
|
|
||||||
required:
|
required:
|
||||||
- compatible
|
- compatible
|
||||||
- reg
|
- reg
|
||||||
- reg-names
|
|
||||||
- "#clock-cells"
|
- "#clock-cells"
|
||||||
- "#address-cells"
|
- "#address-cells"
|
||||||
- "#size-cells"
|
- "#size-cells"
|
||||||
@ -101,14 +163,15 @@ examples:
|
|||||||
- |
|
- |
|
||||||
#include <dt-bindings/clock/qcom,gcc-sdm845.h>
|
#include <dt-bindings/clock/qcom,gcc-sdm845.h>
|
||||||
usb_1_qmpphy: phy-wrapper@88e9000 {
|
usb_1_qmpphy: phy-wrapper@88e9000 {
|
||||||
compatible = "qcom,sdm845-qmp-usb3-phy";
|
compatible = "qcom,sdm845-qmp-usb3-dp-phy";
|
||||||
reg = <0x088e9000 0x18c>,
|
reg = <0x088e9000 0x18c>,
|
||||||
<0x088e8000 0x10>;
|
<0x088e8000 0x10>,
|
||||||
reg-names = "reg-base", "dp_com";
|
<0x088ea000 0x40>;
|
||||||
|
reg-names = "usb", "dp_com", "dp";
|
||||||
#clock-cells = <1>;
|
#clock-cells = <1>;
|
||||||
#address-cells = <1>;
|
#address-cells = <1>;
|
||||||
#size-cells = <1>;
|
#size-cells = <1>;
|
||||||
ranges = <0x0 0x088e9000 0x1000>;
|
ranges = <0x0 0x088e9000 0x2000>;
|
||||||
|
|
||||||
clocks = <&gcc GCC_USB3_PRIM_PHY_AUX_CLK>,
|
clocks = <&gcc GCC_USB3_PRIM_PHY_AUX_CLK>,
|
||||||
<&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>,
|
<&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>,
|
||||||
@ -123,7 +186,7 @@ examples:
|
|||||||
vdda-phy-supply = <&vdda_usb2_ss_1p2>;
|
vdda-phy-supply = <&vdda_usb2_ss_1p2>;
|
||||||
vdda-pll-supply = <&vdda_usb2_ss_core>;
|
vdda-pll-supply = <&vdda_usb2_ss_core>;
|
||||||
|
|
||||||
phy@200 {
|
usb3-phy@200 {
|
||||||
reg = <0x200 0x128>,
|
reg = <0x200 0x128>,
|
||||||
<0x400 0x200>,
|
<0x400 0x200>,
|
||||||
<0xc00 0x218>,
|
<0xc00 0x218>,
|
||||||
@ -136,4 +199,14 @@ examples:
|
|||||||
clock-names = "pipe0";
|
clock-names = "pipe0";
|
||||||
clock-output-names = "usb3_phy_pipe_clk_src";
|
clock-output-names = "usb3_phy_pipe_clk_src";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
dp-phy@88ea200 {
|
||||||
|
reg = <0xa200 0x200>,
|
||||||
|
<0xa400 0x200>,
|
||||||
|
<0xaa00 0x200>,
|
||||||
|
<0xa600 0x200>,
|
||||||
|
<0xa800 0x200>;
|
||||||
|
#clock-cells = <1>;
|
||||||
|
#phy-cells = <0>;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user