xref: /freebsd/sys/contrib/device-tree/Bindings/usb/maxim,max3420-udc.yaml (revision cfd6422a5217410fbd66f7a7a8a64d9d85e61229)
1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/usb/maxim,max3420-udc.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: MAXIM MAX3420/1 USB Peripheral Controller
8
9maintainers:
10  - Jassi Brar <jaswinder.singh@linaro.org>
11
12description: |
13  The controller provices USB2.0 compliant FullSpeed peripheral
14  implementation over the SPI interface.
15
16  Specifications about the part can be found at:
17    http://datasheets.maximintegrated.com/en/ds/MAX3420E.pdf
18
19properties:
20  compatible:
21    enum:
22      - maxim,max3420-udc
23      - maxim,max3421-udc
24
25  reg:
26    maxItems: 1
27
28  interrupts:
29    items:
30      - description: usb irq from max3420
31      - description: vbus detection irq
32    minItems: 1
33    maxItems: 2
34
35  interrupt-names:
36    items:
37      - const: udc
38      - const: vbus
39    minItems: 1
40    maxItems: 2
41
42  spi-max-frequency:
43    maximum: 26000000
44
45required:
46  - compatible
47  - reg
48  - interrupts
49  - interrupt-names
50
51additionalProperties: false
52
53examples:
54  - |
55      #include <dt-bindings/gpio/gpio.h>
56      #include <dt-bindings/interrupt-controller/irq.h>
57      spi0 {
58            #address-cells = <1>;
59            #size-cells = <0>;
60
61            udc@0 {
62                  compatible = "maxim,max3420-udc";
63                  reg = <0>;
64                  interrupt-parent = <&gpio>;
65                  interrupts = <0 IRQ_TYPE_EDGE_FALLING>, <10 IRQ_TYPE_EDGE_BOTH>;
66                  interrupt-names = "udc", "vbus";
67                  spi-max-frequency = <12500000>;
68            };
69      };
70