Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1489094 > unrolled thread

[PATCH] ARM: dts: exynos: Add reboot reason support for Trats2

Started byWolfgang Wiedmeyer <wolfgit@wiedmeyer.de>
First post2016-09-22 19:00 +0200
Last post2016-09-22 23:00 +0200
Articles 4 — 2 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH] ARM: dts: exynos: Add reboot reason support for Trats2 Wolfgang Wiedmeyer <wolfgit@wiedmeyer.de> - 2016-09-22 19:00 +0200
    Re: [PATCH] ARM: dts: exynos: Add reboot reason support for Trats2 Krzysztof Kozlowski <krzk@kernel.org> - 2016-09-22 19:50 +0200
      Re: [PATCH] ARM: dts: exynos: Add reboot reason support for Trats2 Wolfgang Wiedmeyer <wolfgit@wiedmeyer.de> - 2016-09-22 21:00 +0200
        Re: [PATCH] ARM: dts: exynos: Add reboot reason support for Trats2 Krzysztof Kozlowski <krzk@kernel.org> - 2016-09-22 23:00 +0200

#1489094 — [PATCH] ARM: dts: exynos: Add reboot reason support for Trats2

FromWolfgang Wiedmeyer <wolfgit@wiedmeyer.de>
Date2016-09-22 19:00 +0200
Subject[PATCH] ARM: dts: exynos: Add reboot reason support for Trats2
Message-ID<skfvP-oP-15@gated-at.bofh.it>
This allows to reboot the device into recovery mode and into the download
mode of the bootloader.

Signed-off-by: Wolfgang Wiedmeyer <wolfgit@wiedmeyer.de>
---
 arch/arm/boot/dts/exynos4412-trats2.dts | 14 ++++++++++++++
 arch/arm/boot/dts/exynos4x12.dtsi       |  2 +-
 2 files changed, 15 insertions(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/exynos4412-trats2.dts b/arch/arm/boot/dts/exynos4412-trats2.dts
index 129e973..a38d1e3 100644
--- a/arch/arm/boot/dts/exynos4412-trats2.dts
+++ b/arch/arm/boot/dts/exynos4412-trats2.dts
@@ -1294,3 +1294,17 @@
 	vtmu-supply = <&ldo10_reg>;
 	status = "okay";
 };
+
+&pmu {
+	compatible = "syscon", "simple-mfd";
+
+	reboot-mode {
+		compatible = "syscon-reboot-mode";
+		offset = <0x80c>;
+
+		mode-normal	= <0x12345670>;
+		mode-bootloader	= <0x12345671>;
+		mode-download	= <0x12345671>;
+		mode-recovery	= <0x12345674>;
+	};
+};
diff --git a/arch/arm/boot/dts/exynos4x12.dtsi b/arch/arm/boot/dts/exynos4x12.dtsi
index c452499..b58c14e 100644
--- a/arch/arm/boot/dts/exynos4x12.dtsi
+++ b/arch/arm/boot/dts/exynos4x12.dtsi
@@ -179,7 +179,7 @@
 			ranges;
 			status = "disabled";
 
