Re: [PATCH v4 1/9] dt-bindings: mfd: Add TI-Nspire misc registers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 11/2/22 12:35 PM, Rob Herring wrote:
On Tue, Nov 01, 2022 at 04:57:56PM -0500, Andrew Davis wrote:
The TI Nspire devices contain a set of registers with a seemingly
miscellaneous set of functionality. This area is known simply as the
"misc" region.

Signed-off-by: Andrew Davis <afd@xxxxxx>
---
  .../bindings/mfd/ti,nspire-misc.yaml          | 55 +++++++++++++++++++
  1 file changed, 55 insertions(+)
  create mode 100644 Documentation/devicetree/bindings/mfd/ti,nspire-misc.yaml

diff --git a/Documentation/devicetree/bindings/mfd/ti,nspire-misc.yaml b/Documentation/devicetree/bindings/mfd/ti,nspire-misc.yaml
new file mode 100644
index 0000000000000..d409eae7537bd
--- /dev/null
+++ b/Documentation/devicetree/bindings/mfd/ti,nspire-misc.yaml
@@ -0,0 +1,55 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+# Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/mfd/ti,nspire-misc.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: TI Nspire MISC hardware block
+
+maintainers:
+  - Andrew Davis <afd@xxxxxx>
+
+description: |
+  System controller node represents a register region containing a set
+  of miscellaneous registers. The registers are not cohesive enough to
+  represent as any specific type of device. The typical use-case is
+  for some other node's driver, or platform-specific code, to acquire
+  a reference to the syscon node (e.g. by phandle, node path, or
+  search using a specific compatible value), interrogate the node (or
+  associated OS driver) to determine the location of the registers,
+  and access the registers directly.

Looks like you copied the generic description? Describe what MISC
contains.


I don't know what all MISC contains (or maybe I do, but it is not
publicly available so I'm not going to add anything that hasn't
already been found by clean-room reverse engineering [0]).

This is the point I was trying to make in that thread on v3. The
node's content *is* the hardware description. Every time a new
register is found it could have just been added to the DT. But now
we also have to go back here and add the exact same information
to the binding, every time. We don't require that for simple-bus,
should simple-mfd be given the same flexibility?

[0] https://hackspire.org/index.php?title=Memory-mapped_I/O_ports_on_Classic#900A0000_-_Miscellaneous

+
+properties:
+  compatible:
+    items:
+      - enum:
+          - ti,nspire-misc
+      - const: syscon
+      - const: simple-mfd
+
+  reg:
+    maxItems: 1
+
+  reboot:
+    $ref: "../power/reset/syscon-reboot.yaml"

/schemas/power/...

And no quotes needed.


Will fix.

Andrew

+
+required:
+  - compatible
+  - reg
+  - reboot
+
+additionalProperties: false
+
+examples:
+  - |
+    misc: misc@900a0000 {
+      compatible = "ti,nspire-misc", "syscon", "simple-mfd";
+      reg = <0x900a0000 0x1000>;
+
+      reboot {
+        compatible = "syscon-reboot";
+        offset = <0x08>;
+        value = <0x02>;
+      };
+    };
--
2.37.3





[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux