| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130 |
- # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
- %YAML 1.2
- ---
- $id: http://devicetree.org/schemas/mfd/brcm,bcm6358-gpio-sysctl.yaml#
- $schema: http://devicetree.org/meta-schemas/core.yaml#
- title: Broadcom BCM6358 GPIO System Controller
- maintainers:
- - Álvaro Fernández Rojas <noltari@gmail.com>
- - Jonas Gorski <jonas.gorski@gmail.com>
- description:
- Broadcom BCM6358 SoC GPIO system controller which provides a register map
- for controlling the GPIO and pins of the SoC.
- properties:
- "#address-cells": true
- "#size-cells": true
- compatible:
- items:
- - const: brcm,bcm6358-gpio-sysctl
- - const: syscon
- - const: simple-mfd
- ranges:
- maxItems: 1
- reg:
- maxItems: 1
- patternProperties:
- "^gpio@[0-9a-f]+$":
- # Child node
- type: object
- $ref: /schemas/gpio/brcm,bcm63xx-gpio.yaml
- description:
- GPIO controller for the SoC GPIOs. This child node definition
- should follow the bindings specified in
- Documentation/devicetree/bindings/gpio/brcm,bcm63xx-gpio.yaml.
- "^pinctrl@[0-9a-f]+$":
- # Child node
- type: object
- $ref: /schemas/pinctrl/brcm,bcm6358-pinctrl.yaml
- description:
- Pin controller for the SoC pins. This child node definition
- should follow the bindings specified in
- Documentation/devicetree/bindings/pinctrl/brcm,bcm6358-pinctrl.yaml.
- required:
- - "#address-cells"
- - compatible
- - ranges
- - reg
- - "#size-cells"
- additionalProperties: false
- examples:
- - |
- syscon@fffe0080 {
- #address-cells = <1>;
- #size-cells = <1>;
- compatible = "brcm,bcm6358-gpio-sysctl", "syscon", "simple-mfd";
- reg = <0xfffe0080 0x80>;
- ranges = <0 0xfffe0080 0x80>;
- gpio@0 {
- compatible = "brcm,bcm6358-gpio";
- reg-names = "dirout", "dat";
- reg = <0x0 0x8>, <0x8 0x8>;
- gpio-controller;
- gpio-ranges = <&pinctrl 0 0 40>;
- #gpio-cells = <2>;
- };
- pinctrl: pinctrl@18 {
- compatible = "brcm,bcm6358-pinctrl";
- reg = <0x18 0x4>;
- pinctrl_ebi_cs: ebi_cs-pins {
- function = "ebi_cs";
- groups = "ebi_cs_grp";
- };
- pinctrl_uart1: uart1-pins {
- function = "uart1";
- groups = "uart1_grp";
- };
- pinctrl_serial_led: serial_led-pins {
- function = "serial_led";
- groups = "serial_led_grp";
- };
- pinctrl_legacy_led: legacy_led-pins {
- function = "legacy_led";
- groups = "legacy_led_grp";
- };
- pinctrl_led: led-pins {
- function = "led";
- groups = "led_grp";
- };
- pinctrl_spi_cs_23: spi_cs-pins {
- function = "spi_cs";
- groups = "spi_cs_grp";
- };
- pinctrl_utopia: utopia-pins {
- function = "utopia";
- groups = "utopia_grp";
- };
- pinctrl_pwm_syn_clk: pwm_syn_clk-pins {
- function = "pwm_syn_clk";
- groups = "pwm_syn_clk_grp";
- };
- pinctrl_sys_irq: sys_irq-pins {
- function = "sys_irq";
- groups = "sys_irq_grp";
- };
- };
- };
|