linux-stable/drivers/acpi/acpica
Kirill A. Shutemov dcedcbe177 ACPICA: Hardware: Do not flush CPU cache when entering S4 and S5
[ Upstream commit 1d4e0b3abb ]

ACPICA commit 3dd7e1f3996456ef81bfe14cba29860e8d42949e

According to ACPI 6.4, Section 16.2, the CPU cache flushing is
required on entering to S1, S2, and S3, but the ACPICA code
flushes the CPU cache regardless of the sleep state.

Blind cache flush on entering S5 causes problems for TDX.

Flushing happens with WBINVD that is not supported in the TDX
environment.

TDX only supports S5 and adjusting ACPICA code to conform to the
spec more strictly fixes the issue.

Link: https://github.com/acpica/acpica/commit/3dd7e1f3
Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
[ rjw: Subject and changelog edits ]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-01-27 11:04:50 +01:00
..
acapps.h ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
accommon.h ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
acconvert.h ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
acdebug.h ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
acdispat.h ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
acevents.h ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
acglobal.h ACPICA: Avoid evaluating methods too early during system resume 2021-11-18 19:16:14 +01:00
achware.h ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
acinterp.h ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
aclocal.h ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
acmacros.h ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
acnamesp.h ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
acobject.h ACPICA: Fix race in generic_serial_bus (I2C) and GPIO op_region parameter handling 2021-02-19 16:03:25 +01:00
acopcode.h ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
acparser.h ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
acpredef.h ACPICA: ACPI 6.4: add CXL ACPI device ID and _CBR object 2021-04-07 19:09:00 +02:00
acresrc.h ACPICA: ACPI 6.4: add CSI2Bus resource template 2021-04-07 19:09:01 +02:00
acstruct.h ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
actables.h ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
acutils.h ACPICA: Add support for PlatformRtMechanism OperationRegion handler 2021-06-07 14:04:43 +02:00
amlcode.h ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
amlresrc.h ACPICA: ACPI 6.4: add CSI2Bus resource template 2021-04-07 19:09:01 +02:00
dbcmds.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
dbconvert.c ACPICA: debugger: remove leading whitespaces when converting a string to a buffer 2019-10-28 22:12:46 +01:00
dbdisply.c ACPICA: iASL: add new OperationRegion subtype keyword PlatformRtMechanism 2020-06-05 13:34:23 +02:00
dbexec.c ACPICA: Debugger: Add a new command: "ALL <NameSeg>" 2020-10-08 18:03:55 +02:00
dbfileio.c ACPICA: make acpi_load_table() return table index 2019-10-28 22:12:46 +01:00
dbhistry.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
dbinput.c ACPICA: add type casts for string functions 2021-01-22 15:51:53 +01:00
dbmethod.c ACPICA: Debugger: Add a new command: "ALL <NameSeg>" 2020-10-08 18:03:55 +02:00
dbnames.c ACPICA: debugger: surround field unit output with braces '{' 2019-10-28 22:12:46 +01:00
dbobject.c ACPICA: Clean up exception code class checks 2021-01-18 16:01:10 +01:00
dbstats.c ACPICA: Fully deploy ACPI_PRINTF_LIKE macro 2019-08-21 00:00:37 +02:00
dbtest.c ACPICA: Debugger: Fix possible fault with the "test objects" command 2019-02-18 11:21:10 +01:00
dbutils.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
dbxface.c ACPICA: acpiexec: remove redeclaration of acpi_gbl_db_opt_no_region_support 2020-03-30 14:52:32 +02:00
dsargs.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
dscontrol.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
dsdebug.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
dsfield.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
dsinit.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
dsmethod.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
dsmthdat.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
dsobject.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
dsopcode.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
dspkginit.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
dsutils.c ACPICA: Remove defines that use deprecated flag 2018-12-13 22:40:51 +01:00
dswexec.c ACPICA: Fix an if statement (add parens) 2021-08-16 16:47:01 +02:00
dswload.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
dswload2.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
dswscope.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
dswstate.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
evevent.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
evglock.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
evgpe.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
evgpeblk.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
evgpeinit.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
evgpeutil.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
evhandler.c ACPICA: Fix race in generic_serial_bus (I2C) and GPIO op_region parameter handling 2021-02-19 16:03:25 +01:00
evmisc.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
evregion.c ACPICA: Remove some code duplication from acpi_ev_address_space_dispatch 2021-02-19 16:03:25 +01:00
evrgnini.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
evsci.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
evxface.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
evxfevnt.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
evxfgpe.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
evxfregn.c ACPICA: Fix race in generic_serial_bus (I2C) and GPIO op_region parameter handling 2021-02-19 16:03:25 +01:00
exconcat.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
exconfig.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
exconvrt.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
excreate.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
exdebug.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
exdump.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
exfield.c ACPICA: Fix wrong interpretation of PCC address 2022-01-27 11:04:50 +01:00
exfldio.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
exmisc.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
exmutex.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
exnames.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
exoparg1.c ACPICA: Executer: Fix the REFCLASS_REFOF case in acpi_ex_opcode_1A_0T_1R() 2022-01-27 11:04:50 +01:00
exoparg2.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
exoparg3.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
exoparg6.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
exprep.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
exregion.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
exresnte.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
exresolv.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
exresop.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
exserial.c ACPICA: Add support for PlatformRtMechanism OperationRegion handler 2021-06-07 14:04:43 +02:00
exstore.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
exstoren.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
exstorob.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
exsystem.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
extrace.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
exutils.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
hwacpi.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
hwesleep.c ACPICA: Hardware: Do not flush CPU cache when entering S4 and S5 2022-01-27 11:04:50 +01:00
hwgpe.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
hwpci.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
hwregs.c ACPICA: ACPICA: add status check for acpi_hw_read before assigning return value 2018-08-14 23:49:13 +02:00
hwsleep.c ACPICA: Hardware: Do not flush CPU cache when entering S4 and S5 2022-01-27 11:04:50 +01:00
hwtimer.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
hwvalid.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
hwxface.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
hwxfsleep.c ACPICA: Hardware: Do not flush CPU cache when entering S4 and S5 2022-01-27 11:04:50 +01:00
Makefile ACPICA: Remove PCI bits from ACPICA when CONFIG_PCI is unset 2018-12-20 10:19:49 +01:00
nsaccess.c ACPICA: Always create namespace nodes using acpi_ns_create_node() 2021-03-24 14:50:54 +01:00
nsalloc.c ACPICA: Remove unnecessary semicolon 2020-10-08 18:03:56 +02:00
nsarguments.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
nsconvert.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
nsdump.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
nsdumpdv.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
nseval.c ACPICA: remove legacy module-level code due to deprecation 2019-07-04 00:59:43 +02:00
nsinit.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
nsload.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
nsnames.c ACPICA: Fixes for acpiExec namespace init file 2020-03-30 14:52:33 +02:00
nsobject.c ACPICA: Namespace: remove address node from global list after method termination 2019-04-09 10:05:11 +02:00
nsparse.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
nspredef.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
nsprepkg.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
nsrepair.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
nsrepair2.c Revert "ACPICA: Fix memory leak caused by _CID repair function" 2021-08-03 18:14:44 +02:00
nssearch.c ACPICA: Revert "iASL: change processing of external op namespace nodes for correctness" 2018-07-09 11:14:45 +02:00
nsutils.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
nswalk.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
nsxfeval.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
nsxfname.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
nsxfobj.c ACPICA: Tree-wide: fix various typos and spelling mistakes 2020-10-08 18:03:55 +02:00
psargs.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
psloop.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
psobject.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
psopcode.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
psopinfo.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
psparse.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
psscope.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
pstree.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
psutils.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
pswalk.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
psxface.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
rsaddr.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
rscalc.c ACPICA: ACPI 6.4: add CSI2Bus resource template 2021-04-07 19:09:01 +02:00
rscreate.c ACPICA: More Clang changes 2019-10-28 22:12:46 +01:00
rsdump.c ACPICA: ACPI 6.4: add CSI2Bus resource template 2021-04-07 19:09:01 +02:00
rsdumpinfo.c ACPICA: ACPI 6.4: add CSI2Bus resource template 2021-04-07 19:09:01 +02:00
rsinfo.c ACPICA: ACPI 6.4: add CSI2Bus resource template 2021-04-07 19:09:01 +02:00
rsio.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
rsirq.c ACPI/ACPICA: Trivial: fix spelling mistakes and fix whitespace formatting 2019-02-24 21:12:01 +01:00
rslist.c ACPICA: ACPI 6.4: add CSI2Bus resource template 2021-04-07 19:09:01 +02:00
rsmemory.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
rsmisc.c ACPICA: ACPI 6.4: add CSI2Bus resource template 2021-04-07 19:09:01 +02:00
rsserial.c ACPICA: ACPI 6.4: add CSI2Bus resource template 2021-04-07 19:09:01 +02:00
rsutils.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
rsxface.c ACPICA: Rename nameseg compare macro for clarity 2019-04-09 10:08:28 +02:00
tbdata.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
tbfadt.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
tbfind.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
tbinstal.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
tbprint.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
tbutils.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
tbxface.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
tbxfload.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
tbxfroot.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
utaddress.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
utalloc.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
utascii.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
utbuffer.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
utcache.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
utcopy.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
utdebug.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
utdecode.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
utdelete.c ACPICA: Utilities: Avoid deleting the same object twice in a row 2022-01-27 11:04:50 +01:00
uterror.c ACPICA: Increase total number of possible Owner IDs 2019-08-21 00:00:36 +02:00
uteval.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
utexcep.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
utglobal.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
uthex.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
utids.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
utinit.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
utlock.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
utmath.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
utmisc.c ACPICA: Rename nameseg compare macro for clarity 2019-04-09 10:08:28 +02:00
utmutex.c ACPICA: Convert acpi_gbl_hardware lock back to an acpi_raw_spinlock 2018-05-10 17:18:45 +02:00
utnonansi.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
utobject.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
utosi.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
utownerid.c ACPICA: Increase total number of possible Owner IDs 2019-08-21 00:00:36 +02:00
utpredef.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
utprint.c ACPICA: Use ACPI_FALLTHROUGH 2021-06-07 14:04:43 +02:00
utresdecode.c ACPICA: ACPI 6.4: add CSI2Bus resource template 2021-04-07 19:09:01 +02:00
utresrc.c ACPICA: ACPI 6.4: add CSI2Bus resource template 2021-04-07 19:09:01 +02:00
utstate.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
utstring.c ACPICA: Rename nameseg length macro/define for clarity 2019-04-09 11:24:48 +02:00
utstrsuppt.c ACPICA: add type casts for string functions 2021-01-22 15:51:53 +01:00
utstrtoul64.c ACPICA: Utilities: split hex detection into smaller functions 2018-08-14 23:49:13 +02:00
uttrack.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
utuuid.c ACPICA: Add support for PlatformRtMechanism OperationRegion handler 2021-06-07 14:04:43 +02:00
utxface.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
utxferror.c ACPICA: Convert more ACPI errors to firmware errors 2019-01-15 18:04:02 +01:00
utxfinit.c ACPICA: Updated all copyrights to 2021 2021-01-22 15:51:53 +01:00
utxfmutex.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00