-			pmu@10020000 {
+			pmu: pmu@10020000 {
 				reg = <0x10020000 0x3000>;
 			};
 
-- 
Website: https://fossencdi.org
OpenPGP: 0F30 D1A0 2F73 F70A 6FEE  048E 5816 A24C 1075 7FC4
Key download: https://wiedmeyer.de/keys/ww.asc

[toc] | [next] | [standalone]


#1489173

FromKrzysztof Kozlowski <krzk@kernel.org>
Date2016-09-22 19:50 +0200
Message-ID<skgie-VW-47@gated-at.bofh.it>
In reply to#1489094
Hi,

Thanks for the patch, it is nice that someone did this! When I saw the
syscon reboot mode driver, I though about such feature but never had
time or will to implement it. Great job!

Few comments below.

On Thu, Sep 22, 2016 at 06:48:35PM +0200, Wolfgang Wiedmeyer wrote:
> This allows to reboot the device into recovery mode and into the download
> mode of the bootloader.

Which bootloader? Probably UBoot... or Samsung stock one? Could you put
that information here?

> 
> Signed-off-by: Wolfgang Wiedmeyer <wolfgit@wiedmeyer.de>
> ---
>  arch/arm/boot/dts/exynos4412-trats2.dts | 14 ++++++++++++++
>  arch/arm/boot/dts/exynos4x12.dtsi       |  2 +-
>  2 files changed, 15 insertions(+), 1 deletion(-)
> 
> diff --git a/arch/arm/boot/dts/exynos4412-trats2.dts b/arch/arm/boot/dts/exynos4412-trats2.dts
> index 129e973..a38d1e3 100644
> --- a/arch/arm/boot/dts/exynos4412-trats2.dts
> +++ b/arch/arm/boot/dts/exynos4412-trats2.dts
> @@ -1294,3 +1294,17 @@
>  	vtmu-supply = <&ldo10_reg>;
>  	status = "okay";
>  };
> +
> +&pmu {
> +	compatible = "syscon", "simple-mfd";
> +
> +	reboot-mode {
> +		compatible = "syscon-reboot-mode";
> +		offset = <0x80c>;
> +
> +		mode-normal	= <0x12345670>;
> +		mode-bootloader	= <0x12345671>;
> +		mode-download	= <0x12345671>;
> +		mode-recovery	= <0x12345674>;

Hmmm, how did you get these values? Are they already supported?

It would be nice to document them:
1. In Documentation/arm/Samsung/Bootloader-interface.txt
2. In header. I hate such magic numbers... you could add new header next
   to existing rockchip one:
   include/dt-bindings/soc/samsung,boot-mode.h
   (and update maintainers entry :) )


Best regards,
Krzysztof


> +	};
> +};
> diff --git a/arch/arm/boot/dts/exynos4x12.dtsi b/arch/arm/boot/dts/exynos4x12.dtsi
> index c452499..b58c14e 100644
> --- a/arch/arm/boot/dts/exynos4x12.dtsi
> +++ b/arch/arm/boot/dts/exynos4x12.dtsi
> @@ -179,7 +179,7 @@
>  			ranges;
>  			status = "disabled";
>  
> -			pmu@10020000 {
> +			pmu: pmu@10020000 {
>  				reg = <0x10020000 0x3000>;
>  			};
>  
> -- 
> Website: https://fossencdi.org
> OpenPGP: 0F30 D1A0 2F73 F70A 6FEE  048E 5816 A24C 1075 7FC4
> Key download: https://wiedmeyer.de/keys/ww.asc
> 

[toc] | [prev] | [next] | [standalone]


#1489419

FromWolfgang Wiedmeyer <wolfgit@wiedmeyer.de>
Date2016-09-22 21:00 +0200
Message-ID<skhnZ-1Bu-63@gated-at.bofh.it>
In reply to#1489173

[Multipart message — attachments visible in raw view] — view raw

Krzysztof Kozlowski writes:

> On Thu, Sep 22, 2016 at 06:48:35PM +0200, Wolfgang Wiedmeyer wrote:
>> This allows to reboot the device into recovery mode and into the download
>> mode of the bootloader.
>
> Which bootloader? Probably UBoot... or Samsung stock one? Could you put
> that information here?

I'm only working with the stock one. I was under the impression that the
stock bootloader cannot be replaced on a i9300 because there's a
signature check. Is UBoot loaded after the stock one on Trats2 or how
does this work? I didn't find information on that.

>> 
>> Signed-off-by: Wolfgang Wiedmeyer <wolfgit@wiedmeyer.de>
>> ---
>>  arch/arm/boot/dts/exynos4412-trats2.dts | 14 ++++++++++++++
>>  arch/arm/boot/dts/exynos4x12.dtsi       |  2 +-
>>  2 files changed, 15 insertions(+), 1 deletion(-)
>> 
>> diff --git a/arch/arm/boot/dts/exynos4412-trats2.dts b/arch/arm/boot/dts/exynos4412-trats2.dts
>> index 129e973..a38d1e3 100644
>> --- a/arch/arm/boot/dts/exynos4412-trats2.dts
>> +++ b/arch/arm/boot/dts/exynos4412-trats2.dts
>> @@ -1294,3 +1294,17 @@
>>  	vtmu-supply = <&ldo10_reg>;
>>  	status = "okay";
>>  };
>> +
>> +&pmu {
>> +	compatible = "syscon", "simple-mfd";
>> +
>> +	reboot-mode {
>> +		compatible = "syscon-reboot-mode";
>> +		offset = <0x80c>;
>> +
>> +		mode-normal	= <0x12345670>;
>> +		mode-bootloader	= <0x12345671>;
>> +		mode-download	= <0x12345671>;
>> +		mode-recovery	= <0x12345674>;
>
> Hmmm, how did you get these values? Are they already supported?

I only have the vendor source drop as documentation. The magic mode
values [1] and the offset [2] can be found there.

> It would be nice to document them:
> 1. In Documentation/arm/Samsung/Bootloader-interface.txt
> 2. In header. I hate such magic numbers... you could add new header next
>    to existing rockchip one:
>    include/dt-bindings/soc/samsung,boot-mode.h
>    (and update maintainers entry :) )

Thanks for the review! I will do the documentation and update the commit
message.

Best regards,
Wolfgang

[1] https://code.fossencdi.org/kernel_samsung_smdk4412.git/tree/arch/arm/mach-exynos/sec-reboot.c#n65

[2] https://code.fossencdi.org/kernel_samsung_smdk4412.git/tree/arch/arm/mach-exynos/include/mach/regs-pmu.h#n79


-- 
Website: https://fossencdi.org
Jabber: wolfgang@wiedmeyer.de
OpenPGP: 0F30 D1A0 2F73 F70A 6FEE  048E 5816 A24C 1075 7FC4
Key download: https://wiedmeyer.de/keys/ww.asc

[toc] | [prev] | [next] | [standalone]


#1489545

FromKrzysztof Kozlowski <krzk@kernel.org>
Date2016-09-22 23:00 +0200
Message-ID<skjg6-2JH-31@gated-at.bofh.it>
In reply to#1489419
On Thu, Sep 22, 2016 at 08:59:03PM +0200, Wolfgang Wiedmeyer wrote:
> 
> Krzysztof Kozlowski writes:
> 
> > On Thu, Sep 22, 2016 at 06:48:35PM +0200, Wolfgang Wiedmeyer wrote:
> >> This allows to reboot the device into recovery mode and into the download
> >> mode of the bootloader.
> >
> > Which bootloader? Probably UBoot... or Samsung stock one? Could you put
> > that information here?
> 
> I'm only working with the stock one. I was under the impression that the
> stock bootloader cannot be replaced on a i9300 because there's a
> signature check. Is UBoot loaded after the stock one on Trats2 or how
> does this work? I didn't find information on that.

+CC Marek,

Trats2 is working with U-Boot. Just U-Boot. However I never converted S3
into Trats2 on my own. I always used targets prepared to be "Trats2"
type. 

Of course kernel is independent to bootloader but in that case you want
to use a specific interface between kernel and specific bootloader
type/version. In that case - this should be U-Boot, I think.

> 
> >> 
> >> Signed-off-by: Wolfgang Wiedmeyer <wolfgit@wiedmeyer.de>
> >> ---
> >>  arch/arm/boot/dts/exynos4412-trats2.dts | 14 ++++++++++++++
> >>  arch/arm/boot/dts/exynos4x12.dtsi       |  2 +-
> >>  2 files changed, 15 insertions(+), 1 deletion(-)
> >> 
> >> diff --git a/arch/arm/boot/dts/exynos4412-trats2.dts b/arch/arm/boot/dts/exynos4412-trats2.dts
> >> index 129e973..a38d1e3 100644
> >> --- a/arch/arm/boot/dts/exynos4412-trats2.dts
> >> +++ b/arch/arm/boot/dts/exynos4412-trats2.dts
> >> @@ -1294,3 +1294,17 @@
> >>  	vtmu-supply = <&ldo10_reg>;
> >>  	status = "okay";
> >>  };
> >> +
> >> +&pmu {
> >> +	compatible = "syscon", "simple-mfd";
> >> +
> >> +	reboot-mode {
> >> +		compatible = "syscon-reboot-mode";
> >> +		offset = <0x80c>;
> >> +
> >> +		mode-normal	= <0x12345670>;
> >> +		mode-bootloader	= <0x12345671>;
> >> +		mode-download	= <0x12345671>;
> >> +		mode-recovery	= <0x12345674>;
> >
> > Hmmm, how did you get these values? Are they already supported?
> 
> I only have the vendor source drop as documentation. The magic mode
> values [1] and the offset [2] can be found there.

It would be useful to mention that in commit msg (just the source)...
however as I wrote above, these values should be for U-Boot, not the
stock one.

Best regards,
Krzysztof

> 
> > It would be nice to document them:
> > 1. In Documentation/arm/Samsung/Bootloader-interface.txt
> > 2. In header. I hate such magic numbers... you could add new header next
> >    to existing rockchip one:
> >    include/dt-bindings/soc/samsung,boot-mode.h
> >    (and update maintainers entry :) )
> 
> Thanks for the review! I will do the documentation and update the commit
> message.
> 
> Best regards,
> Wolfgang
> 
> [1] https://code.fossencdi.org/kernel_samsung_smdk4412.git/tree/arch/arm/mach-exynos/sec-reboot.c#n65
> 
> [2] https://code.fossencdi.org/kernel_samsung_smdk4412.git/tree/arch/arm/mach-exynos/include/mach/regs-pmu.h#n79
> 
> 
> -- 
> Website: https://fossencdi.org
> Jabber: wolfgang@wiedmeyer.de
> OpenPGP: 0F30 D1A0 2F73 F70A 6FEE  048E 5816 A24C 1075 7FC4
> Key download: https://wiedmeyer.de/keys/ww.asc

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web