From: Selvarasu Ganesan <selvarasu.g@samsung.com>
To: krzk@kernel.org, peter.griffin@linaro.org,
alim.akhtar@samsung.com, gregkh@linuxfoundation.org,
robh@kernel.org, conor+dt@kernel.org, Thinh.Nguyen@synopsys.com,
mani@kernel.org, selvarasu.g@samsung.com,
linux-arm-kernel@lists.infradead.org,
linux-samsung-soc@vger.kernel.org, linux-usb@vger.kernel.org,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
Cc: jh0801.jung@samsung.com, h10.kim@samsung.com,
dh10.jung@samsung.com, akash.m5@samsung.com,
hongpooh.kim@samsung.com, eomji.oh@samsung.com,
shijie.cai@samsung.com, muhammed.ali@samsung.com,
thiagu.r@samsung.com
Subject: [PATCH v2 2/3] dt-bindings: usb: Introduce samsung,snps-dwc3
Date: Wed, 16 Sep 2026 17:52:28 +0530 [thread overview]
Message-ID: <20260916122229.2604003-3-selvarasu.g@samsung.com> (raw)
In-Reply-To: <20260916122229.2604003-1-selvarasu.g@samsung.com>
Add the Samsung Exynos8855 DWC3 binding using a flattened node
representation, where the DWC3 controller is directly addressable
rather than nested as a child node of a glue layer.
This is the first Samsung Exynos binding using the flattened
representation. The existing samsung,exynos-dwc3 binding describes the
parent and child representation used by existing Exynos SoCs, which can
be migrated to the flattened model.
Samsung Exynos SoCs sharing the same flattened model can be added by
using the samsung,snps-dwc3 fallback compatible and extending the
compatible enum with per SoC clock and property constraints.
Co-developed-by: Muhammed Ali <muhammed.ali@samsung.com>
Signed-off-by: Muhammed Ali <muhammed.ali@samsung.com>
Signed-off-by: Selvarasu Ganesan <selvarasu.g@samsung.com>
---
Krzysztof Kozlowski is added as a maintainer of this YAML binding, as
he is the ARM/Samsung SoC architecture maintainer (ARM/SAMSUNG S3C,
S5P AND EXYNOS ARM ARCHITECTURES) who already maintains Samsung Exynos
DT bindings (e.g. samsung,exynos-dwc3.yaml) and reviews all
Samsung related binding changes. This follows the same convention used
by existing Samsung Exynos DT binding schemas.
---
.../bindings/usb/samsung,snps-dwc3.yaml | 98 +++++++++++++++++++
1 file changed, 98 insertions(+)
create mode 100644 Documentation/devicetree/bindings/usb/samsung,snps-dwc3.yaml
diff --git a/Documentation/devicetree/bindings/usb/samsung,snps-dwc3.yaml b/Documentation/devicetree/bindings/usb/samsung,snps-dwc3.yaml
new file mode 100644
index 000000000000..480308c16f37
--- /dev/null
+++ b/Documentation/devicetree/bindings/usb/samsung,snps-dwc3.yaml
@@ -0,0 +1,98 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/usb/samsung,snps-dwc3.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Samsung Exynos SoC DWC3 USB Controller
+
+maintainers:
+ - Krzysztof Kozlowski <krzk@kernel.org>
+ - Selvarasu Ganesan <selvarasu.g@samsung.com>
+
+description:
+ Describes the DWC3 USB controller block implemented on Samsung Exynos SoCs.
+
+select:
+ properties:
+ compatible:
+ contains:
+ const: samsung,snps-dwc3
+ required:
+ - compatible
+
+properties:
+ compatible:
+ items:
+ - enum:
+ - samsung,exynos8855-dwc3
+ - const: samsung,snps-dwc3
+
+ reg:
+ maxItems: 1
+
+ power-domains:
+ maxItems: 1
+
+ interrupts:
+ maxItems: 1
+
+ clocks:
+ description: |
+ Several clocks are used, depending on the variant. Typical ones are:
+ - ref: Reference clock for SOF/ITP generation.
+ - bus: Bus (APB) clock for register access.
+ minItems: 1
+ maxItems: 4
+
+ clock-names:
+ minItems: 1
+ maxItems: 4
+
+required:
+ - compatible
+ - reg
+ - clocks
+ - clock-names
+ - interrupts
+
+allOf:
+ - $ref: snps,dwc3-common.yaml#
+
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: samsung,exynos8855-dwc3
+ then:
+ properties:
+ clocks:
+ minItems: 2
+ maxItems: 2
+ clock-names:
+ items:
+ - const: ref
+ - const: bus
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/interrupt-controller/arm-gic.h>
+
+ usb@13200000 {
+ compatible = "samsung,exynos8855-dwc3",
+ "samsung,snps-dwc3";
+ reg = <0x13200000 0x10000>;
+ interrupts = <GIC_SPI 436 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&usb_clk 0>,
+ <&usb_clk 1>;
+ clock-names = "ref", "bus";
+ dr_mode = "peripheral";
+ phys = <&usbdrd_phy 0>;
+ phy-names = "usb2-phy";
+ snps,quirk-frame-length-adjustment = <0x20>;
+ snps,dis-u2-freeclk-exists-quirk;
+ snps,gfladj-refclk-lpm-sel-quirk;
+ };
+...
--
2.17.1
next prev parent reply other threads:[~2026-09-16 12:24 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <CGME20260916122346epcas5p376bd1f05910537d3e0025aac2a62ddf2@epcas5p3.samsung.com>
2026-09-16 12:22 ` [PATCH v2 0/3] Add USB DWC3 support for Samsung Exynos8855 Selvarasu Ganesan
2026-09-16 12:22 ` [PATCH v2 1/3] MAINTAINERS: add Samsung USB DT binding to ARM/SAMSUNG entry Selvarasu Ganesan
2026-09-18 3:19 ` Alim Akhtar
2026-09-18 9:58 ` Krzysztof Kozlowski
2026-09-18 13:43 ` Selvarasu Ganesan
2026-09-16 12:22 ` Selvarasu Ganesan [this message]
2026-09-18 3:25 ` [PATCH v2 2/3] dt-bindings: usb: Introduce samsung,snps-dwc3 Alim Akhtar
2026-09-18 3:36 ` Selvarasu Ganesan
2026-09-18 9:54 ` Krzysztof Kozlowski
2026-09-18 13:36 ` Selvarasu Ganesan
2026-09-18 13:46 ` Krzysztof Kozlowski
2026-09-18 13:55 ` Krzysztof Kozlowski
2026-09-21 7:03 ` Selvarasu Ganesan
2026-09-21 6:56 ` Selvarasu Ganesan
2026-09-16 12:22 ` [PATCH v2 3/3] usb: dwc3: Add Exynos8855 to the generic platform driver Selvarasu Ganesan
2026-09-18 3:26 ` Alim Akhtar
2026-09-23 2:03 ` Thinh Nguyen
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=20260916122229.2604003-3-selvarasu.g@samsung.com \
--to=selvarasu.g@samsung.com \
--cc=Thinh.Nguyen@synopsys.com \
--cc=akash.m5@samsung.com \
--cc=alim.akhtar@samsung.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=dh10.jung@samsung.com \
--cc=eomji.oh@samsung.com \
--cc=gregkh@linuxfoundation.org \
--cc=h10.kim@samsung.com \
--cc=hongpooh.kim@samsung.com \
--cc=jh0801.jung@samsung.com \
--cc=krzk@kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-samsung-soc@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=mani@kernel.org \
--cc=muhammed.ali@samsung.com \
--cc=peter.griffin@linaro.org \
--cc=robh@kernel.org \
--cc=shijie.cai@samsung.com \
--cc=thiagu.r@samsung.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