[PATCH v2 10/12] dt-bindings: memory-controllers: Add fsl,elbc-gpcm-uio

From: J. Neuschäfer via B4 Relay
Date: Fri Feb 07 2025 - 16:33:18 EST


From: "J. Neuschäfer" <j.ne@xxxxxxxxxx>

Formalize the binding already supported by the uio_fsl_elbc_gpcm.c
driver.

Signed-off-by: J. Neuschäfer <j.ne@xxxxxxxxxx>
---

V2:
- split out from fsl,elbc patch
- add description
- remove "device_type" property
- move to bindings/memory-controllers
---
.../memory-controllers/fsl,elbc-gpcm-uio.yaml | 59 ++++++++++++++++++++++
1 file changed, 59 insertions(+)

diff --git a/Documentation/devicetree/bindings/memory-controllers/fsl,elbc-gpcm-uio.yaml b/Documentation/devicetree/bindings/memory-controllers/fsl,elbc-gpcm-uio.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..381584b400a0ad98c6d9e0b38f2877d44603ed84
--- /dev/null
+++ b/Documentation/devicetree/bindings/memory-controllers/fsl,elbc-gpcm-uio.yaml
@@ -0,0 +1,59 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/memory-controllers/fsl,elbc-gpcm-uio.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Userspace I/O interface for Freescale eLBC devices
+
+description:
+ The Freescale Enhanced Local Bus controller (eLBC) supports flexible access
+ to memory devices, through the General-Purpose Chip-select Machine (GPCM).
+ The purpose of this binding is to designate devices attached to eLBC/GPMC for
+ use by userspace.
+
+maintainers:
+ - J. Neuschäfer <j.ne@xxxxxxxxxx>
+
+properties:
+ compatible:
+ const: fsl,elbc-gpcm-uio
+
+ reg:
+ maxItems: 1
+
+ elbc-gpcm-br:
+ description: Base Register (BR) value to set
+ $ref: /schemas/types.yaml#/definitions/uint32
+
+ elbc-gpcm-or:
+ description: Option Register (OR) value to set
+ $ref: /schemas/types.yaml#/definitions/uint32
+
+ interrupts:
+ maxItems: 1
+
+ uio_name:
+ $ref: /schemas/types.yaml#/definitions/string
+
+required:
+ - compatible
+ - reg
+ - elbc-gpcm-br
+ - elbc-gpcm-or
+
+additionalProperties: false
+
+examples:
+ - |
+ localbus {
+ #address-cells = <2>;
+ #size-cells = <1>;
+
+ simple-periph@2,0 {
+ compatible = "fsl,elbc-gpcm-uio";
+ reg = <0x2 0x0 0x10000>;
+ elbc-gpcm-br = <0xfd810800>;
+ elbc-gpcm-or = <0xffff09f7>;
+ };
+ };

--
2.48.0.rc1.219.gb6b6757d772