1# Copyright (c) 2021 Nordic Semiconductor ASA
2# SPDX-License-Identifier: Apache-2.0
3
4description: |
5    Test pin controller.
6
7compatible: "vnd,pinctrl-test"
8
9include: base.yaml
10
11child-binding:
12  description: |
13    Test pin controller pin configuration nodes. Each node is composed by one or
14    more groups, each defining the configuration for a set of pins.
15
16  child-binding:
17    description: |
18      Test pin controller pin configuration group. Each group contains a list of
19      pins sharing the same set of properties. Example:
20
21      /* node representing default state for test_device0 */
22      test_device0_default: test_device0_default {
23        /* group 1 (name is arbitrary) */
24        group1 {
25          /* configure pins 0 and 1 */
26          pins = <0>, <1>;
27          /* both pins 0 and 1 have pull-up enabled */
28          bias-pull-up;
29        };
30        ...
31        /* group N (name is arbitrary) */
32        groupN {
33          /* configure pin M */
34          pins = <M>;
35          /* pin M has pull-down enabled */
36          bias-pull-down;
37        };
38      };
39
40      The list of supported standard properties:
41
42      - bias-pull-up: Enable pull-up resistor.
43      - bias-pull-down: Enable pull-down resistor.
44
45    include:
46      - name: pincfg-node.yaml
47        property-allowlist:
48          - bias-pull-down
49          - bias-pull-up
50
51    properties:
52      pins:
53        required: true
54        type: array
55        description: |
56          An array of pins sharing the same group properties. Each entry is a
57          32-bit integer that is just used to identify the entry for testing
58          purposes.
59