Files
cubelinux-kernel/Documentation/devicetree/bindings/gpio/apm,xgene-gpio-sb.yaml
T
Greg Kroah-Hartman 598cf27219 Linux 6.19.3
Link: https://lore.kernel.org/r/20260217200002.683975158@linuxfoundation.org
Tested-by: Florian Fainelli <florian.fainelli@broadcom.com>
Tested-by: Takeshi Ogasawara <takeshi.ogasawara@futuring-girl.com>
Tested-by: Peter Schneider <pschneider1968@googlemail.com>
Tested-by: Jon Hunter <jonathanh@nvidia.com>
Tested-by: Salvatore Bonaccorso <carnil@debian.org>
Tested-by: Brett A C Sheffield <bacs@librecast.net>
Tested-by: Mark Brown <broonie@kernel.org>
Tested-by: Luna Jernberg <droidbittin@gmail.com>
Tested-by: Ronald Warsow <rwarsow@gmx.de>
Tested-by: Justin M. Forbes <jforbes@fedoraproject.org>
Tested-by: Ron Economos <re@w6rz.net>
Tested-by: Miguel Ojeda <ojeda@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2026-02-19 16:33:27 +01:00

95 lines
2.6 KiB
YAML

# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/apm,xgene-gpio-sb.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: APM X-Gene Standby GPIO controller
maintainers:
- Khuong Dinh <khuong@os.amperecomputing.com>
description: |
This is a gpio controller in the standby domain. It also supports interrupt in
some particular pins which are sourced to its parent interrupt controller
as diagram below:
+-----------------+
| X-Gene standby |
| GPIO controller +------ GPIO_0
+------------+ | | ...
| Parent IRQ | EXT_INT_0 | +------ GPIO_8/EXT_INT_0
| controller | (SPI40) | | ...
| (GICv2) +--------------+ +------ GPIO_[N+8]/EXT_INT_N
| | ... | |
| | EXT_INT_N | +------ GPIO_[N+9]
| | (SPI[40 + N])| | ...
| +--------------+ +------ GPIO_MAX
+------------+ +-----------------+
properties:
compatible:
const: apm,xgene-gpio-sb
reg:
maxItems: 1
'#gpio-cells':
const: 2
gpio-controller: true
interrupts:
description:
List of interrupt specifiers for EXT_INT_0 through EXT_INT_N. The first
entry must correspond to EXT_INT_0.
'#interrupt-cells':
const: 2
description:
First cell selects EXT_INT_N (0-N), second cell specifies flags
interrupt-controller: true
apm,nr-gpios:
$ref: /schemas/types.yaml#/definitions/uint32
description: Number of GPIO pins
apm,nr-irqs:
$ref: /schemas/types.yaml#/definitions/uint32
description: Number of interrupt pins
apm,irq-start:
$ref: /schemas/types.yaml#/definitions/uint32
description: Lowest GPIO pin supporting interrupts
required:
- compatible
- reg
- '#gpio-cells'
- gpio-controller
- interrupts
- '#interrupt-cells'
- interrupt-controller
additionalProperties: false
examples:
- |
gpio@17001000 {
compatible = "apm,xgene-gpio-sb";
reg = <0x17001000 0x400>;
#gpio-cells = <2>;
gpio-controller;
interrupts = <0x0 0x28 0x1>,
<0x0 0x29 0x1>,
<0x0 0x2a 0x1>,
<0x0 0x2b 0x1>,
<0x0 0x2c 0x1>,
<0x0 0x2d 0x1>;
#interrupt-cells = <2>;
interrupt-controller;
apm,nr-gpios = <22>;
apm,nr-irqs = <6>;
apm,irq-start = <8>;
};