xref: /freebsd/sys/contrib/device-tree/Bindings/pinctrl/amlogic,meson8-pinctrl-cbus.yaml (revision aa1a8ff2d6dbc51ef058f46f3db5a8bb77967145)
1fac71e4eSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2fac71e4eSEmmanuel Vadot%YAML 1.2
3fac71e4eSEmmanuel Vadot---
4fac71e4eSEmmanuel Vadot$id: http://devicetree.org/schemas/pinctrl/amlogic,meson8-pinctrl-cbus.yaml#
5fac71e4eSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6fac71e4eSEmmanuel Vadot
7fac71e4eSEmmanuel Vadottitle: Amlogic Meson8 CBUS pinmux controller
8fac71e4eSEmmanuel Vadot
9fac71e4eSEmmanuel Vadotmaintainers:
10fac71e4eSEmmanuel Vadot  - Neil Armstrong <neil.armstrong@linaro.org>
11fac71e4eSEmmanuel Vadot
12fac71e4eSEmmanuel VadotallOf:
13fac71e4eSEmmanuel Vadot  - $ref: amlogic,meson-pinctrl-common.yaml#
14fac71e4eSEmmanuel Vadot
15fac71e4eSEmmanuel Vadotproperties:
16fac71e4eSEmmanuel Vadot  compatible:
17fac71e4eSEmmanuel Vadot    oneOf:
18fac71e4eSEmmanuel Vadot      - enum:
19fac71e4eSEmmanuel Vadot          - amlogic,meson8-cbus-pinctrl
20fac71e4eSEmmanuel Vadot          - amlogic,meson8b-cbus-pinctrl
21fac71e4eSEmmanuel Vadot          - amlogic,meson-gxbb-periphs-pinctrl
22fac71e4eSEmmanuel Vadot          - amlogic,meson-gxl-periphs-pinctrl
23fac71e4eSEmmanuel Vadot          - amlogic,meson-axg-periphs-pinctrl
24fac71e4eSEmmanuel Vadot      - items:
25fac71e4eSEmmanuel Vadot          - const: amlogic,meson8m2-cbus-pinctrl
26fac71e4eSEmmanuel Vadot          - const: amlogic,meson8-cbus-pinctrl
27fac71e4eSEmmanuel Vadot
28fac71e4eSEmmanuel Vadotrequired:
29fac71e4eSEmmanuel Vadot  - compatible
30fac71e4eSEmmanuel Vadot
31fac71e4eSEmmanuel VadotpatternProperties:
32fac71e4eSEmmanuel Vadot  "^bank@[0-9a-z]+$":
33fac71e4eSEmmanuel Vadot    $ref: amlogic,meson-pinctrl-common.yaml#/$defs/meson-gpio
34fac71e4eSEmmanuel Vadot
35fac71e4eSEmmanuel Vadot    unevaluatedProperties: false
36fac71e4eSEmmanuel Vadot
37fac71e4eSEmmanuel Vadot    properties:
38fac71e4eSEmmanuel Vadot      reg:
39fac71e4eSEmmanuel Vadot        maxItems: 4
40fac71e4eSEmmanuel Vadot
41fac71e4eSEmmanuel Vadot      reg-names:
42fac71e4eSEmmanuel Vadot        items:
43fac71e4eSEmmanuel Vadot          - const: mux
44fac71e4eSEmmanuel Vadot          - const: pull
45fac71e4eSEmmanuel Vadot          - const: pull-enable
46fac71e4eSEmmanuel Vadot          - const: gpio
47fac71e4eSEmmanuel Vadot
48*aa1a8ff2SEmmanuel Vadot      gpio-line-names:
49*aa1a8ff2SEmmanuel Vadot        minItems: 86 # AXG
50*aa1a8ff2SEmmanuel Vadot        maxItems: 120 # Meson8
51*aa1a8ff2SEmmanuel Vadot
52fac71e4eSEmmanuel VadotunevaluatedProperties:
53fac71e4eSEmmanuel Vadot  type: object
54fac71e4eSEmmanuel Vadot  $ref: amlogic,meson-pinctrl-common.yaml#/$defs/meson-pins
55fac71e4eSEmmanuel Vadot
56fac71e4eSEmmanuel Vadotexamples:
57fac71e4eSEmmanuel Vadot  - |
58fac71e4eSEmmanuel Vadot    pinctrl_cbus: pinctrl {
59fac71e4eSEmmanuel Vadot      compatible = "amlogic,meson8-cbus-pinctrl";
60fac71e4eSEmmanuel Vadot      #address-cells = <1>;
61fac71e4eSEmmanuel Vadot      #size-cells = <1>;
62fac71e4eSEmmanuel Vadot      ranges;
63fac71e4eSEmmanuel Vadot
64fac71e4eSEmmanuel Vadot      bank@80b0 {
65fac71e4eSEmmanuel Vadot        reg = <0x80b0 0x28>,
66fac71e4eSEmmanuel Vadot              <0x80e8 0x18>,
67fac71e4eSEmmanuel Vadot              <0x8120 0x18>,
68fac71e4eSEmmanuel Vadot              <0x8030 0x30>;
69fac71e4eSEmmanuel Vadot        reg-names = "mux", "pull", "pull-enable", "gpio";
70fac71e4eSEmmanuel Vadot        gpio-controller;
71fac71e4eSEmmanuel Vadot        #gpio-cells = <2>;
72fac71e4eSEmmanuel Vadot        gpio-ranges = <&pinctrl_cbus 0 0 120>;
73fac71e4eSEmmanuel Vadot      };
74fac71e4eSEmmanuel Vadot
75fac71e4eSEmmanuel Vadot      cec_ao_a_h_pins: cec_ao_a_h {
76fac71e4eSEmmanuel Vadot        mux {
77fac71e4eSEmmanuel Vadot          groups = "cec_ao_a_h";
78fac71e4eSEmmanuel Vadot          function = "cec_ao_a_h";
79fac71e4eSEmmanuel Vadot          bias-disable;
80fac71e4eSEmmanuel Vadot        };
81fac71e4eSEmmanuel Vadot      };
82fac71e4eSEmmanuel Vadot    };
83