From mboxrd@z Thu Jan 1 00:00:00 1970 From: Manu Gautam Subject: [PATCH v4 1/3] dt-bindings: usb: Update documentation for Qualcomm DWC3 driver Date: Wed, 9 May 2018 23:09:19 +0530 Message-ID: <1525887562-2687-2-git-send-email-mgautam@codeaurora.org> References: <1525887562-2687-1-git-send-email-mgautam@codeaurora.org> Return-path: In-Reply-To: <1525887562-2687-1-git-send-email-mgautam@codeaurora.org> Sender: linux-kernel-owner@vger.kernel.org To: balbi@kernel.org, robh@kernel.org, andy.gross@linaro.org Cc: linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, robh+dt@kernel.org, linux-arm-msm@vger.kernel.org, Manu Gautam , Greg Kroah-Hartman , Mark Rutland List-Id: linux-arm-msm@vger.kernel.org Existing documentation has lot of incorrect information as it was originally added for a driver that no longer exists. Signed-off-by: Manu Gautam Reviewed-by: Rob Herring --- .../devicetree/bindings/usb/qcom,dwc3.txt | 85 ++++++++++++++++------ 1 file changed, 63 insertions(+), 22 deletions(-) diff --git a/Documentation/devicetree/bindings/usb/qcom,dwc3.txt b/Documentation/devicetree/bindings/usb/qcom,dwc3.txt index bc8a2fa..95afdcf 100644 --- a/Documentation/devicetree/bindings/usb/qcom,dwc3.txt +++ b/Documentation/devicetree/bindings/usb/qcom,dwc3.txt @@ -1,54 +1,95 @@ Qualcomm SuperSpeed DWC3 USB SoC controller Required properties: -- compatible: should contain "qcom,dwc3" +- compatible: Compatible list, contains + "qcom,dwc3" + "qcom,msm8996-dwc3" for msm8996 SOC. + "qcom,sdm845-dwc3" for sdm845 SOC. +- reg: Offset and length of register set for QSCRATCH wrapper +- power-domains: specifies a phandle to PM domain provider node - clocks: A list of phandle + clock-specifier pairs for the clocks listed in clock-names -- clock-names: Should contain the following: +- clock-names: Should contain the following: "core" Master/Core clock, have to be >= 125 MHz for SS operation and >= 60MHz for HS operation + "mock_utmi" Mock utmi clock needed for ITP/SOF generation in + host mode. Its frequency should be 19.2MHz. + "sleep" Sleep clock, used for wakeup when USB3 core goes + into low power mode (U3). Optional clocks: - "iface" System bus AXI clock. Not present on all platforms - "sleep" Sleep clock, used when USB3 core goes into low - power mode (U3). + "iface" System bus AXI clock. + Not present on "qcom,msm8996-dwc3" compatible. + "cfg_noc" System Config NOC clock. + Not present on "qcom,msm8996-dwc3" compatible. +- assigned-clocks: Should be: + MOCK_UTMI_CLK + MASTER_CLK +- assigned-clock-rates: Should be: + 19.2Mhz (192000000) for MOCK_UTMI_CLK + >=125Mhz (125000000) for MASTER_CLK in SS mode + >=60Mhz (60000000) for MASTER_CLK in HS mode + +Optional properties: +- resets: Phandle to reset control that resets core and wrapper. +- interrupts: specifies interrupts from controller wrapper used + to wakeup from low power/susepnd state. Must contain + one or more entry for interrupt-names property +- interrupt-names: Must include the following entries: + - "hs_phy_irq": The interrupt that is asserted when a + wakeup event is received on USB2 bus + - "ss_phy_irq": The interrupt that is asserted when a + wakeup event is received on USB3 bus + - "dm_hs_phy_irq" and "dp_hs_phy_irq": Separate + interrupts for any wakeup event on DM and DP lines +- qcom,select-utmi-as-pipe-clk: if present, disable USB3 pipe_clk requirement. + Used when dwc3 operates without SSPHY and only + HS/FS/LS modes are supported. Required child node: A child node must exist to represent the core DWC3 IP block. The name of the node is not important. The content of the node is defined in dwc3.txt. Phy documentation is provided in the following places: -Documentation/devicetree/bindings/phy/qcom-dwc3-usb-phy.txt +Documentation/devicetree/bindings/phy/qcom-qmp-phy.txt - USB3 QMP PHY +Documentation/devicetree/bindings/phy/qcom-qusb2-phy.txt - USB2 QUSB2 PHY Example device nodes: hs_phy: phy@100f8800 { - compatible = "qcom,dwc3-hs-usb-phy"; - reg = <0x100f8800 0x30>; - clocks = <&gcc USB30_0_UTMI_CLK>; - clock-names = "ref"; - #phy-cells = <0>; - + compatible = "qcom,qusb2-v2-phy"; + ... }; ss_phy: phy@100f8830 { - compatible = "qcom,dwc3-ss-usb-phy"; - reg = <0x100f8830 0x30>; - clocks = <&gcc USB30_0_MASTER_CLK>; - clock-names = "ref"; - #phy-cells = <0>; - + compatible = "qcom,qmp-v3-usb3-phy"; + ... }; - usb3_0: usb30@0 { + usb3_0: usb30@a6f8800 { compatible = "qcom,dwc3"; + reg = <0xa6f8800 0x400>; #address-cells = <1>; #size-cells = <1>; - clocks = <&gcc USB30_0_MASTER_CLK>; - clock-names = "core"; - ranges; + interrupts = <0 131 0>, <0 486 0>, <0 488 0>, <0 489 0>; + interrupt-names = "hs_phy_irq", "ss_phy_irq", + "dm_hs_phy_irq", "dp_hs_phy_irq"; + + clocks = <&gcc GCC_USB30_PRIM_MASTER_CLK>, + <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>, + <&gcc GCC_USB30_PRIM_SLEEP_CLK>; + clock-names = "core", "mock_utmi", "sleep"; + + assigned-clocks = <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>, + <&gcc GCC_USB30_PRIM_MASTER_CLK>; + assigned-clock-rates = <19200000>, <133000000>; + + resets = <&gcc GCC_USB30_PRIM_BCR>; + reset-names = "core_reset"; + power-domains = <&gcc USB30_PRIM_GDSC>; + qcom,select-utmi-as-pipe-clk; dwc3@10000000 { compatible = "snps,dwc3"; -- The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: [v4,1/3] dt-bindings: usb: Update documentation for Qualcomm DWC3 driver From: Manu Gautam Message-Id: <1525887562-2687-2-git-send-email-mgautam@codeaurora.org> Date: Wed, 9 May 2018 23:09:19 +0530 To: balbi@kernel.org, robh@kernel.org, andy.gross@linaro.org Cc: linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, robh+dt@kernel.org, linux-arm-msm@vger.kernel.org, Manu Gautam , Greg Kroah-Hartman , Mark Rutland List-ID: RXhpc3RpbmcgZG9jdW1lbnRhdGlvbiBoYXMgbG90IG9mIGluY29ycmVjdCBpbmZvcm1hdGlvbiBh cyBpdAp3YXMgb3JpZ2luYWxseSBhZGRlZCBmb3IgYSBkcml2ZXIgdGhhdCBubyBsb25nZXIgZXhp c3RzLgoKU2lnbmVkLW9mZi1ieTogTWFudSBHYXV0YW0gPG1nYXV0YW1AY29kZWF1cm9yYS5vcmc+ ClJldmlld2VkLWJ5OiBSb2IgSGVycmluZyA8cm9iaEBrZXJuZWwub3JnPgotLS0KIC4uLi9kZXZp Y2V0cmVlL2JpbmRpbmdzL3VzYi9xY29tLGR3YzMudHh0ICAgICAgICAgIHwgODUgKysrKysrKysr KysrKysrKy0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDYzIGluc2VydGlvbnMoKyksIDIyIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL0RvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy91 c2IvcWNvbSxkd2MzLnR4dCBiL0RvY3VtZW50YXRpb24vZGV2aWNldHJlZS9iaW5kaW5ncy91c2Iv cWNvbSxkd2MzLnR4dAppbmRleCBiYzhhMmZhLi45NWFmZGNmIDEwMDY0NAotLS0gYS9Eb2N1bWVu dGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvdXNiL3Fjb20sZHdjMy50eHQKKysrIGIvRG9jdW1l bnRhdGlvbi9kZXZpY2V0cmVlL2JpbmRpbmdzL3VzYi9xY29tLGR3YzMudHh0CkBAIC0xLDU0ICsx LDk1IEBACiBRdWFsY29tbSBTdXBlclNwZWVkIERXQzMgVVNCIFNvQyBjb250cm9sbGVyCiAKIFJl cXVpcmVkIHByb3BlcnRpZXM6Ci0tIGNvbXBhdGlibGU6CXNob3VsZCBjb250YWluICJxY29tLGR3 YzMiCistIGNvbXBhdGlibGU6CQlDb21wYXRpYmxlIGxpc3QsIGNvbnRhaW5zCisJCQkicWNvbSxk d2MzIgorCQkJInFjb20sbXNtODk5Ni1kd2MzIiBmb3IgbXNtODk5NiBTT0MuCisJCQkicWNvbSxz ZG04NDUtZHdjMyIgZm9yIHNkbTg0NSBTT0MuCistIHJlZzoJCQlPZmZzZXQgYW5kIGxlbmd0aCBv ZiByZWdpc3RlciBzZXQgZm9yIFFTQ1JBVENIIHdyYXBwZXIKKy0gcG93ZXItZG9tYWluczoJc3Bl Y2lmaWVzIGEgcGhhbmRsZSB0byBQTSBkb21haW4gcHJvdmlkZXIgbm9kZQogLSBjbG9ja3M6CQlB IGxpc3Qgb2YgcGhhbmRsZSArIGNsb2NrLXNwZWNpZmllciBwYWlycyBmb3IgdGhlCiAJCQkJY2xv Y2tzIGxpc3RlZCBpbiBjbG9jay1uYW1lcwotLSBjbG9jay1uYW1lczoJU2hvdWxkIGNvbnRhaW4g dGhlIGZvbGxvd2luZzoKKy0gY2xvY2stbmFtZXM6CQlTaG91bGQgY29udGFpbiB0aGUgZm9sbG93 aW5nOgogICAiY29yZSIJCU1hc3Rlci9Db3JlIGNsb2NrLCBoYXZlIHRvIGJlID49IDEyNSBNSHog Zm9yIFNTCiAJCQkJb3BlcmF0aW9uIGFuZCA+PSA2ME1IeiBmb3IgSFMgb3BlcmF0aW9uCisgICJt b2NrX3V0bWkiCQlNb2NrIHV0bWkgY2xvY2sgbmVlZGVkIGZvciBJVFAvU09GIGdlbmVyYXRpb24g aW4KKwkJCQlob3N0IG1vZGUuIEl0cyBmcmVxdWVuY3kgc2hvdWxkIGJlIDE5LjJNSHouCisgICJz bGVlcCIJCVNsZWVwIGNsb2NrLCB1c2VkIGZvciB3YWtldXAgd2hlbiBVU0IzIGNvcmUgZ29lcwor CQkJCWludG8gbG93IHBvd2VyIG1vZGUgKFUzKS4KIAogT3B0aW9uYWwgY2xvY2tzOgotICAiaWZh Y2UiCQlTeXN0ZW0gYnVzIEFYSSBjbG9jay4gIE5vdCBwcmVzZW50IG9uIGFsbCBwbGF0Zm9ybXMK LSAgInNsZWVwIgkJU2xlZXAgY2xvY2ssIHVzZWQgd2hlbiBVU0IzIGNvcmUgZ29lcyBpbnRvIGxv dwotCQkJCXBvd2VyIG1vZGUgKFUzKS4KKyAgImlmYWNlIgkJU3lzdGVtIGJ1cyBBWEkgY2xvY2su CisJCQlOb3QgcHJlc2VudCBvbiAicWNvbSxtc204OTk2LWR3YzMiIGNvbXBhdGlibGUuCisgICJj Zmdfbm9jIgkJU3lzdGVtIENvbmZpZyBOT0MgY2xvY2suCisJCQlOb3QgcHJlc2VudCBvbiAicWNv bSxtc204OTk2LWR3YzMiIGNvbXBhdGlibGUuCistIGFzc2lnbmVkLWNsb2NrczoJU2hvdWxkIGJl OgorCQkJCU1PQ0tfVVRNSV9DTEsKKwkJCQlNQVNURVJfQ0xLCistIGFzc2lnbmVkLWNsb2NrLXJh dGVzOiBTaG91bGQgYmU6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE5LjJNaHog KDE5MjAwMDAwMCkgZm9yIE1PQ0tfVVRNSV9DTEsKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgPj0xMjVNaHogKDEyNTAwMDAwMCkgZm9yIE1BU1RFUl9DTEsgaW4gU1MgbW9kZQorICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PTYwTWh6ICg2MDAwMDAwMCkgZm9yIE1BU1RF Ul9DTEsgaW4gSFMgbW9kZQorCitPcHRpb25hbCBwcm9wZXJ0aWVzOgorLSByZXNldHM6CQlQaGFu ZGxlIHRvIHJlc2V0IGNvbnRyb2wgdGhhdCByZXNldHMgY29yZSBhbmQgd3JhcHBlci4KKy0gaW50 ZXJydXB0czoJCXNwZWNpZmllcyBpbnRlcnJ1cHRzIGZyb20gY29udHJvbGxlciB3cmFwcGVyIHVz ZWQKKwkJCXRvIHdha2V1cCBmcm9tIGxvdyBwb3dlci9zdXNlcG5kIHN0YXRlLglNdXN0IGNvbnRh aW4KKwkJCW9uZSBvciBtb3JlIGVudHJ5IGZvciBpbnRlcnJ1cHQtbmFtZXMgcHJvcGVydHkKKy0g aW50ZXJydXB0LW5hbWVzOglNdXN0IGluY2x1ZGUgdGhlIGZvbGxvd2luZyBlbnRyaWVzOgorCQkJ LSAiaHNfcGh5X2lycSI6IFRoZSBpbnRlcnJ1cHQgdGhhdCBpcyBhc3NlcnRlZCB3aGVuIGEKKwkJ CSAgIHdha2V1cCBldmVudCBpcyByZWNlaXZlZCBvbiBVU0IyIGJ1cworCQkJLSAic3NfcGh5X2ly cSI6IFRoZSBpbnRlcnJ1cHQgdGhhdCBpcyBhc3NlcnRlZCB3aGVuIGEKKwkJCSAgIHdha2V1cCBl dmVudCBpcyByZWNlaXZlZCBvbiBVU0IzIGJ1cworCQkJLSAiZG1faHNfcGh5X2lycSIgYW5kICJk cF9oc19waHlfaXJxIjogU2VwYXJhdGUKKwkJCSAgIGludGVycnVwdHMgZm9yIGFueSB3YWtldXAg ZXZlbnQgb24gRE0gYW5kIERQIGxpbmVzCistIHFjb20sc2VsZWN0LXV0bWktYXMtcGlwZS1jbGs6 IGlmIHByZXNlbnQsIGRpc2FibGUgVVNCMyBwaXBlX2NsayByZXF1aXJlbWVudC4KKwkJCQlVc2Vk IHdoZW4gZHdjMyBvcGVyYXRlcyB3aXRob3V0IFNTUEhZIGFuZCBvbmx5CisJCQkJSFMvRlMvTFMg bW9kZXMgYXJlIHN1cHBvcnRlZC4KIAogUmVxdWlyZWQgY2hpbGQgbm9kZToKIEEgY2hpbGQgbm9k ZSBtdXN0IGV4aXN0IHRvIHJlcHJlc2VudCB0aGUgY29yZSBEV0MzIElQIGJsb2NrLiBUaGUgbmFt ZSBvZgogdGhlIG5vZGUgaXMgbm90IGltcG9ydGFudC4gVGhlIGNvbnRlbnQgb2YgdGhlIG5vZGUg aXMgZGVmaW5lZCBpbiBkd2MzLnR4dC4KIAogUGh5IGRvY3VtZW50YXRpb24gaXMgcHJvdmlkZWQg aW4gdGhlIGZvbGxvd2luZyBwbGFjZXM6Ci1Eb2N1bWVudGF0aW9uL2RldmljZXRyZWUvYmluZGlu Z3MvcGh5L3Fjb20tZHdjMy11c2ItcGh5LnR4dAorRG9jdW1lbnRhdGlvbi9kZXZpY2V0cmVlL2Jp bmRpbmdzL3BoeS9xY29tLXFtcC1waHkudHh0ICAgLSBVU0IzIFFNUCBQSFkKK0RvY3VtZW50YXRp b24vZGV2aWNldHJlZS9iaW5kaW5ncy9waHkvcWNvbS1xdXNiMi1waHkudHh0IC0gVVNCMiBRVVNC MiBQSFkKIAogRXhhbXBsZSBkZXZpY2Ugbm9kZXM6CiAKIAkJaHNfcGh5OiBwaHlAMTAwZjg4MDAg ewotCQkJY29tcGF0aWJsZSA9ICJxY29tLGR3YzMtaHMtdXNiLXBoeSI7Ci0JCQlyZWcgPSA8MHgx MDBmODgwMCAweDMwPjsKLQkJCWNsb2NrcyA9IDwmZ2NjIFVTQjMwXzBfVVRNSV9DTEs+OwotCQkJ Y2xvY2stbmFtZXMgPSAicmVmIjsKLQkJCSNwaHktY2VsbHMgPSA8MD47Ci0KKwkJCWNvbXBhdGli bGUgPSAicWNvbSxxdXNiMi12Mi1waHkiOworCQkJLi4uCiAJCX07CiAKIAkJc3NfcGh5OiBwaHlA MTAwZjg4MzAgewotCQkJY29tcGF0aWJsZSA9ICJxY29tLGR3YzMtc3MtdXNiLXBoeSI7Ci0JCQly ZWcgPSA8MHgxMDBmODgzMCAweDMwPjsKLQkJCWNsb2NrcyA9IDwmZ2NjIFVTQjMwXzBfTUFTVEVS X0NMSz47Ci0JCQljbG9jay1uYW1lcyA9ICJyZWYiOwotCQkJI3BoeS1jZWxscyA9IDwwPjsKLQor CQkJY29tcGF0aWJsZSA9ICJxY29tLHFtcC12My11c2IzLXBoeSI7CisJCQkuLi4KIAkJfTsKIAot CQl1c2IzXzA6IHVzYjMwQDAgeworCQl1c2IzXzA6IHVzYjMwQGE2Zjg4MDAgewogCQkJY29tcGF0 aWJsZSA9ICJxY29tLGR3YzMiOworCQkJcmVnID0gPDB4YTZmODgwMCAweDQwMD47CiAJCQkjYWRk cmVzcy1jZWxscyA9IDwxPjsKIAkJCSNzaXplLWNlbGxzID0gPDE+OwotCQkJY2xvY2tzID0gPCZn Y2MgVVNCMzBfMF9NQVNURVJfQ0xLPjsKLQkJCWNsb2NrLW5hbWVzID0gImNvcmUiOwotCiAJCQly YW5nZXM7CiAKKwkJCWludGVycnVwdHMgPSA8MCAxMzEgMD4sIDwwIDQ4NiAwPiwgPDAgNDg4IDA+ LCA8MCA0ODkgMD47CisJCQlpbnRlcnJ1cHQtbmFtZXMgPSAiaHNfcGh5X2lycSIsICJzc19waHlf aXJxIiwKKwkJCQkgICJkbV9oc19waHlfaXJxIiwgImRwX2hzX3BoeV9pcnEiOworCisJCQljbG9j a3MgPSA8JmdjYyBHQ0NfVVNCMzBfUFJJTV9NQVNURVJfQ0xLPiwKKwkJCQk8JmdjYyBHQ0NfVVNC MzBfUFJJTV9NT0NLX1VUTUlfQ0xLPiwKKwkJCQk8JmdjYyBHQ0NfVVNCMzBfUFJJTV9TTEVFUF9D TEs+OworCQkJY2xvY2stbmFtZXMgPSAiY29yZSIsICJtb2NrX3V0bWkiLCAic2xlZXAiOworCisJ CQlhc3NpZ25lZC1jbG9ja3MgPSA8JmdjYyBHQ0NfVVNCMzBfUFJJTV9NT0NLX1VUTUlfQ0xLPiwK KwkJCQkJICA8JmdjYyBHQ0NfVVNCMzBfUFJJTV9NQVNURVJfQ0xLPjsKKwkJCWFzc2lnbmVkLWNs b2NrLXJhdGVzID0gPDE5MjAwMDAwPiwgPDEzMzAwMDAwMD47CisKKwkJCXJlc2V0cyA9IDwmZ2Nj IEdDQ19VU0IzMF9QUklNX0JDUj47CisJCQlyZXNldC1uYW1lcyA9ICJjb3JlX3Jlc2V0IjsKKwkJ CXBvd2VyLWRvbWFpbnMgPSA8JmdjYyBVU0IzMF9QUklNX0dEU0M+OworCQkJcWNvbSxzZWxlY3Qt dXRtaS1hcy1waXBlLWNsazsKIAogCQkJZHdjM0AxMDAwMDAwMCB7CiAJCQkJY29tcGF0aWJsZSA9 ICJzbnBzLGR3YzMiOwo=