On 28.01.19 20:13, Simon Glass wrote: > Hi, > > On Mon, 28 Jan 2019 at 08:42, Alexander Graf <[email protected]> wrote: >> >> Our selftest will soon test the actual runtime reset function rather than >> the boot time one. For this, we need to ensure that the runtime version >> actually succeeds on x86 to keep our travis tests work. >> >> So this patch implements an x86 runtime reset function. It is missing >> shutdown functionality today, but OSs usually implement that via ACPI >> and this function does more than the stub from before, so it's at least >> an improvement. >> >> Signed-off-by: Alexander Graf <[email protected]> >> --- >> drivers/sysreset/sysreset_x86.c | 23 +++++++++++++++++++++++ >> 1 file changed, 23 insertions(+) >> >> diff --git a/drivers/sysreset/sysreset_x86.c >> b/drivers/sysreset/sysreset_x86.c >> index 20b958cfd4..efed45ccb7 100644 >> --- a/drivers/sysreset/sysreset_x86.c >> +++ b/drivers/sysreset/sysreset_x86.c >> @@ -10,6 +10,29 @@ >> #include <sysreset.h> >> #include <asm/io.h> >> #include <asm/processor.h> >> +#include <efi_loader.h> >> + >> +#ifdef CONFIG_EFI_LOADER >> +void __efi_runtime EFIAPI efi_reset_system( >> + enum efi_reset_type reset_type, >> + efi_status_t reset_status, >> + unsigned long data_size, void *reset_data) >> +{ >> + u32 value = 0; >> + >> + if (reset_type == EFI_RESET_COLD) >> + value = SYS_RST | RST_CPU | FULL_RST; >> + else if (reset_type == EFI_RESET_WARM) >> + value = SYS_RST | RST_CPU; > > The EFI should use the sysreset driver and sysreset_walk() or similar, > rather than having a function called directly.
It can't. At this point all of DM is long gone. We're in runtime space here. Alex _______________________________________________ U-Boot mailing list [email protected] https://lists.denx.de/listinfo/u-boot

