[PATCH v5 06/15] dt-bindings: mfd: amd,pensando-elbasr: Add AMD Pensando Elba System Resource chip

From: Brad Larson
Date: Mon Jun 13 2022 - 16:47:30 EST


From: Brad Larson <blarson@xxxxxxx>

Add support for the AMD Pensando Elba SoC System Resource chip
using the SPI interface. The Elba SR is a Multi-function Device
supporting device register access using CS0, smbus interface for
FRU and board peripherals using CS1, dual Lattice I2C masters for
transceiver management using CS2, and CS3 for flash access.

Signed-off-by: Brad Larson <blarson@xxxxxxx>
---
.../bindings/mfd/amd,pensando-elbasr.yaml | 93 +++++++++++++++++++
1 file changed, 93 insertions(+)
create mode 100644 Documentation/devicetree/bindings/mfd/amd,pensando-elbasr.yaml

diff --git a/Documentation/devicetree/bindings/mfd/amd,pensando-elbasr.yaml b/Documentation/devicetree/bindings/mfd/amd,pensando-elbasr.yaml
new file mode 100644
index 000000000000..13356800b1cf
--- /dev/null
+++ b/Documentation/devicetree/bindings/mfd/amd,pensando-elbasr.yaml
@@ -0,0 +1,93 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/mfd/amd,pensando-elbasr.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: AMD Pensando Elba SoC Resource Controller bindings
+
+description: |
+ AMD Pensando Elba SoC Resource Controller bindings attached to a SPI bus.
+
+maintainers:
+ - Brad Larson <blarson@xxxxxxx>
+
+properties:
+ compatible:
+ items:
+ - enum:
+ - amd,pensando-elbasr
+ - const: simple-mfd
+
+ spi-max-frequency:
+ description: Maximum SPI frequency of the device in Hz.
+
+ reg:
+ maxItems: 1
+
+ '#address-cells':
+ const: 1
+
+ '#size-cells':
+ const: 0
+
+ interrupts:
+ maxItems: 1
+
+required:
+ - compatible
+ - reg
+ - spi-max-frequency
+
+patternProperties:
+ '^reset-controller@[a-f0-9]+$':
+ $ref: ../reset/amd,pensando-elbasr-reset.yaml
+
+additionalProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/reset/amd,pensando-elba-reset.h>
+ #include <dt-bindings/interrupt-controller/arm-gic.h>
+
+ spi0 {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ num-cs = <4>;
+
+ spi@0 {
+ compatible = "amd,pensando-elbasr", "simple-mfd";
+ reg = <0>;
+ #address-cells = <1>;
+ #size-cells = <0>;
+ spi-max-frequency = <12000000>;
+
+ rstc: reset-controller@0 {
+ compatible = "amd,pensando-elbasr-reset";
+ reg = <0>;
+ #reset-cells = <1>;
+ };
+ };
+
+ spi@1 {
+ compatible = "amd,pensando-elbasr", "simple-mfd";
+ reg = <1>;
+ spi-max-frequency = <12000000>;
+ };
+
+ spi@2 {
+ compatible = "amd,pensando-elbasr", "simple-mfd";
+ reg = <2>;
+ spi-max-frequency = <12000000>;
+ interrupt-parent = <&porta>;
+ interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
+ };
+
+ spi@3 {
+ compatible = "amd,pensando-elbasr", "simple-mfd";
+ reg = <3>;
+ spi-max-frequency = <12000000>;
+ };
+ };
+
+...
--
2.17.1