[U-Boot] [PATCH 00/22] x86: Add ACPI S3 resume support
Bin Meng
bmeng.cn at gmail.com
Thu Mar 16 14:26:26 UTC 2017
This adds ACPI S3 (suspend to ram) resume capability in U-Boot.
With S3 support within U-Boot, the board wakes up and resumes to
OS very quickly.
This so far is enabled and tested on Intel MinnowMax board. Please
check README.x86 for how to test it with a plain Linux kernel.
Note testing with Ubuntu or Windows has some issues and fixes are
still being worked out.
This series is available for testing in u-boot-x86/s3-working.
Bin Meng (22):
dm: rtc: Add 16-bit read/write support
x86: acpi: Add Kconfig option and header file for ACPI resume
x86: baytrail: acpi: Add APIs for determining/clearing sleep state
x86: Add post codes for OS resume
x86: fsp: acpi: Pass different boot mode to FSP init
x86: Store and display previous sleep state
x86: baytrail: Conditionally report S3 in the ACPI table
x86: fsp: Mark memory used by U-Boot as reserved in the E820 table for
S3
x86: acpi: Add wake up assembly stub
x86: acpi: Add one API to find OS wakeup vector
x86: acpi: Resume OS if resume vector is found
x86: Add an early CMOS access library
x86: fsp: Save stack address to CMOS for next S3 boot
x86: fsp: Mark the first 64K low memory as reserved
x86: Adjust board_final_cleanup() order
x86: apci: Change PM1_CNT register access to RMW
x86: acpi: Make enter_acpi_mode() public
x86: acpi: Refactor acpi_resume()
x86: acpi: Turn on ACPI mode for S3
x86: pci: Allow conditionally run VGA rom in S3
x86: minnowmax: Enable ACPI S3 resume
x86: Document ACPI S3 support
arch/x86/Kconfig | 32 ++++++
arch/x86/cpu/Makefile | 1 +
arch/x86/cpu/baytrail/acpi.c | 47 +++++++++
arch/x86/cpu/cpu.c | 26 ++++-
arch/x86/cpu/wakeup.S | 79 ++++++++++++++
arch/x86/include/asm/acpi_s3.h | 116 +++++++++++++++++++++
arch/x86/include/asm/acpi_table.h | 3 +
.../include/asm/arch-baytrail/acpi/sleepstates.asl | 2 +
arch/x86/include/asm/arch-baytrail/iomap.h | 24 +++++
arch/x86/include/asm/cmos_layout.h | 31 ++++++
arch/x86/include/asm/early_cmos.h | 43 ++++++++
arch/x86/include/asm/global_data.h | 3 +
arch/x86/include/asm/post.h | 2 +
arch/x86/include/asm/tables.h | 1 +
arch/x86/include/asm/u-boot-x86.h | 1 +
arch/x86/lib/Makefile | 2 +
arch/x86/lib/acpi_s3.c | 34 ++++++
arch/x86/lib/acpi_table.c | 84 ++++++++++++++-
arch/x86/lib/early_cmos.c | 51 +++++++++
arch/x86/lib/fsp/fsp_common.c | 55 +++++++++-
arch/x86/lib/fsp/fsp_dram.c | 24 +++++
configs/minnowmax_defconfig | 1 +
doc/README.x86 | 20 ++--
drivers/pci/pci_rom.c | 14 +++
drivers/rtc/rtc-uclass.c | 30 ++++++
include/rtc.h | 20 ++++
26 files changed, 735 insertions(+), 11 deletions(-)
create mode 100644 arch/x86/cpu/wakeup.S
create mode 100644 arch/x86/include/asm/acpi_s3.h
create mode 100644 arch/x86/include/asm/cmos_layout.h
create mode 100644 arch/x86/include/asm/early_cmos.h
create mode 100644 arch/x86/lib/acpi_s3.c
create mode 100644 arch/x86/lib/early_cmos.c
--
2.9.2
More information about the U-Boot
mailing list