Re: [PATCH] arm64: dts: exynoautov9: add syscon reboot/reboot_mode support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 20/05/2022 06:52, Chanho Park wrote:
> Reboot of exynosautov9 SoC can be handled by setting the bit(
> SWRESET_SYSTEM[1]) of SYSTEM_CONFIGURATION register(PMU + 0x3a00).
> syscon-reboot-mode can be used to indicate the reboot mode for
> bootloader. SYSIP_DAT0 register(PMU + 0x810) will not be cleared after
> reboot so bootloader can enter the boot mode according to the value.
> 
> Signed-off-by: Chanho Park <chanho61.park@xxxxxxxxxxx>
> ---
>  arch/arm64/boot/dts/exynos/exynosautov9.dtsi | 16 ++++++++++++++++
>  1 file changed, 16 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/exynos/exynosautov9.dtsi b/arch/arm64/boot/dts/exynos/exynosautov9.dtsi
> index 0ce46ec5cdc3..d99e53406ee0 100644
> --- a/arch/arm64/boot/dts/exynos/exynosautov9.dtsi
> +++ b/arch/arm64/boot/dts/exynos/exynosautov9.dtsi
> @@ -312,6 +312,22 @@ pinctrl_peric1: pinctrl@10830000 {
>  		pmu_system_controller: system-controller@10460000 {
>  			compatible = "samsung,exynos7-pmu", "syscon";
>  			reg = <0x10460000 0x10000>;
> +
> +			reboot: syscon-reboot {
> +				compatible = "syscon-reboot";
> +				regmap = <&pmu_system_controller>;
> +				offset = <0x3a00>; /* SYSTEM_CONFIGURATION */
> +				value = <0x2>;
> +				mask = <0x2>;
> +			};
> +
> +			reboot_mode: syscon-reboot-mode {

Node name: just "reboot-mode"

> +				compatible = "syscon-reboot-mode";
> +				offset = <0x810>; /* SYSIP_DAT0 */
> +				mode-bootloader = <0xfc>;
> +				mode-fastboot = <0xfa>;
> +				mode-recovery = <0xff>;

These are magic values understood by firmware, so please add a header
for them (something like include/dt-bindings/soc/rockchip,boot-mode.h
but with some prefixes like EXYNOSAUTOV9_BOOT_FASTBOOT))

> +			};
>  		};
>  
>  		syscon_fsys2: syscon@17c20000 {


Best regards,
Krzysztof



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux