Files
linux/Documentation/devicetree/bindings/gpio/atmel,at91rm9200-gpio.yaml
Manikandan Muralidharan 337049890b dt-bindings: gpio: convert Atmel GPIO to json-schema
Convert the Atmel GPIO controller binding document to DT schema format
using json-schema.
The at91 pinctrl driver uses "atmel,at91rm9200-gpio" compatible string
to find the number of active GPIO banks and identify the pinmux nodes.
"atmel,at91sam9x5-gpio" and "microchip,sam9x60-gpio" have additional
registers to handle drive-strength, slew-rate,  pull-down to drive the
pinmux configs.
The new compatible string "microchip,sam9x7-gpio" is added.

Signed-off-by: Manikandan Muralidharan <manikandan.m@microchip.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Conor Dooley <conor.dooley@microchip.com>
Link: https://lore.kernel.org/r/20240709092354.191643-5-manikandan.m@microchip.com
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
2024-07-09 13:24:55 +02:00

82 lines
1.6 KiB
YAML

# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/gpio/atmel,at91rm9200-gpio.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Microchip GPIO controller (PIO)
maintainers:
- Manikandan Muralidharan <manikandan.m@microchip.com>
properties:
compatible:
oneOf:
- items:
- enum:
- atmel,at91sam9x5-gpio
- microchip,sam9x60-gpio
- const: atmel,at91rm9200-gpio
- items:
- enum:
- microchip,sam9x7-gpio
- const: microchip,sam9x60-gpio
- const: atmel,at91rm9200-gpio
- items:
- const: atmel,at91rm9200-gpio
reg:
maxItems: 1
interrupts:
maxItems: 1
interrupt-controller: true
"#interrupt-cells":
const: 2
gpio-controller: true
gpio-line-names: true
"#gpio-cells":
const: 2
clocks:
maxItems: 1
"#gpio-lines":
description:
Number of gpio, 32 by default if absent
maxItems: 1
default: 32
required:
- compatible
- reg
- interrupts
- interrupt-controller
- "#interrupt-cells"
- gpio-controller
- "#gpio-cells"
- clocks
additionalProperties: false
examples:
- |
#include <dt-bindings/clock/at91.h>
#include <dt-bindings/interrupt-controller/irq.h>
gpio@fffff400 {
compatible = "atmel,at91rm9200-gpio";
reg = <0xfffff400 0x200>;
interrupts = <2 IRQ_TYPE_LEVEL_HIGH 1>;
#gpio-cells = <2>;
gpio-controller;
interrupt-controller;
#interrupt-cells = <2>;
clocks = <&pmc PMC_TYPE_PERIPHERAL 2>;
};
...