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>; + }; + };