blob: 5cc81ced589d50da71c91bed9f4d2dfa232e78dc [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/usb/brcm,usb-pinmap.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Broadcom USB pin map Controller
8
9maintainers:
10 - Al Cooper <alcooperx@gmail.com>
11
12properties:
13 compatible:
14 items:
15 - const: brcm,usb-pinmap
16
17 reg:
18 maxItems: 1
19
20 interrupts:
21 maxItems: 1
22 description: Interrupt for signals mirrored to out-gpios.
23
24 in-gpios:
25 minItems: 1
26 maxItems: 2
27 description: Array of one or two GPIO pins used for input signals.
28
29 brcm,in-functions:
30 $ref: /schemas/types.yaml#/definitions/string-array
31 description: Array of input signal names, one per gpio in in-gpios.
32
33 brcm,in-masks:
34 $ref: /schemas/types.yaml#/definitions/uint32-array
35 description: Array of enable and mask pairs, one per gpio in-gpios.
36
37 out-gpios:
38 maxItems: 1
39 description: Array of one GPIO pin used for output signals.
40
41 brcm,out-functions:
42 $ref: /schemas/types.yaml#/definitions/string-array
43 description: Array of output signal names, one per gpio in out-gpios.
44
45 brcm,out-masks:
46 $ref: /schemas/types.yaml#/definitions/uint32-array
47 description: Array of enable, value, changed and clear masks, one
48 per gpio in out-gpios.
49
50required:
51 - compatible
52 - reg
53
54additionalProperties: false
55
56dependencies:
57 in-gpios: [ interrupts ]
58
59examples:
60 - |
61 usb_pinmap: usb-pinmap@22000d0 {
62 compatible = "brcm,usb-pinmap";
63 reg = <0x22000d0 0x4>;
64 in-gpios = <&gpio 18 0>, <&gpio 19 0>;
65 brcm,in-functions = "VBUS", "PWRFLT";
66 brcm,in-masks = <0x8000 0x40000 0x10000 0x80000>;
67 out-gpios = <&gpio 20 0>;
68 brcm,out-functions = "PWRON";
69 brcm,out-masks = <0x20000 0x800000 0x400000 0x200000>;
70 interrupts = <0x0 0xb2 0x4>;
71 };
72
73...