Not all @st.com email address are concerned, only people who have a specific @foss.st.com email will see their entry updated. For some people, who left the company, remove their email. Cc: Alexandre Torgue <alexandre.torgue@foss.st.com> Cc: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com> Cc: Fabien Dessenne <fabien.dessenne@foss.st.com> Cc: Christophe Roullier <christophe.roullier@foss.st.com> Cc: Gabriel Fernandez <gabriel.fernandez@foss.st.com> Cc: Lionel Debieve <lionel.debieve@foss.st.com> Cc: Amelie Delaunay <amelie.delaunay@foss.st.com> Cc: Pierre-Yves MORDRET <pierre-yves.mordret@foss.st.com> Cc: Ludovic Barre <ludovic.barre@foss.st.com> Cc: Christophe Kerello <christophe.kerello@foss.st.com> Cc: pascal Paillet <p.paillet@foss.st.com> Cc: Erwan Le Ray <erwan.leray@foss.st.com> Cc: Philippe CORNU <philippe.cornu@foss.st.com> Cc: Yannick Fertre <yannick.fertre@foss.st.com> Cc: Fabrice Gasnier <fabrice.gasnier@foss.st.com> Cc: Olivier Moysan <olivier.moysan@foss.st.com> Cc: Hugues Fruchet <hugues.fruchet@foss.st.com> Signed-off-by: Patrice Chotard <patrice.chotard@foss.st.com> Reviewed-by: Mathieu Poirier <mathieu.poirier@linaro.org> Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com> Acked-by: Mark Brown <broonie@kernel.org> Acked-by: Lee Jones <lee.jones@linaro.org> Acked-By: Vinod Koul <vkoul@kernel.org> Acked-by: Miquel Raynal <miquel.raynal@bootlin.com> Link: https://lore.kernel.org/r/20211110150144.18272-6-patrice.chotard@foss.st.com Signed-off-by: Rob Herring <robh@kernel.org>
122 lines
3.0 KiB
YAML
122 lines
3.0 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/mfd/st,stmfx.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: STMicroelectonics Multi-Function eXpander (STMFX) bindings
|
|
|
|
description: ST Multi-Function eXpander (STMFX) is a slave controller using I2C for
|
|
communication with the main MCU. Its main features are GPIO expansion,
|
|
main MCU IDD measurement (IDD is the amount of current that flows
|
|
through VDD) and resistive touchscreen controller.
|
|
|
|
maintainers:
|
|
- Amelie Delaunay <amelie.delaunay@foss.st.com>
|
|
|
|
properties:
|
|
compatible:
|
|
const: st,stmfx-0300
|
|
|
|
reg:
|
|
enum: [ 0x42, 0x43 ]
|
|
|
|
interrupts:
|
|
maxItems: 1
|
|
|
|
drive-open-drain: true
|
|
|
|
vdd-supply: true
|
|
|
|
pinctrl:
|
|
type: object
|
|
|
|
properties:
|
|
compatible:
|
|
const: st,stmfx-0300-pinctrl
|
|
|
|
"#gpio-cells":
|
|
const: 2
|
|
|
|
"#interrupt-cells":
|
|
const: 2
|
|
|
|
gpio-controller: true
|
|
|
|
interrupt-controller: true
|
|
|
|
gpio-ranges:
|
|
description: if all STMFX pins[24:0] are available (no other STMFX function in use),
|
|
you should use gpio-ranges = <&stmfx_pinctrl 0 0 24>;
|
|
if agpio[3:0] are not available (STMFX Touchscreen function in use),
|
|
you should use gpio-ranges = <&stmfx_pinctrl 0 0 16>, <&stmfx_pinctrl 20 20 4>;
|
|
if agpio[7:4] are not available (STMFX IDD function in use),
|
|
you should use gpio-ranges = <&stmfx_pinctrl 0 0 20>;
|
|
maxItems: 1
|
|
|
|
patternProperties:
|
|
"^[a-zA-Z]*-pins$":
|
|
type: object
|
|
|
|
allOf:
|
|
- $ref: ../pinctrl/pinmux-node.yaml
|
|
|
|
properties:
|
|
pins: true
|
|
bias-disable: true
|
|
bias-pull-up: true
|
|
bias-pull-pin-default: true
|
|
bias-pull-down: true
|
|
drive-open-drain: true
|
|
drive-push-pull: true
|
|
output-high: true
|
|
output-low: true
|
|
|
|
additionalProperties: false
|
|
|
|
required:
|
|
- compatible
|
|
- "#gpio-cells"
|
|
- "#interrupt-cells"
|
|
- gpio-controller
|
|
- interrupt-controller
|
|
- gpio-ranges
|
|
|
|
additionalProperties: false
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
- interrupts
|
|
|
|
examples:
|
|
- |
|
|
#include <dt-bindings/interrupt-controller/arm-gic.h>
|
|
i2c {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
stmfx@42 {
|
|
compatible = "st,stmfx-0300";
|
|
reg = <0x42>;
|
|
interrupts = <8 IRQ_TYPE_EDGE_RISING>;
|
|
interrupt-parent = <&gpioi>;
|
|
vdd-supply = <&v3v3>;
|
|
|
|
stmfx_pinctrl: pinctrl {
|
|
compatible = "st,stmfx-0300-pinctrl";
|
|
#gpio-cells = <2>;
|
|
#interrupt-cells = <2>;
|
|
gpio-controller;
|
|
interrupt-controller;
|
|
gpio-ranges = <&stmfx_pinctrl 0 0 24>;
|
|
|
|
joystick_pins: joystick-pins {
|
|
pins = "gpio0", "gpio1", "gpio2", "gpio3", "gpio4";
|
|
drive-push-pull;
|
|
bias-pull-up;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
...
|