Thread (54 messages) 54 messages, 8 authors, 2018-04-24

[PATCH v3 01/10] Documentations: dt-bindings: Add documents of generic PECI bus, adapter and client drivers

From: robh@kernel.org (Rob Herring)
Date: 2018-04-16 17:59:36
Also in: linux-devicetree, linux-doc, linux-hwmon, lkml, openbmc

On Tue, Apr 10, 2018 at 11:32:03AM -0700, Jae Hyun Yoo wrote:
This commit adds documents of generic PECI bus, adapter and client drivers.
"dt-bindings: ..." for the subject prefix please.
Signed-off-by: Jae Hyun Yoo <redacted>
Reviewed-by: Haiyue Wang <redacted>
Reviewed-by: James Feist <redacted>
Reviewed-by: Vernon Mauery <redacted>
Cc: Alan Cox <redacted>
Cc: Andrew Jeffery <redacted>
Cc: Andrew Lunn <andrew@lunn.ch>
Cc: Andy Shevchenko <redacted>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Fengguang Wu <redacted>
Cc: Greg KH <gregkh@linuxfoundation.org>
Cc: Guenter Roeck <linux@roeck-us.net>
Cc: Jason M Biils <redacted>
Cc: Jean Delvare <jdelvare@suse.com>
Cc: Joel Stanley <joel@jms.id.au>
Cc: Julia Cartwright <redacted>
Cc: Miguel Ojeda <redacted>
Cc: Milton Miller II <redacted>
Cc: Pavel Machek <redacted>
Cc: Randy Dunlap <redacted>
Cc: Stef van Os <redacted>
Cc: Sumeet R Pawnikar <redacted>
---
 .../devicetree/bindings/peci/peci-adapter.txt      | 23 ++++++++++++++++++++
 .../devicetree/bindings/peci/peci-bus.txt          | 15 +++++++++++++
 .../devicetree/bindings/peci/peci-client.txt       | 25 ++++++++++++++++++++++
This should be all one document.
quoted hunk ↗ jump to hunk
 3 files changed, 63 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/peci/peci-adapter.txt
 create mode 100644 Documentation/devicetree/bindings/peci/peci-bus.txt
 create mode 100644 Documentation/devicetree/bindings/peci/peci-client.txt
diff --git a/Documentation/devicetree/bindings/peci/peci-adapter.txt b/Documentation/devicetree/bindings/peci/peci-adapter.txt
new file mode 100644
index 000000000000..9221374f6b11
--- /dev/null
+++ b/Documentation/devicetree/bindings/peci/peci-adapter.txt
@@ -0,0 +1,23 @@
+Generic device tree configuration for PECI adapters.
+
+Required properties:
+- compatible     : Should contain hardware specific definition strings that can
+		   match an adapter driver implementation.
+- reg            : Should contain PECI controller registers location and length.
No need for these 2 here.
+- #address-cells : Should be <1>.
+- #size-cells    : Should be <0>.
Some details on the addressing for PECI would be good.
+
+Example:
+	peci: peci at 10000000 {
+		compatible = "simple-bus";
+		#address-cells = <1>;
+		#size-cells = <1>;
+		ranges = <0x0 0x10000000 0x1000>;
+
This part of the example is not relevant. Just start with the adapter 
node.
quoted hunk ↗ jump to hunk
+		peci0: peci-bus at 0 {
+			compatible = "soc,soc-peci";
+			reg = <0x0 0x1000>;
+			#address-cells = <1>;
+			#size-cells = <0>;
+		};
+	};
diff --git a/Documentation/devicetree/bindings/peci/peci-bus.txt b/Documentation/devicetree/bindings/peci/peci-bus.txt
new file mode 100644
index 000000000000..90bcc791ccb0
--- /dev/null
+++ b/Documentation/devicetree/bindings/peci/peci-bus.txt
@@ -0,0 +1,15 @@
+Generic device tree configuration for PECI buses.
+
+Required properties:
+- compatible     : Should be "simple-bus".
I don't understand what this has to do with PECI? "simple-bus" already 
has a defined meaning.
quoted hunk ↗ jump to hunk
+- #address-cells : Should be <1>.
+- #size-cells    : Should be <1>.
+- ranges         : Should contain PECI controller registers ranges.
+
+Example:
+	peci: peci at 10000000 {
+		compatible = "simple-bus";
+		#address-cells = <1>;
+		#size-cells = <1>;
+		ranges = <0x0 0x10000000 0x1000>;
+	};
diff --git a/Documentation/devicetree/bindings/peci/peci-client.txt b/Documentation/devicetree/bindings/peci/peci-client.txt
new file mode 100644
index 000000000000..8e2bfd8532f6
--- /dev/null
+++ b/Documentation/devicetree/bindings/peci/peci-client.txt
@@ -0,0 +1,25 @@
+Generic device tree configuration for PECI clients.
+
+Required properties:
+- compatible : Should contain target device specific definition strings that can
+	       match a client driver implementation.
Bindings are for h/w, not client drivers.

How are PECI devices defined?
+- reg        : Should contain address of a client CPU. Address range of CPU
+	       clients is starting from 0x30 based on PECI specification.
+	       <0x30> .. <0x37> (depends on the PECI_OFFSET_MAX definition)
8 devices should be enough for anyone...

Where is PECI_OFFSET_MAX defined?
+
+Example:
+	peci-bus at 0 {
+		#address-cells = <1>;
+		#size-cells = <0>;
+		< more properties >
+
+		function at cpu0 {
Not a valid node name. "function at 30" is what it probably should be. For 
a new bus you can define unit-address format you like, but it must be 
based on the contents of reg. However, it doesn't look like you should 
create anything special here.
+			compatible = "device,function";
+			reg = <0x30>;
+		};
+
+		function at cpu1 {
+			compatible = "device,function";
+			reg = <0x31>;
+		};
+	};
-- 
2.16.2


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel at lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help