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>
66 lines
1.6 KiB
YAML
66 lines
1.6 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/pwm/pwm-nexus-node.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: PWM Nexus node properties
|
|
|
|
description: >
|
|
Platforms can have a standardized connector/expansion slot that exposes PWMs
|
|
signals to expansion boards.
|
|
|
|
A nexus node allows to remap a phandle list in a consumer node through a
|
|
connector node in a generic way. With this remapping, the consumer node needs
|
|
to know only about the nexus node. Resources behind the nexus node are
|
|
decoupled by the nexus node itself.
|
|
|
|
maintainers:
|
|
- Herve Codina <herve.codina@bootlin.com>
|
|
|
|
select: true
|
|
|
|
properties:
|
|
'#pwm-cells': true
|
|
|
|
pwm-map:
|
|
$ref: /schemas/types.yaml#/definitions/uint32-matrix
|
|
|
|
pwm-map-mask:
|
|
$ref: /schemas/types.yaml#/definitions/uint32-array
|
|
|
|
pwm-map-pass-thru:
|
|
$ref: /schemas/types.yaml#/definitions/uint32-array
|
|
|
|
dependentRequired:
|
|
pwm-map: ['#pwm-cells']
|
|
pwm-map-mask: [ pwm-map ]
|
|
pwm-map-pass-thru: [ pwm-map ]
|
|
|
|
additionalProperties: true
|
|
|
|
examples:
|
|
- |
|
|
pwm1: pwm@100 {
|
|
reg = <0x100 0x10>;
|
|
#pwm-cells = <3>;
|
|
};
|
|
|
|
pwm2: pwm@200 {
|
|
reg = <0x200 0x10>;
|
|
#pwm-cells = <3>;
|
|
};
|
|
|
|
connector: connector {
|
|
#pwm-cells = <3>;
|
|
pwm-map = <0 0 0 &pwm1 1 0 0>,
|
|
<1 0 0 &pwm2 4 0 0>,
|
|
<2 0 0 &pwm1 3 0 0>;
|
|
pwm-map-mask = <0xffffffff 0x0 0x0>;
|
|
pwm-map-pass-thru = <0x0 0xffffffff 0xffffffff>;
|
|
};
|
|
|
|
device {
|
|
pwms = <&connector 1 57000 0>;
|
|
};
|