devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
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 --]

  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).