[PATCH v2 1/2] dt-bindings: usb: gadget: udc: add Axiado AX3000 and AX3005 UDC
From: Naveen Kumar Rajgiri Bassappa
Date: Tue Aug 18 2026 - 01:57:44 EST
Add a Devicetree binding for the USB device controller integrated into
the Axiado AX3000 and AX3005 SoCs.
The controller is based on the Corigine USB 3.1 device IP core and supports
High-Speed and SuperSpeed operation. The standard maximum-speed property
can be used to limit the controller to High-Speed operation.
Signed-off-by: Naveen Kumar Rajgiri Bassappa <rbnaveenkumar@xxxxxxxxxx>
---
.../devicetree/bindings/usb/axiado,ax3000-udc.yaml | 72 ++++++++++++++++++++++
MAINTAINERS | 8 +++
2 files changed, 80 insertions(+)
diff --git a/Documentation/devicetree/bindings/usb/axiado,ax3000-udc.yaml b/Documentation/devicetree/bindings/usb/axiado,ax3000-udc.yaml
new file mode 100644
index 000000000000..a9892658b059
--- /dev/null
+++ b/Documentation/devicetree/bindings/usb/axiado,ax3000-udc.yaml
@@ -0,0 +1,72 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/usb/axiado,ax3000-udc.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Axiado AX3000/AX3005 USB Device Controller
+
+maintainers:
+ - Naveen Kumar Rajgiri Bassappa <rbnaveenkumar@xxxxxxxxxx>
+ - Krutik Shah <krutikshah@xxxxxxxxxx>
+ - Prasad Bolisetty <pbolisetty@xxxxxxxxxx>
+
+description:
+ Axiado USB Device Controller (UDC) is used on the AX3000 and AX3005
+ SoCs. This controller is based on a Corigine USB IP core and provides
+ SuperSpeed (5 Gb/s) or High-Speed (480 Mb/s) operation, selected by the
+ maximum-speed property. It supports control, bulk, interrupt, and
+ isochronous transfer types across multiple configurable endpoints. The
+ node describes the memory-mapped register region, interrupt line, and
+ other required properties for the UDC hardware.
+
+properties:
+ compatible:
+ oneOf:
+ - const: axiado,ax3000-udc
+ - items:
+ - const: axiado,ax3005-udc
+ - const: axiado,ax3000-udc
+
+ reg:
+ maxItems: 1
+
+ interrupts:
+ maxItems: 1
+
+ clocks:
+ maxItems: 1
+
+ resets:
+ maxItems: 1
+
+ phys:
+ maxItems: 1
+
+ maximum-speed:
+ enum: [super-speed, high-speed]
+
+required:
+ - compatible
+ - reg
+ - interrupts
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/interrupt-controller/arm-gic.h>
+ #include <dt-bindings/interrupt-controller/irq.h>
+
+ soc {
+ #address-cells = <2>;
+ #size-cells = <2>;
+
+ usb@81200000 {
+ compatible = "axiado,ax3000-udc";
+ reg = <0x0 0x81200000 0x0 0x00100000>;
+ interrupt-parent = <&gic500>;
+ interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;
+ maximum-speed = "high-speed";
+ };
+ };
diff --git a/MAINTAINERS b/MAINTAINERS
index a674e36529f7..36af69fb965b 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -4468,6 +4468,14 @@ F: Documentation/devicetree/bindings/spi/axiado,ax3000-spi.yaml
F: drivers/spi/spi-axiado.c
F: drivers/spi/spi-axiado.h
+AXIADO USB UDC DRIVER
+M: Naveen Kumar Rajgiri Bassappa <rbnaveenkumar@xxxxxxxxxx>
+M: Krutik Shah <krutikshah@xxxxxxxxxx>
+M: Prasad Bolisetty <pbolisetty@xxxxxxxxxx>
+L: linux-usb@xxxxxxxxxxxxxxx
+S: Supported
+F: Documentation/devicetree/bindings/usb/axiado,ax3000-udc.yaml
+
AYANEO PLATFORM EC DRIVER
M: Antheas Kapenekakis <lkml@xxxxxxxxxxx>
L: platform-driver-x86@xxxxxxxxxxxxxxx
--
2.34.1