linux/Documentation/devicetree/bindings/mfd/airoha,en7581-gpio-sysctl.yaml
Christian Marangi 50dedb1eb1 dt-bindings: mfd: Add support for Airoha EN7581 GPIO System Controller
Add support for Airoha EN7581 GPIO System Controller which provide a
register map for controlling the GPIO, pinctrl and PWM of the SoC via
dedicated pinctrl and pwm child nodes.

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Co-developed-by: Lorenzo Bianconi <lorenzo@kernel.org>
Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Link: https://lore.kernel.org/20241023-en7581-pinctrl-v9-4-afb0cbcab0ec@kernel.org
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
2024-10-30 10:56:51 +01:00

91 lines
1.9 KiB
YAML

# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/mfd/airoha,en7581-gpio-sysctl.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Airoha EN7581 GPIO System Controller
maintainers:
- Christian Marangi <ansuelsmth@gmail.com>
- Lorenzo Bianconi <lorenzo@kernel.org>
description:
Airoha EN7581 SoC GPIO system controller which provided a register map
for controlling the GPIO, pins and PWM of the SoC.
properties:
compatible:
items:
- const: airoha,en7581-gpio-sysctl
- const: syscon
- const: simple-mfd
reg:
maxItems: 1
pinctrl:
type: object
$ref: /schemas/pinctrl/airoha,en7581-pinctrl.yaml
description:
Child node definition for EN7581 Pin controller
pwm:
type: object
$ref: /schemas/pwm/airoha,en7581-pwm.yaml
description:
Child node definition for EN7581 PWM controller
required:
- compatible
- reg
additionalProperties: false
examples:
- |
#include <dt-bindings/interrupt-controller/arm-gic.h>
system-controller@1fbf0200 {
compatible = "airoha,en7581-gpio-sysctl", "syscon", "simple-mfd";
reg = <0x1fbf0200 0xc0>;
pinctrl {
compatible = "airoha,en7581-pinctrl";
interrupt-parent = <&gic>;
interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>;
gpio-controller;
#gpio-cells = <2>;
interrupt-controller;
#interrupt-cells = <2>;
mmc-pins {
mux {
function = "emmc";
groups = "emmc";
};
};
mdio-pins {
mux {
function = "mdio";
groups = "mdio";
};
conf {
pins = "gpio2";
output-enable;
};
};
};
pwm {
compatible = "airoha,en7581-pwm";
#pwm-cells = <3>;
};
};