xref: /linux/Documentation/devicetree/bindings/pinctrl/marvell,ap806-pinctrl.yaml (revision 84318277d6334c6981ab326d4acc87c6a6ddc9b8)
1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/pinctrl/marvell,ap806-pinctrl.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Marvell AP806 pin controller
8
9maintainers:
10  - Gregory Clement <gregory.clement@bootlin.com>
11  - Miquel Raynal <miquel.raynal@bootlin.com>
12
13properties:
14  compatible:
15    const: marvell,ap806-pinctrl
16
17  reg:
18    maxItems: 1
19
20patternProperties:
21  '-pins$':
22    type: object
23    additionalProperties: false
24
25    properties:
26      marvell,function:
27        $ref: /schemas/types.yaml#/definitions/string
28        description:
29          Indicates the function to select.
30        enum: [ gpio, i2c0, sdio, spi0, uart0, uart1 ]
31
32      marvell,pins:
33        $ref: /schemas/types.yaml#/definitions/string-array
34        description:
35          Array of MPP pins to be used for the given function.
36        minItems: 1
37        maxItems: 20
38        items:
39          enum: [
40            mpp0, mpp1, mpp2, mpp3, mpp4, mpp5, mpp6, mpp7, mpp8, mpp9, mpp10,
41            mpp11, mpp12, mpp13, mpp14, mpp15, mpp16, mpp17, mpp18, mpp19
42          ]
43
44allOf:
45  - $ref: pinctrl.yaml#
46
47required:
48  - compatible
49
50additionalProperties: false
51
52examples:
53  - |
54    pinctrl {
55        compatible = "marvell,ap806-pinctrl";
56
57        uart0_pins: uart0-pins {
58            marvell,pins = "mpp11", "mpp19";
59            marvell,function = "uart0";
60        };
61    };
62