From: Andy Yan <andy.yan@rock-chips.com>
To: Rob Herring <robh@kernel.org>
Cc: john.stultz@linaro.org, "arnd@arndb.de;moritz.fischer"@ettus.com,
heiko@sntech.de, pawel.moll@arm.com, mark.rutland@arm.com,
ijc+devicetree@hellion.org.uk, galak@codeaurora.org,
devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
catalin.marinas@arm.com, olof@lixom.net,
alexandre.belloni@free-electrons.com, dbaryshkov@gmail.com,
sre@kernel.org, jun.nie@linaro.org, edubezval@gmail.com,
f.fainelli@gmail.com, will.deacon@arm.com,
linux-rockchip@lists.infradead.org, wxt@rock-chips.com,
matthias.bgg@gmail.com, linux@arm.linux.org.uk,
lorenzo.pieralisi@arm.com, moritz.fischer@ettus.com,
richard@nod.at, dwmw2@infradead.org, jwerner@google.com
Subject: Re: [PATCH v5 1/4] dt-bindings: power: reset: add document for reboot-mode driver
Date: Fri, 18 Mar 2016 16:19:42 +0800 [thread overview]
Message-ID: <56EBBA1E.2010709@rock-chips.com> (raw)
In-Reply-To: <20160317155212.GA19171@rob-hp-laptop>
[-- Attachment #1: Type: text/plain, Size: 4593 bytes --]
Hi Rob:
On 2016年03月17日 23:52, Rob Herring wrote:
> On Tue, Mar 08, 2016 at 08:23:05PM +0800, Andy Yan wrote:
>> add device tree bindings document for reboot-mode driver
>>
>> Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
>>
>> ---
>>
>> Changes in v5:
>> - delete a unnecessary blank line in syscon-reboot-mode.txt
>> - rename macro BOOT_LOADER to BOOT_BL_DOWNLOAD, which gives a more clear mean
>>
>> Changes in v4:
>> - remove mode-maskrom
>> - rename mode-fastboot to mode-bootloader to keep compatible with the exiting Android device
>>
>> Changes in v3:
>> - descirbe all reboot mode as properity instead of subnode
>>
>> Changes in v2: None
>> Changes in v1: None
>>
>> .../bindings/power/reset/reboot-mode.txt | 24 +++++++++++++++
>> .../bindings/power/reset/syscon-reboot-mode.txt | 34 ++++++++++++++++++++++
>> 2 files changed, 58 insertions(+)
>> create mode 100644 Documentation/devicetree/bindings/power/reset/reboot-mode.txt
>> create mode 100644 Documentation/devicetree/bindings/power/reset/syscon-reboot-mode.txt
>>
>> diff --git a/Documentation/devicetree/bindings/power/reset/reboot-mode.txt b/Documentation/devicetree/bindings/power/reset/reboot-mode.txt
>> new file mode 100644
>> index 0000000..3457949
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/power/reset/reboot-mode.txt
>> @@ -0,0 +1,24 @@
>> +Generic reboot mode core map driver
>> +
>> +This driver get reboot mode arguments and call the write
>> +interface to stores the magic value in special register
>> +or ram . Then the bootloader can read it and take different
>> +action according the argument stored.
>> +
>> +All mode properties are vendor specific, it is a indication to tell
>> +the bootloder what to do when the system reboot, and should be named
>> +as mode-xxx = <magic> (xxx is mode name).
>> +
>> +- mode-normal: Normal reboot mode, system reboot with command "reboot".
>> +- mode-recovery: Android Recovery mode, it is a mode to format the device or update a new image.
>> +- mode-bootloader: Android fastboot mode, it's a mode to re-flash partitions on the Android based device.
>> +- mode-loader: A bootloader mode, it's a mode used to download image on Rockchip platform,
>> + usually used in development.
>> +
>> +Example:
>> + reboot-mode {
>> + mode-normal = <BOOT_NORMAL>;
>> + mode-recovery = <BOOT_RECOVERY>;
>> + mode-bootloader = <BOOT_FASTBOOT>;
>> + mode-loader = <BOOT_BL_DOWNLOAD>;
>> + }
>> 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.
[0] https://lkml.org/lkml/2016/1/27/225
[1] drivers/soc/tegra/pmc.c (tegra_pmc_restart_notify)
>> +
>> +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>;
>> + };
>> + };
>> --
>> 1.9.1
>>
>>
>>
>
>
[-- Attachment #2: Type: text/html, Size: 5877 bytes --]
next prev parent reply other threads:[~2016-03-18 8:19 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-08 12:21 [PATCH v5 0/4] add reboot mode driver Andy Yan
[not found] ` <1457439716-8084-1-git-send-email-andy.yan-TNX95d0MmH7DzftRWevZcw@public.gmane.org>
2016-03-08 12:23 ` [PATCH v5 1/4] dt-bindings: power: reset: add document for reboot-mode driver Andy Yan
2016-03-17 15:52 ` Rob Herring
2016-03-18 8:19 ` Andy Yan [this message]
2016-03-18 8:43 ` Andy Yan
2016-03-18 9:07 ` Heiko Stübner
[not found] ` <56EBBFB1.6000808-TNX95d0MmH7DzftRWevZcw@public.gmane.org>
2016-03-18 13:14 ` Rob Herring
2016-03-08 12:25 ` [PATCH v5 3/4] ARM: dts: rockchip: add syscon-reboot-mode DT node Andy Yan
2016-03-08 12:26 ` [PATCH v5 4/4] ARM64: " Andy Yan
2016-03-08 12:24 ` [PATCH v5 2/4] power: reset: add reboot mode driver Andy Yan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=56EBBA1E.2010709@rock-chips.com \
--to=andy.yan@rock-chips.com \
--cc="arnd@arndb.de;moritz.fischer"@ettus.com \
--cc=alexandre.belloni@free-electrons.com \
--cc=catalin.marinas@arm.com \
--cc=dbaryshkov@gmail.com \
--cc=devicetree@vger.kernel.org \
--cc=dwmw2@infradead.org \
--cc=edubezval@gmail.com \
--cc=f.fainelli@gmail.com \
--cc=galak@codeaurora.org \
--cc=heiko@sntech.de \
--cc=ijc+devicetree@hellion.org.uk \
--cc=john.stultz@linaro.org \
--cc=jun.nie@linaro.org \
--cc=jwerner@google.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rockchip@lists.infradead.org \
--cc=linux@arm.linux.org.uk \
--cc=lorenzo.pieralisi@arm.com \
--cc=mark.rutland@arm.com \
--cc=matthias.bgg@gmail.com \
--cc=moritz.fischer@ettus.com \
--cc=olof@lixom.net \
--cc=pawel.moll@arm.com \
--cc=richard@nod.at \
--cc=robh@kernel.org \
--cc=sre@kernel.org \
--cc=will.deacon@arm.com \
--cc=wxt@rock-chips.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).