Thread (10 messages) 10 messages, 3 authors, 2016-03-18

Re: [PATCH v5 1/4] dt-bindings: power: reset: add document for reboot-mode driver

From: Heiko Stübner <heiko@sntech.de>
Date: 2016-03-18 09:07:38
Also in: linux-rockchip, lkml

Hi Andy,

Am Freitag, 18. März 2016, 16:43:29 schrieb Andy Yan:
On 2016年03月17日 23:52, Rob Herring wrote:
quoted
On Tue, Mar 08, 2016 at 08:23:05PM +0800, Andy Yan wrote:
quoted
add device tree bindings document for reboot-mode driver

Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
[...]
quoted
quoted
diff --git
a/Documentation/devicetree/bindings/power/reset/syscon-reboot-mode.txt
b/Documentation/devicetree/bindings/power/reset/syscon-reboot-mode.txt
new file mode 100644
index 0000000..d03cb52
--- /dev/null
+++
b/Documentation/devicetree/bindings/power/reset/syscon-reboot-mode.txt
@@ -0,0 +1,34 @@
+SYSCON reboot mode driver
+
+This driver get reboot mode magic value form reboot-mode driver
+and stores it in a SYSCON mapped register. Then the bootloader
+can read it and take different action according to the magic
+value stored.
+
+This DT node should be represented as a sub-node of a "syscon",
"simple-mfd" +node.
+
+Required properties:
+- compatible: should be "syscon-reboot-mode"
+- offset: offset in the register map for the storage register (in bytes)
+
+Optional properity:
+- mask: the mask bits of the mode magic value, default set to 0xffffffff
if missing.> 
I can't see how this is used. I would drop it for now.

With that change:

Acked-by: Rob Herring <robh@kernel.org>
The mask is suggested by Moritz Fischer in V2[0]. And I found Tegra did
indeed only use some bits of one register to store the reboot mode[1].

@Heiko: It seems that this patch series can land now, but the dts parts
belong to  two different branch(arm32 and arm64) . And these
two parts both depends on one head file rockchip_boot-mode.h, So I hope
some suggestions from you how to deal with it.
as this is a new driver with completely new binding, the split should be easy.

Sebastian (sre@kernel.org) should take the driver + binding-txt parts and I 
can then simply queue up the 32 and 64 bit devicetree additions in my 
respective branches for 4.7.


Thanks for pushing that whole thing through, as it looks really nice now.
Heiko

    [0] https://lkml.org/lkml/2016/1/27/225
    [1] drivers/soc/tegra/pmc.c  (tegra_pmc_restart_notify)
quoted
quoted
+
+The rest of the properties should follow the generic reboot-mode
discription +found in reboot-mode.txt
+
+Example:
+	pmu: pmu@20004000 {
+		compatible = "rockchip,rk3066-pmu", "syscon", "simple-mfd";
+		reg = <0x20004000 0x100>;
+
+		reboot-mode {
+			compatible = "syscon-reboot-mode";
+			offset = <0x40>;
+			mode-normal = <BOOT_NORMAL>;
+			mode-recovery = <BOOT_RECOVERY>;
+			mode-bootloader = <BOOT_FASTBOOT>;
+			mode-loader = <BOOT_BL_DOWNLOAD>;
+		};
+	};
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help