linux-hardened/drivers/acpi/acpica
Erik Schmauss aa6ec56b57 ACPICA: ACPI 6.3: add PCC operation region support for AML interpreter
ACPICA commit a4849944e80f97970e99843f4975850753584a4e

This change adds PCC operation region support in the AML interpreter
and a default handler for acpiexec. According to the specification,
the PCC operation region performs a transaction when the COMD field
is written. This allows ASL to write data to other fields before
sending the data.

In order to accommodate this protocol, a temorary buffer is added
to the regionfield object to accumulate writes. If any offset that
spans COMD is written, the temporary buffer is sent to the PCC
operation region handler to be processed.

This change also renames the PCC keyword to platform_comm_channel.

Link: https://github.com/acpica/acpica/commit/a4849944
Reviewed-by: Kyle Pelton <kyle.d.pelton@intel.com>
Signed-off-by: Erik Schmauss <erik.schmauss@intel.com>
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
2019-02-24 21:11:20 +01:00
..
acapps.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
accommon.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
acconvert.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
acdebug.h ACPICA: Debugger: Fix possible fault with the "test objects" command 2019-02-18 11:21:10 +01:00
acdispat.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
acevents.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
acglobal.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
achware.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
acinterp.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
aclocal.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
acmacros.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
acnamesp.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
acobject.h ACPICA: ACPI 6.3: add PCC operation region support for AML interpreter 2019-02-24 21:11:20 +01:00
acopcode.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
acparser.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
acpredef.h ACPICA: ACPI 6.3: Adding predefined methods _NBS, _NCH, _NIC, _NIH, and _NIG 2019-02-18 11:21:11 +01:00
acresrc.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
acstruct.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
actables.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
acutils.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
amlcode.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
amlresrc.h ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
dbcmds.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
dbconvert.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
dbdisply.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
dbexec.c ACPICA: Update/clarify messages for control method failures 2019-02-18 11:21:10 +01:00
dbfileio.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
dbhistry.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
dbinput.c ACPICA: Debugger: Cleanup interface to the AML disassembler 2018-08-14 23:49:13 +02:00
dbmethod.c ACPICA: Debugger: Cleanup interface to the AML disassembler 2018-08-14 23:49:13 +02:00
dbnames.c ACPICA: Debugger: Add count of namespace nodes after namespace dump 2018-06-06 08:53:42 +02:00
dbobject.c ACPICA: Debugger: Reduce verbosity for module-level code errors. 2018-06-06 08:53:42 +02:00
dbstats.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01: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: Debugger: refactor to fix unused variable warning 2018-11-08 18:41:47 +01:00
dsargs.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
dscontrol.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
dsdebug.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
dsfield.c ACPICA: ACPI 6.3: add PCC operation region support for AML interpreter 2019-02-24 21:11:20 +01:00
dsinit.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
dsmethod.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
dsmthdat.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
dsobject.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
dsopcode.c ACPICA: Interpreter: Emit warning for creation of a zero-length op region 2019-02-18 11:21:10 +01:00
dspkginit.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
dsutils.c ACPICA: Remove defines that use deprecated flag 2018-12-13 22:40:51 +01:00
dswexec.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
dswload.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
dswload2.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
dswscope.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
dswstate.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
evevent.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
evglock.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
evgpe.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
evgpeblk.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
evgpeinit.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
evgpeutil.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
evhandler.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
evmisc.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
evregion.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
evrgnini.c ACPICA: Remove legacy module-level code support 2019-02-18 11:21:10 +01:00
evsci.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
evxface.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
evxfevnt.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
evxfgpe.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
evxfregn.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exconcat.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exconfig.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exconvrt.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
excreate.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exdebug.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exdump.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exfield.c ACPICA: ACPI 6.3: add PCC operation region support for AML interpreter 2019-02-24 21:11:20 +01:00
exfldio.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exmisc.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exmutex.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exnames.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exoparg1.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exoparg2.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exoparg3.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exoparg6.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exprep.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exregion.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exresnte.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exresolv.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exresop.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exserial.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exstore.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exstoren.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exstorob.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exsystem.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
extrace.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
exutils.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
hwacpi.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
hwesleep.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
hwgpe.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +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: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
hwtimer.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
hwvalid.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
hwxface.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
hwxfsleep.c ACPICA: Get rid of acpi_sleep_dispatch() 2019-02-07 12:21:33 +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: iASL: Enhance error detection 2018-11-08 18:41:47 +01:00
nsalloc.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
nsarguments.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
nsconvert.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
nsdump.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
nsdumpdv.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
nseval.c ACPICA: Debug output: Add option to display method/object evaluation 2018-12-13 22:40:51 +01:00
nsinit.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
nsload.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
nsnames.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
nsobject.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
nsparse.c ACPICA: Remove legacy module-level code support 2019-02-18 11:21:10 +01:00
nspredef.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
nsprepkg.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
nsrepair.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
nsrepair2.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01: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: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
nswalk.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
nsxfeval.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
nsxfname.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
nsxfobj.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
psargs.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
psloop.c ACPICA: Remove legacy module-level code support 2019-02-18 11:21:10 +01:00
psobject.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
psopcode.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
psopinfo.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
psparse.c ACPICA: Update/clarify messages for control method failures 2019-02-18 11:21:10 +01:00
psscope.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
pstree.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
psutils.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
pswalk.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
psxface.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
rsaddr.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
rscalc.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
rscreate.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
rsdump.c ACPICA: Fix potential infinite loop in acpi_rs_dump_byte_list 2018-05-15 10:16:10 +02:00
rsdumpinfo.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
rsinfo.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
rsio.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
rsirq.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
rslist.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
rsmemory.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
rsmisc.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
rsserial.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
rsutils.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
rsxface.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
tbdata.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
tbfadt.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
tbfind.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
tbinstal.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
tbprint.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
tbutils.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
tbxface.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
tbxfload.c ACPICA: Remove legacy module-level code support 2019-02-18 11:21:10 +01:00
tbxfroot.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utaddress.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utalloc.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utascii.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utbuffer.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utcache.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utcopy.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utdebug.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utdecode.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utdelete.c ACPICA: ACPI 6.3: add PCC operation region support for AML interpreter 2019-02-24 21:11:20 +01:00
uterror.c ACPICA: Update/clarify messages for control method failures 2019-02-18 11:21:10 +01:00
uteval.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utexcep.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
utglobal.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
uthex.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utids.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utinit.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utlock.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utmath.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
utmisc.c ACPICA: disassembler: disassemble OEMx tables as AML 2018-12-13 22:40:51 +01: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: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utosi.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utownerid.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
utpredef.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utprint.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utresdecode.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
utresrc.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
utstate.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00
utstring.c ACPICA: Improve error messages for the namespace root node 2018-05-15 10:16:10 +02:00
utstrsuppt.c ACPICA: Utilities: split hex detection into smaller functions 2018-08-14 23:49:13 +02:00
utstrtoul64.c ACPICA: Utilities: split hex detection into smaller functions 2018-08-14 23:49:13 +02:00
uttrack.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utuuid.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utxface.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utxferror.c ACPICA: Convert more ACPI errors to firmware errors 2019-01-15 18:04:02 +01:00
utxfinit.c ACPICA: All acpica: Update copyrights to 2019 2019-01-15 18:04:02 +01:00
utxfmutex.c ACPICA: adding SPDX headers 2018-03-18 19:08:05 +01:00