diff mbox

[RFC,3/4] arm64: dts: hikey: Add hikey support for syscon-reboot-mode

Message ID 1470697426-16426-3-git-send-email-john.stultz@linaro.org
State Superseded
Headers show

Commit Message

John Stultz Aug. 8, 2016, 11:03 p.m. UTC
Add support to hikey dts for the syscon-reboot-mode driver.

After trying an approach using a sram driver and node, a number
of issues cropped up which would make it so we would be
duplicating a lot of extra syscon infrastructure in order to
support mfds on sram. After talking with Bjorn, using the
syscon driver for this seems like an better choice.

Cc: Andy Yan <andy.yan@rock-chips.com>
Cc: Bjorn Andersson <bjorn.andersson@linaro.org>
Cc: Haojian Zhuang <haojian.zhuang@linaro.org>
Cc: Guodong Xu <guodong.xu@linaro.org>
Cc: Wei Xu <xuwei5@hisilicon.com>
Cc: Rob Herring <robh+dt@kernel.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will.deacon@arm.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: devicetree@vger.kernel.org
Signed-off-by: John Stultz <john.stultz@linaro.org>

---
 arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts | 18 +++++++++++++++++-
 1 file changed, 17 insertions(+), 1 deletion(-)

-- 
1.9.1

Comments

Bjorn Andersson Aug. 12, 2016, 4:11 p.m. UTC | #1
On Fri 12 Aug 06:34 PDT 2016, Wei Xu wrote:

> Hi All,

> 

> On 10/08/2016 05:58, John Stultz wrote:

> > On Tue, Aug 9, 2016 at 9:34 PM, Bjorn Andersson

> > <bjorn.andersson@linaro.org> wrote:

> >> On Mon 08 Aug 16:03 PDT 2016, John Stultz wrote:

> >>

> >> [..]

> >>> diff --git a/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts b/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts

> >> [..]

> >>>       memory@0 {

> >>>               device_type = "memory";

> >>>               reg = <0x00000000 0x00000000 0x00000000 0x05e00000>,

> >>> -                   <0x00000000 0x05f00000 0x00000000 0x00eff000>,

> >>> +                   <0x00000000 0x05f00000 0x00000000 0x00001000>,

> >>> +                   <0x00000000 0x05f02000 0x00000000 0x00efd000>,

> >>>                     <0x00000000 0x06e00000 0x00000000 0x0060f000>,

> >>>                     <0x00000000 0x07410000 0x00000000 0x36bf0000>;

> >>>       };

> >>

> >> As I said when talked about this, I don't think you should punch holes

> >> in the /memory node, but rather add these regions as no-map in a

> >> /reserved-memory node. But that's a unrelated matter.

> > 

> > Yea. I need to sync w/ Wei and Guodong to see about reworking all of

> > those to use /reserved-memory, but for now I'd like to stay in sync w/

> > how they have it setup.

> > 

> 

> Both are fine to me.

> I remember before we had a discussion [1].

> How about we add these functions this time and clean the memory node

> in the future if needed?

> 

> [1] http://patches.linaro.org/patch/54682/


I agree, you should not hold up John's addition on changing to
reserve-memory, as these are unrelated changes..

But I would recommend that you take the time to do the switch to
/reserve-memory before next change to /memory comes in, as that change
will be just as unrelated.

Regards,
Bjorn
diff mbox

Patch

diff --git a/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts b/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts
index 8597e9b..b2683e4 100644
--- a/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts
+++ b/arch/arm64/boot/dts/hisilicon/hi6220-hikey.dts
@@ -29,6 +29,7 @@ 
 	 * Reserve below regions from memory node:
 	 *
 	 *  0x05e0,0000 - 0x05ef,ffff: MCU firmware runtime using
+	 *  0x05f0,1000 - 0x05f0,1fff: Reboot reason
 	 *  0x06df,f000 - 0x06df,ffff: Mailbox message data
 	 *  0x0740,f000 - 0x0740,ffff: MCU firmware section
 	 *  0x3e00,0000 - 0x3fff,ffff: OP-TEE
@@ -36,11 +37,26 @@ 
 	memory@0 {
 		device_type = "memory";
 		reg = <0x00000000 0x00000000 0x00000000 0x05e00000>,
-		      <0x00000000 0x05f00000 0x00000000 0x00eff000>,
+		      <0x00000000 0x05f00000 0x00000000 0x00001000>,
+		      <0x00000000 0x05f02000 0x00000000 0x00efd000>,
 		      <0x00000000 0x06e00000 0x00000000 0x0060f000>,
 		      <0x00000000 0x07410000 0x00000000 0x36bf0000>;
 	};
 
+	reboot-mode-syscon@5f01000 {
+		compatible = "syscon", "simple-mfd";
+		reg = <0x0 0x05f01000 0x0 0x00001000>;
+
+		reboot-mode@0 {
+			compatible = "syscon-reboot-mode";
+			offset = <0x0>;
+
+			mode-normal	= <0x77665501>;
+			mode-bootloader	= <0x77665500>;
+			mode-recovery	= <0x77665502>;
+		};
+	};
+
 	soc {
 		spi0: spi@f7106000 {
 			status = "ok";