1e8e58e29SJohan Hovold# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2e8e58e29SJohan Hovold%YAML 1.2 3e8e58e29SJohan Hovold--- 4e8e58e29SJohan Hovold$id: http://devicetree.org/schemas/phy/qcom,sc8280xp-qmp-usb3-uni-phy.yaml# 5e8e58e29SJohan Hovold$schema: http://devicetree.org/meta-schemas/core.yaml# 6e8e58e29SJohan Hovold 7e8e58e29SJohan Hovoldtitle: Qualcomm QMP PHY controller (USB, SC8280XP) 8e8e58e29SJohan Hovold 9e8e58e29SJohan Hovoldmaintainers: 10e8e58e29SJohan Hovold - Vinod Koul <vkoul@kernel.org> 11e8e58e29SJohan Hovold 12e8e58e29SJohan Hovolddescription: 13e8e58e29SJohan Hovold The QMP PHY controller supports physical layer functionality for a number of 14e8e58e29SJohan Hovold controllers on Qualcomm chipsets, such as, PCIe, UFS, and USB. 15e8e58e29SJohan Hovold 16e8e58e29SJohan Hovoldproperties: 17e8e58e29SJohan Hovold compatible: 18e8e58e29SJohan Hovold enum: 19b225e912SVaradarajan Narayanan - qcom,ipq9574-qmp-usb3-phy 20*2daece5eSBhupesh Sharma - qcom,qcm2290-qmp-usb3-phy 21bfd73c85SShazad Hussain - qcom,sa8775p-qmp-usb3-uni-phy 22e8e58e29SJohan Hovold - qcom,sc8280xp-qmp-usb3-uni-phy 23*2daece5eSBhupesh Sharma - qcom,sm6115-qmp-usb3-phy 24e8e58e29SJohan Hovold 25e8e58e29SJohan Hovold reg: 26e8e58e29SJohan Hovold maxItems: 1 27e8e58e29SJohan Hovold 28e8e58e29SJohan Hovold clocks: 291446d03eSJohan Hovold maxItems: 4 30e8e58e29SJohan Hovold 31e8e58e29SJohan Hovold clock-names: 32b225e912SVaradarajan Narayanan maxItems: 4 33e8e58e29SJohan Hovold 34e8e58e29SJohan Hovold power-domains: 35e8e58e29SJohan Hovold maxItems: 1 36e8e58e29SJohan Hovold 37e8e58e29SJohan Hovold resets: 38e8e58e29SJohan Hovold maxItems: 2 39e8e58e29SJohan Hovold 40e8e58e29SJohan Hovold reset-names: 41e8e58e29SJohan Hovold items: 42e8e58e29SJohan Hovold - const: phy 43e8e58e29SJohan Hovold - const: phy_phy 44e8e58e29SJohan Hovold 45e8e58e29SJohan Hovold vdda-phy-supply: true 46e8e58e29SJohan Hovold 47e8e58e29SJohan Hovold vdda-pll-supply: true 48e8e58e29SJohan Hovold 49e8e58e29SJohan Hovold "#clock-cells": 50e8e58e29SJohan Hovold const: 0 51e8e58e29SJohan Hovold 52e8e58e29SJohan Hovold clock-output-names: 53e8e58e29SJohan Hovold maxItems: 1 54e8e58e29SJohan Hovold 55e8e58e29SJohan Hovold "#phy-cells": 56e8e58e29SJohan Hovold const: 0 57e8e58e29SJohan Hovold 58e8e58e29SJohan Hovoldrequired: 59e8e58e29SJohan Hovold - compatible 60e8e58e29SJohan Hovold - reg 61e8e58e29SJohan Hovold - clocks 62e8e58e29SJohan Hovold - clock-names 63e8e58e29SJohan Hovold - resets 64e8e58e29SJohan Hovold - reset-names 65e8e58e29SJohan Hovold - vdda-phy-supply 66e8e58e29SJohan Hovold - vdda-pll-supply 67e8e58e29SJohan Hovold - "#clock-cells" 68e8e58e29SJohan Hovold - clock-output-names 69e8e58e29SJohan Hovold - "#phy-cells" 70e8e58e29SJohan Hovold 71b225e912SVaradarajan NarayananallOf: 72b225e912SVaradarajan Narayanan - if: 73b225e912SVaradarajan Narayanan properties: 74b225e912SVaradarajan Narayanan compatible: 75b225e912SVaradarajan Narayanan contains: 76b225e912SVaradarajan Narayanan enum: 77b225e912SVaradarajan Narayanan - qcom,ipq9574-qmp-usb3-phy 78b225e912SVaradarajan Narayanan then: 79b225e912SVaradarajan Narayanan properties: 80b225e912SVaradarajan Narayanan clock-names: 81b225e912SVaradarajan Narayanan items: 82b225e912SVaradarajan Narayanan - const: aux 83b225e912SVaradarajan Narayanan - const: ref 84b225e912SVaradarajan Narayanan - const: cfg_ahb 85b225e912SVaradarajan Narayanan - const: pipe 86b225e912SVaradarajan Narayanan 87b225e912SVaradarajan Narayanan - if: 88b225e912SVaradarajan Narayanan properties: 89b225e912SVaradarajan Narayanan compatible: 90b225e912SVaradarajan Narayanan contains: 91b225e912SVaradarajan Narayanan enum: 92b225e912SVaradarajan Narayanan - qcom,sa8775p-qmp-usb3-uni-phy 93b225e912SVaradarajan Narayanan - qcom,sc8280xp-qmp-usb3-uni-phy 94b225e912SVaradarajan Narayanan then: 95b225e912SVaradarajan Narayanan properties: 96b225e912SVaradarajan Narayanan clocks: 97b225e912SVaradarajan Narayanan maxItems: 4 98b225e912SVaradarajan Narayanan clock-names: 99b225e912SVaradarajan Narayanan items: 100b225e912SVaradarajan Narayanan - const: aux 101b225e912SVaradarajan Narayanan - const: ref 102b225e912SVaradarajan Narayanan - const: com_aux 103b225e912SVaradarajan Narayanan - const: pipe 104b225e912SVaradarajan Narayanan required: 105b225e912SVaradarajan Narayanan - power-domains 106b225e912SVaradarajan Narayanan 107e8e58e29SJohan HovoldadditionalProperties: false 108e8e58e29SJohan Hovold 109*2daece5eSBhupesh SharmaallOf: 110*2daece5eSBhupesh Sharma - if: 111*2daece5eSBhupesh Sharma properties: 112*2daece5eSBhupesh Sharma compatible: 113*2daece5eSBhupesh Sharma contains: 114*2daece5eSBhupesh Sharma enum: 115*2daece5eSBhupesh Sharma - qcom,qcm2290-qmp-usb3-phy 116*2daece5eSBhupesh Sharma - qcom,sm6115-qmp-usb3-phy 117*2daece5eSBhupesh Sharma then: 118*2daece5eSBhupesh Sharma properties: 119*2daece5eSBhupesh Sharma clocks: 120*2daece5eSBhupesh Sharma maxItems: 4 121*2daece5eSBhupesh Sharma clock-names: 122*2daece5eSBhupesh Sharma items: 123*2daece5eSBhupesh Sharma - const: cfg_ahb 124*2daece5eSBhupesh Sharma - const: ref 125*2daece5eSBhupesh Sharma - const: com_aux 126*2daece5eSBhupesh Sharma - const: pipe 127*2daece5eSBhupesh Sharma 128*2daece5eSBhupesh Sharma - if: 129*2daece5eSBhupesh Sharma properties: 130*2daece5eSBhupesh Sharma compatible: 131*2daece5eSBhupesh Sharma contains: 132*2daece5eSBhupesh Sharma enum: 133*2daece5eSBhupesh Sharma - qcom,sc8280xp-qmp-usb3-uni-phy 134*2daece5eSBhupesh Sharma then: 135*2daece5eSBhupesh Sharma properties: 136*2daece5eSBhupesh Sharma clocks: 137*2daece5eSBhupesh Sharma maxItems: 4 138*2daece5eSBhupesh Sharma clock-names: 139*2daece5eSBhupesh Sharma items: 140*2daece5eSBhupesh Sharma - const: aux 141*2daece5eSBhupesh Sharma - const: ref 142*2daece5eSBhupesh Sharma - const: com_aux 143*2daece5eSBhupesh Sharma - const: pipe 144*2daece5eSBhupesh Sharma 145e8e58e29SJohan Hovoldexamples: 146e8e58e29SJohan Hovold - | 147e8e58e29SJohan Hovold #include <dt-bindings/clock/qcom,gcc-sc8280xp.h> 148e8e58e29SJohan Hovold #include <dt-bindings/clock/qcom,rpmh.h> 149e8e58e29SJohan Hovold 150e8e58e29SJohan Hovold phy@88ef000 { 151e8e58e29SJohan Hovold compatible = "qcom,sc8280xp-qmp-usb3-uni-phy"; 152e8e58e29SJohan Hovold reg = <0x088ef000 0x2000>; 153e8e58e29SJohan Hovold 154e8e58e29SJohan Hovold clocks = <&gcc GCC_USB3_MP_PHY_AUX_CLK>, 155e8e58e29SJohan Hovold <&gcc GCC_USB3_MP0_CLKREF_CLK>, 156e8e58e29SJohan Hovold <&gcc GCC_USB3_MP_PHY_COM_AUX_CLK>, 157e8e58e29SJohan Hovold <&gcc GCC_USB3_MP_PHY_PIPE_0_CLK>; 1581446d03eSJohan Hovold clock-names = "aux", "ref", "com_aux", "pipe"; 159e8e58e29SJohan Hovold 160e8e58e29SJohan Hovold power-domains = <&gcc USB30_MP_GDSC>; 161e8e58e29SJohan Hovold 162e8e58e29SJohan Hovold resets = <&gcc GCC_USB3_UNIPHY_MP0_BCR>, 163e8e58e29SJohan Hovold <&gcc GCC_USB3UNIPHY_PHY_MP0_BCR>; 164e8e58e29SJohan Hovold reset-names = "phy", "phy_phy"; 165e8e58e29SJohan Hovold 166e8e58e29SJohan Hovold vdda-phy-supply = <&vreg_l3a>; 167e8e58e29SJohan Hovold vdda-pll-supply = <&vreg_l5a>; 168e8e58e29SJohan Hovold 169e8e58e29SJohan Hovold #clock-cells = <0>; 170e8e58e29SJohan Hovold clock-output-names = "usb2_phy0_pipe_clk"; 171e8e58e29SJohan Hovold 172e8e58e29SJohan Hovold #phy-cells = <0>; 173e8e58e29SJohan Hovold }; 174