[U-Boot] [PATCH 0/2] ARM: support System Reset via PSCI

Lukasz Majewski
2017-04-10T09:16:47Z

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="windows-1254", Size: 3065 bytes --]

Hi Masahiro,

>
> For ARMv8, the secure firmware (ex. ARM Trusted Firmware BL31) is
> often implemented, making U-Boot a non-secure world boot loader.
>
> The secure firmware generally includes PSCI. The power management
> operations, including System Reset, are supposed to be handled by
> PSCI. In this case, U-Boot should not touch the system reset
> directly. Instead, U-Boot should call PSCI service to reset the
> system.
>
> In order to implement this, arm-smccc code is needed. The code
> has been copied from Linux. (1/2)
>
> 2/2 implements a generic sysreset driver based on the PSCI
> specification.

I'm just wondering if it would be possible to:

1. Provide the exact Linux files (with SHA1) from main line

2. On top of this patch add u-boot adjustments

3. Add u-boot specific support for PSCI

In this way we would have exact info about the source of porting (or
was it ported exactly from v4.11-rc6 tag?)

Best regards,
Łukasz Majewski

>
>
>
> Masahiro Yamada (2):
> ARM: import arm-smccc from Linux 4.11-rc6
> sysreset: psci: support system reset in a generic way with PSCI
>
> arch/arm/Kconfig | 9 ++
> arch/arm/cpu/armv7/Makefile | 1 +
> arch/arm/cpu/armv7/smccc-call.S | 56 +++++++++
> arch/arm/cpu/armv8/Makefile | 2 +
> arch/arm/cpu/armv8/smccc-call.S | 44 +++++++
> arch/arm/include/asm/opcodes-sec.h | 17 +++
> arch/arm/include/asm/opcodes-virt.h | 27 +++++
> arch/arm/include/asm/opcodes.h | 229
> ++++++++++++++++++++++++++++++++++++
> arch/arm/lib/asm-offsets.c | 8 ++
> drivers/Kconfig | 2 +
> drivers/Makefile | 5 +-
> drivers/firmware/Kconfig | 6 +
> drivers/firmware/Makefile | 2 +
> drivers/firmware/firmware-uclass.c | 11 ++
> drivers/firmware/psci.c | 94 +++++++++++++++
> drivers/sysreset/Kconfig | 11 ++
> drivers/sysreset/Makefile | 1 +
> drivers/sysreset/sysreset_psci.c | 41 +++++++
> include/dm/uclass-id.h | 1 +
> include/linux/arm-smccc.h | 126 ++++++++++++++++++++
> include/linux/psci.h | 13 ++ 21 files changed, 704
> insertions(+), 2 deletions(-) create mode 100644
> arch/arm/cpu/armv7/smccc-call.S create mode 100644
> arch/arm/cpu/armv8/smccc-call.S create mode 100644
> arch/arm/include/asm/opcodes-sec.h create mode 100644
> arch/arm/include/asm/opcodes-virt.h create mode 100644
> arch/arm/include/asm/opcodes.h create mode 100644
> drivers/firmware/Kconfig create mode 100644 drivers/firmware/Makefile
> create mode 100644 drivers/firmware/firmware-uclass.c
> create mode 100644 drivers/firmware/psci.c
> create mode 100644 drivers/sysreset/sysreset_psci.c
> create mode 100644 include/linux/arm-smccc.h
>

Best regards,

Lukasz Majewski

--

DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de