18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
28c2ecf20Sopenharmony_ci%YAML 1.2
38c2ecf20Sopenharmony_ci---
48c2ecf20Sopenharmony_ci$id: http://devicetree.org/schemas/usb/maxim,max3420-udc.yaml#
58c2ecf20Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml#
68c2ecf20Sopenharmony_ci
78c2ecf20Sopenharmony_cititle: MAXIM MAX3420/1 USB Peripheral Controller
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_cimaintainers:
108c2ecf20Sopenharmony_ci  - Jassi Brar <jaswinder.singh@linaro.org>
118c2ecf20Sopenharmony_ci
128c2ecf20Sopenharmony_cidescription: |
138c2ecf20Sopenharmony_ci  The controller provices USB2.0 compliant FullSpeed peripheral
148c2ecf20Sopenharmony_ci  implementation over the SPI interface.
158c2ecf20Sopenharmony_ci
168c2ecf20Sopenharmony_ci  Specifications about the part can be found at:
178c2ecf20Sopenharmony_ci    http://datasheets.maximintegrated.com/en/ds/MAX3420E.pdf
188c2ecf20Sopenharmony_ci
198c2ecf20Sopenharmony_ciproperties:
208c2ecf20Sopenharmony_ci  compatible:
218c2ecf20Sopenharmony_ci    enum:
228c2ecf20Sopenharmony_ci      - maxim,max3420-udc
238c2ecf20Sopenharmony_ci      - maxim,max3421-udc
248c2ecf20Sopenharmony_ci
258c2ecf20Sopenharmony_ci  reg:
268c2ecf20Sopenharmony_ci    maxItems: 1
278c2ecf20Sopenharmony_ci
288c2ecf20Sopenharmony_ci  interrupts:
298c2ecf20Sopenharmony_ci    items:
308c2ecf20Sopenharmony_ci      - description: usb irq from max3420
318c2ecf20Sopenharmony_ci      - description: vbus detection irq
328c2ecf20Sopenharmony_ci    minItems: 1
338c2ecf20Sopenharmony_ci    maxItems: 2
348c2ecf20Sopenharmony_ci
358c2ecf20Sopenharmony_ci  interrupt-names:
368c2ecf20Sopenharmony_ci    items:
378c2ecf20Sopenharmony_ci      - const: udc
388c2ecf20Sopenharmony_ci      - const: vbus
398c2ecf20Sopenharmony_ci    minItems: 1
408c2ecf20Sopenharmony_ci    maxItems: 2
418c2ecf20Sopenharmony_ci
428c2ecf20Sopenharmony_ci  spi-max-frequency:
438c2ecf20Sopenharmony_ci    maximum: 26000000
448c2ecf20Sopenharmony_ci
458c2ecf20Sopenharmony_cirequired:
468c2ecf20Sopenharmony_ci  - compatible
478c2ecf20Sopenharmony_ci  - reg
488c2ecf20Sopenharmony_ci  - interrupts
498c2ecf20Sopenharmony_ci  - interrupt-names
508c2ecf20Sopenharmony_ci
518c2ecf20Sopenharmony_ciadditionalProperties: false
528c2ecf20Sopenharmony_ci
538c2ecf20Sopenharmony_ciexamples:
548c2ecf20Sopenharmony_ci  - |
558c2ecf20Sopenharmony_ci      #include <dt-bindings/gpio/gpio.h>
568c2ecf20Sopenharmony_ci      #include <dt-bindings/interrupt-controller/irq.h>
578c2ecf20Sopenharmony_ci      spi0 {
588c2ecf20Sopenharmony_ci            #address-cells = <1>;
598c2ecf20Sopenharmony_ci            #size-cells = <0>;
608c2ecf20Sopenharmony_ci
618c2ecf20Sopenharmony_ci            udc@0 {
628c2ecf20Sopenharmony_ci                  compatible = "maxim,max3420-udc";
638c2ecf20Sopenharmony_ci                  reg = <0>;
648c2ecf20Sopenharmony_ci                  interrupt-parent = <&gpio>;
658c2ecf20Sopenharmony_ci                  interrupts = <0 IRQ_TYPE_EDGE_FALLING>, <10 IRQ_TYPE_EDGE_BOTH>;
668c2ecf20Sopenharmony_ci                  interrupt-names = "udc", "vbus";
678c2ecf20Sopenharmony_ci                  spi-max-frequency = <12500000>;
688c2ecf20Sopenharmony_ci            };
698c2ecf20Sopenharmony_ci      };
70