From: Krzysztof Kozlowski <krzk@kernel.org>
To: Faisal Hassan <faisal.hassan@oss.qualcomm.com>
Cc: Thinh.Nguyen@synopsys.com, gregkh@linuxfoundation.org,
mathias.nyman@intel.com, robh@kernel.org, krzk+dt@kernel.org,
conor+dt@kernel.org, p.zabel@pengutronix.de,
wesley.cheng@oss.qualcomm.com, sriram.dash@oss.qualcomm.com,
jack.pham@oss.qualcomm.com, krishna.kurapati@oss.qualcomm.com,
shazad.hussain@oss.qualcomm.com, linux-arm-msm@vger.kernel.org,
linux-usb@vger.kernel.org, devicetree@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH v3 3/7] dt-bindings: usb: Add qcom,sa8255p-dwc3 for firmware-managed resources
Date: Tue, 13 Oct 2026 09:20:04 +0200 [thread overview]
Message-ID: <20261013-light-significant-markhor-c30eea@quoll> (raw)
In-Reply-To: <20261010053246.2991984-4-faisal.hassan@oss.qualcomm.com>
On Sat, Oct 10, 2026 at 11:02:42AM +0530, Faisal Hassan wrote:
> On Qualcomm automotive SoC sa8255p, platform resources like clocks,
> interconnects, resets, regulators and GDSC are abstracted and managed
> collectively by firmware.
>
> Add a new binding file for firmware-managed USB controllers where
> access to these resources is exposed as two power domains:
> - Power domain: Controls power supply (GDSC) to the USB controller
> - Bus domain: Controls clocks and interconnects for data transfer
>
> The binding makes power-domains and power-domain-names properties mandatory
> for firmware-managed platforms, while excluding the clocks property since
> clocks are managed through the power domains.
>
> Co-developed-by: Sriram Dash <sriram.dash@oss.qualcomm.com>
> Signed-off-by: Sriram Dash <sriram.dash@oss.qualcomm.com>
> Signed-off-by: Faisal Hassan <faisal.hassan@oss.qualcomm.com>
> ---
> .../bindings/usb/qcom,sa8255p-dwc3.yaml | 119 ++++++++++++++++++
> 1 file changed, 119 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/usb/qcom,sa8255p-dwc3.yaml
>
> diff --git a/Documentation/devicetree/bindings/usb/qcom,sa8255p-dwc3.yaml b/Documentation/devicetree/bindings/usb/qcom,sa8255p-dwc3.yaml
> new file mode 100644
> index 000000000000..87f426fdbd70
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/usb/qcom,sa8255p-dwc3.yaml
> @@ -0,0 +1,119 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/usb/qcom,sa8255p-dwc3.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Qualcomm SA8255P USB3 Controller with Firmware-Managed Resources
> +
> +maintainers:
> + - Wesley Cheng <wesley.cheng@oss.qualcomm.com>
> + - Faisal Hassan <faisal.hassan@oss.qualcomm.com>
> +
> +description:
> + USB controller on Qualcomm SA8255P automotive SoC where platform resources
> + such as clocks, interconnects, resets, regulators and the GDSC are
> + abstracted and managed collectively by firmware through SCMI (System
> + Control and Management Interface).
> +
> + Access to these firmware-managed resources is exposed as two power
> + domains, one gating the power supply (GDSC) to the controller, and one
> + gating the clocks and interconnects used for data transfer.
> +
> +properties:
> + compatible:
> + const: qcom,sa8255p-dwc3
> +
> + reg:
> + maxItems: 1
> +
> + interrupts:
> + minItems: 5
> + maxItems: 6
> +
> + interrupt-names:
> + minItems: 5
> + items:
> + - const: dwc_usb3
> + - const: pwr_event
> + - const: hs_phy_irq
> + - const: dp_hs_phy_irq
> + - const: dm_hs_phy_irq
> + - const: ss_phy_irq
That's still unexpectedly flexible.
> +
> + power-domains:
> + minItems: 2
Drop
> + maxItems: 2
> +
> + power-domain-names:
> + items:
> + - const: power
> + - const: bus
I don't see how did this improve. I asked to use existing bindings as
reference, so why aren't these power and perf? You wrote that bus
controls clocks and interconnect, so is this something different than
perf domain is doing for sa8255?
> +
> + resets:
> + maxItems: 1
> +
> + iommus:
> + maxItems: 1
> +
> + phys:
> + minItems: 1
> + maxItems: 2
phys should be afixed, constrained.
> +
> + phy-names:
> + minItems: 1
> + maxItems: 2
This as well.
> +
> + dma-coherent: true
> +
> + # Firmware-managed platforms do not use direct clock/interconnect control
> + clocks: false
> + clock-names: false
> + interconnects: false
> + interconnect-names: false
Drop all four above. Not sure why do you need them.
> +
> +required:
> + - compatible
> + - reg
> + - interrupts
> + - interrupt-names
> + - power-domains
> + - power-domain-names
> + - resets
I guess phys and phy-names as well.
> +
> +allOf:
> + - $ref: snps,dwc3-common.yaml#
Best regards,
Krzysztof
next prev parent reply other threads:[~2026-10-13 7:20 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-10 5:32 [PATCH v3 0/7] usb: dwc3: qcom: Add firmware-managed resource support for SA8255P Faisal Hassan
2026-10-10 5:32 ` [PATCH v3 1/7] usb: dwc3: qcom: Keep wakeup IRQ enable/disable balanced on failed resume Faisal Hassan
2026-10-10 5:32 ` [PATCH v3 2/7] usb: dwc3: qcom: Distinguish PM and runtime suspend/resume paths Faisal Hassan
2026-10-10 5:32 ` [PATCH v3 3/7] dt-bindings: usb: Add qcom,sa8255p-dwc3 for firmware-managed resources Faisal Hassan
2026-10-13 7:20 ` Krzysztof Kozlowski [this message]
2026-10-13 13:39 ` Faisal Hassan
2026-10-10 5:32 ` [PATCH v3 4/7] usb: host: xhci-plat: Support XHCI_RESET_ON_RESUME via device property Faisal Hassan
2026-10-10 5:32 ` [PATCH v3 5/7] usb: dwc3: qcom: Support broken suspend for SA8255P Faisal Hassan
2026-10-10 5:32 ` [PATCH v3 6/7] usb: dwc3: qcom: Support firmware-managed resource states for power management Faisal Hassan
2026-10-10 5:32 ` [PATCH v3 7/7] usb: dwc3: qcom: Enable VBUS override at probe for default peripheral role Faisal Hassan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20261013-light-significant-markhor-c30eea@quoll \
--to=krzk@kernel.org \
--cc=Thinh.Nguyen@synopsys.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=faisal.hassan@oss.qualcomm.com \
--cc=gregkh@linuxfoundation.org \
--cc=jack.pham@oss.qualcomm.com \
--cc=krishna.kurapati@oss.qualcomm.com \
--cc=krzk+dt@kernel.org \
--cc=linux-arm-msm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=mathias.nyman@intel.com \
--cc=p.zabel@pengutronix.de \
--cc=robh@kernel.org \
--cc=shazad.hussain@oss.qualcomm.com \
--cc=sriram.dash@oss.qualcomm.com \
--cc=wesley.cheng@oss.qualcomm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox