18bab661aSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 28bab661aSEmmanuel Vadot%YAML 1.2 38bab661aSEmmanuel Vadot--- 48bab661aSEmmanuel Vadot$id: http://devicetree.org/schemas/phy/qcom,sc8280xp-qmp-ufs-phy.yaml# 58bab661aSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 68bab661aSEmmanuel Vadot 78bab661aSEmmanuel Vadottitle: Qualcomm QMP PHY controller (UFS, SC8280XP) 88bab661aSEmmanuel Vadot 98bab661aSEmmanuel Vadotmaintainers: 108bab661aSEmmanuel Vadot - Vinod Koul <vkoul@kernel.org> 118bab661aSEmmanuel Vadot 128bab661aSEmmanuel Vadotdescription: 138bab661aSEmmanuel Vadot The QMP PHY controller supports physical layer functionality for a number of 148bab661aSEmmanuel Vadot controllers on Qualcomm chipsets, such as, PCIe, UFS, and USB. 158bab661aSEmmanuel Vadot 168bab661aSEmmanuel Vadotproperties: 178bab661aSEmmanuel Vadot compatible: 188bab661aSEmmanuel Vadot enum: 19aa1a8ff2SEmmanuel Vadot - qcom,msm8996-qmp-ufs-phy 20aa1a8ff2SEmmanuel Vadot - qcom,msm8998-qmp-ufs-phy 21fac71e4eSEmmanuel Vadot - qcom,sa8775p-qmp-ufs-phy 2284943d6fSEmmanuel Vadot - qcom,sc7280-qmp-ufs-phy 23aa1a8ff2SEmmanuel Vadot - qcom,sc8180x-qmp-ufs-phy 248bab661aSEmmanuel Vadot - qcom,sc8280xp-qmp-ufs-phy 25aa1a8ff2SEmmanuel Vadot - qcom,sdm845-qmp-ufs-phy 26aa1a8ff2SEmmanuel Vadot - qcom,sm6115-qmp-ufs-phy 27cb7aa33aSEmmanuel Vadot - qcom,sm6125-qmp-ufs-phy 28aa1a8ff2SEmmanuel Vadot - qcom,sm6350-qmp-ufs-phy 29fac71e4eSEmmanuel Vadot - qcom,sm7150-qmp-ufs-phy 30aa1a8ff2SEmmanuel Vadot - qcom,sm8150-qmp-ufs-phy 31aa1a8ff2SEmmanuel Vadot - qcom,sm8250-qmp-ufs-phy 32aa1a8ff2SEmmanuel Vadot - qcom,sm8350-qmp-ufs-phy 33aa1a8ff2SEmmanuel Vadot - qcom,sm8450-qmp-ufs-phy 34cb7aa33aSEmmanuel Vadot - qcom,sm8550-qmp-ufs-phy 35*8d13bc63SEmmanuel Vadot - qcom,sm8650-qmp-ufs-phy 368bab661aSEmmanuel Vadot 378bab661aSEmmanuel Vadot reg: 388bab661aSEmmanuel Vadot maxItems: 1 398bab661aSEmmanuel Vadot 408bab661aSEmmanuel Vadot clocks: 41aa1a8ff2SEmmanuel Vadot minItems: 1 42fac71e4eSEmmanuel Vadot maxItems: 3 438bab661aSEmmanuel Vadot 448bab661aSEmmanuel Vadot clock-names: 45aa1a8ff2SEmmanuel Vadot minItems: 1 468bab661aSEmmanuel Vadot items: 478bab661aSEmmanuel Vadot - const: ref 488bab661aSEmmanuel Vadot - const: ref_aux 49fac71e4eSEmmanuel Vadot - const: qref 508bab661aSEmmanuel Vadot 518bab661aSEmmanuel Vadot power-domains: 528bab661aSEmmanuel Vadot maxItems: 1 538bab661aSEmmanuel Vadot 548bab661aSEmmanuel Vadot resets: 558bab661aSEmmanuel Vadot maxItems: 1 568bab661aSEmmanuel Vadot 578bab661aSEmmanuel Vadot reset-names: 588bab661aSEmmanuel Vadot items: 598bab661aSEmmanuel Vadot - const: ufsphy 608bab661aSEmmanuel Vadot 618bab661aSEmmanuel Vadot vdda-phy-supply: true 628bab661aSEmmanuel Vadot 638bab661aSEmmanuel Vadot vdda-pll-supply: true 648bab661aSEmmanuel Vadot 65cb7aa33aSEmmanuel Vadot "#clock-cells": 66cb7aa33aSEmmanuel Vadot const: 1 67cb7aa33aSEmmanuel Vadot 688bab661aSEmmanuel Vadot "#phy-cells": 698bab661aSEmmanuel Vadot const: 0 708bab661aSEmmanuel Vadot 718bab661aSEmmanuel Vadotrequired: 728bab661aSEmmanuel Vadot - compatible 738bab661aSEmmanuel Vadot - reg 748bab661aSEmmanuel Vadot - clocks 758bab661aSEmmanuel Vadot - clock-names 768bab661aSEmmanuel Vadot - power-domains 778bab661aSEmmanuel Vadot - resets 788bab661aSEmmanuel Vadot - reset-names 798bab661aSEmmanuel Vadot - vdda-phy-supply 808bab661aSEmmanuel Vadot - vdda-pll-supply 818bab661aSEmmanuel Vadot - "#phy-cells" 828bab661aSEmmanuel Vadot 83fac71e4eSEmmanuel VadotallOf: 84fac71e4eSEmmanuel Vadot - if: 85fac71e4eSEmmanuel Vadot properties: 86fac71e4eSEmmanuel Vadot compatible: 87fac71e4eSEmmanuel Vadot contains: 88fac71e4eSEmmanuel Vadot enum: 89fac71e4eSEmmanuel Vadot - qcom,sa8775p-qmp-ufs-phy 9084943d6fSEmmanuel Vadot - qcom,sc7280-qmp-ufs-phy 91aa1a8ff2SEmmanuel Vadot - qcom,sm8450-qmp-ufs-phy 92fac71e4eSEmmanuel Vadot then: 93fac71e4eSEmmanuel Vadot properties: 94fac71e4eSEmmanuel Vadot clocks: 95f126890aSEmmanuel Vadot minItems: 3 96fac71e4eSEmmanuel Vadot clock-names: 97f126890aSEmmanuel Vadot minItems: 3 98aa1a8ff2SEmmanuel Vadot 99aa1a8ff2SEmmanuel Vadot - if: 100aa1a8ff2SEmmanuel Vadot properties: 101aa1a8ff2SEmmanuel Vadot compatible: 102aa1a8ff2SEmmanuel Vadot contains: 103aa1a8ff2SEmmanuel Vadot enum: 104aa1a8ff2SEmmanuel Vadot - qcom,msm8998-qmp-ufs-phy 105aa1a8ff2SEmmanuel Vadot - qcom,sc8180x-qmp-ufs-phy 106aa1a8ff2SEmmanuel Vadot - qcom,sc8280xp-qmp-ufs-phy 107aa1a8ff2SEmmanuel Vadot - qcom,sdm845-qmp-ufs-phy 108aa1a8ff2SEmmanuel Vadot - qcom,sm6115-qmp-ufs-phy 109aa1a8ff2SEmmanuel Vadot - qcom,sm6125-qmp-ufs-phy 110aa1a8ff2SEmmanuel Vadot - qcom,sm6350-qmp-ufs-phy 111aa1a8ff2SEmmanuel Vadot - qcom,sm7150-qmp-ufs-phy 112aa1a8ff2SEmmanuel Vadot - qcom,sm8150-qmp-ufs-phy 113aa1a8ff2SEmmanuel Vadot - qcom,sm8250-qmp-ufs-phy 114aa1a8ff2SEmmanuel Vadot - qcom,sm8350-qmp-ufs-phy 115aa1a8ff2SEmmanuel Vadot - qcom,sm8550-qmp-ufs-phy 116*8d13bc63SEmmanuel Vadot - qcom,sm8650-qmp-ufs-phy 117aa1a8ff2SEmmanuel Vadot then: 118fac71e4eSEmmanuel Vadot properties: 119fac71e4eSEmmanuel Vadot clocks: 120fac71e4eSEmmanuel Vadot maxItems: 2 121fac71e4eSEmmanuel Vadot clock-names: 122fac71e4eSEmmanuel Vadot maxItems: 2 123fac71e4eSEmmanuel Vadot 124aa1a8ff2SEmmanuel Vadot - if: 125aa1a8ff2SEmmanuel Vadot properties: 126aa1a8ff2SEmmanuel Vadot compatible: 127aa1a8ff2SEmmanuel Vadot contains: 128aa1a8ff2SEmmanuel Vadot enum: 129aa1a8ff2SEmmanuel Vadot - qcom,msm8996-qmp-ufs-phy 130aa1a8ff2SEmmanuel Vadot then: 131aa1a8ff2SEmmanuel Vadot properties: 132aa1a8ff2SEmmanuel Vadot clocks: 133aa1a8ff2SEmmanuel Vadot maxItems: 1 134aa1a8ff2SEmmanuel Vadot clock-names: 135aa1a8ff2SEmmanuel Vadot maxItems: 1 136aa1a8ff2SEmmanuel Vadot 1378bab661aSEmmanuel VadotadditionalProperties: false 1388bab661aSEmmanuel Vadot 1398bab661aSEmmanuel Vadotexamples: 1408bab661aSEmmanuel Vadot - | 1418bab661aSEmmanuel Vadot #include <dt-bindings/clock/qcom,gcc-sc8280xp.h> 1428bab661aSEmmanuel Vadot 1438bab661aSEmmanuel Vadot ufs_mem_phy: phy@1d87000 { 1448bab661aSEmmanuel Vadot compatible = "qcom,sc8280xp-qmp-ufs-phy"; 1458bab661aSEmmanuel Vadot reg = <0x01d87000 0x1000>; 1468bab661aSEmmanuel Vadot 1478bab661aSEmmanuel Vadot clocks = <&gcc GCC_UFS_REF_CLKREF_CLK>, <&gcc GCC_UFS_PHY_PHY_AUX_CLK>; 1488bab661aSEmmanuel Vadot clock-names = "ref", "ref_aux"; 1498bab661aSEmmanuel Vadot 1508bab661aSEmmanuel Vadot power-domains = <&gcc UFS_PHY_GDSC>; 1518bab661aSEmmanuel Vadot 1528bab661aSEmmanuel Vadot resets = <&ufs_mem_hc 0>; 1538bab661aSEmmanuel Vadot reset-names = "ufsphy"; 1548bab661aSEmmanuel Vadot 1558bab661aSEmmanuel Vadot vdda-phy-supply = <&vreg_l6b>; 1568bab661aSEmmanuel Vadot vdda-pll-supply = <&vreg_l3b>; 1578bab661aSEmmanuel Vadot 1588bab661aSEmmanuel Vadot #phy-cells = <0>; 1598bab661aSEmmanuel Vadot }; 160