aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJung-uk Kim <jkim@FreeBSD.org>2022-03-31 22:06:25 +0000
committerJung-uk Kim <jkim@FreeBSD.org>2022-03-31 22:06:25 +0000
commitca1c95cc699a25d891e62ef863c8268c93b35cf8 (patch)
tree8c79c367e505963d6b4aeb8b61e56c51869dc9a3
parentc509b6ab0d7e5bafc5348b08653b8738bd40716e (diff)
downloadsrc-ca1c95cc699a25d891e62ef863c8268c93b35cf8.tar.gz
src-ca1c95cc699a25d891e62ef863c8268c93b35cf8.zip
Import ACPICA 20220331vendor/acpica/20220331
-rw-r--r--changes.txt126
-rw-r--r--source/common/acfileio.c13
-rw-r--r--source/common/acgetline.c2
-rw-r--r--source/common/adfile.c2
-rw-r--r--source/common/adisasm.c2
-rw-r--r--source/common/adwalk.c2
-rw-r--r--source/common/ahids.c2
-rw-r--r--source/common/ahpredef.c2
-rw-r--r--source/common/ahtable.c5
-rw-r--r--source/common/ahuuids.c2
-rw-r--r--source/common/cmfsize.c2
-rw-r--r--source/common/dmextern.c2
-rw-r--r--source/common/dmrestag.c2
-rw-r--r--source/common/dmswitch.c2
-rw-r--r--source/common/dmtable.c179
-rw-r--r--source/common/dmtables.c2
-rw-r--r--source/common/dmtbdump.c72
-rw-r--r--source/common/dmtbdump1.c116
-rw-r--r--source/common/dmtbdump2.c330
-rw-r--r--source/common/dmtbdump3.c2
-rw-r--r--source/common/dmtbinfo.c8
-rw-r--r--source/common/dmtbinfo1.c33
-rw-r--r--source/common/dmtbinfo2.c134
-rw-r--r--source/common/dmtbinfo3.c16
-rw-r--r--source/common/getopt.c2
-rw-r--r--source/compiler/aslallocate.c2
-rw-r--r--source/compiler/aslanalyze.c2
-rw-r--r--source/compiler/aslascii.c2
-rw-r--r--source/compiler/aslbtypes.c2
-rw-r--r--source/compiler/aslcache.c7
-rw-r--r--source/compiler/aslcodegen.c2
-rw-r--r--source/compiler/aslcompile.c5
-rw-r--r--source/compiler/aslcompiler.h2
-rw-r--r--source/compiler/aslcompiler.l2
-rw-r--r--source/compiler/aslcstyle.y2
-rw-r--r--source/compiler/asldebug.c2
-rw-r--r--source/compiler/asldefine.h2
-rw-r--r--source/compiler/aslerror.c5
-rw-r--r--source/compiler/aslexternal.c2
-rw-r--r--source/compiler/aslfileio.c2
-rw-r--r--source/compiler/aslfiles.c6
-rw-r--r--source/compiler/aslfold.c2
-rw-r--r--source/compiler/aslglobal.h2
-rw-r--r--source/compiler/aslhelp.c2
-rw-r--r--source/compiler/aslhelpers.y2
-rw-r--r--source/compiler/aslhex.c2
-rw-r--r--source/compiler/aslkeywords.y2
-rw-r--r--source/compiler/asllength.c2
-rw-r--r--source/compiler/asllisting.c2
-rw-r--r--source/compiler/asllistsup.c2
-rw-r--r--source/compiler/aslload.c2
-rw-r--r--source/compiler/asllookup.c2
-rw-r--r--source/compiler/aslmain.c4
-rw-r--r--source/compiler/aslmap.c6
-rw-r--r--source/compiler/aslmapenter.c2
-rw-r--r--source/compiler/aslmapoutput.c2
-rw-r--r--source/compiler/aslmaputils.c2
-rw-r--r--source/compiler/aslmessages.c7
-rw-r--r--source/compiler/aslmessages.h4
-rw-r--r--source/compiler/aslmethod.c2
-rw-r--r--source/compiler/aslnamesp.c2
-rw-r--r--source/compiler/asloffset.c2
-rw-r--r--source/compiler/aslopcodes.c2
-rw-r--r--source/compiler/asloperands.c8
-rw-r--r--source/compiler/aslopt.c2
-rw-r--r--source/compiler/asloptions.c2
-rw-r--r--source/compiler/aslparseop.c2
-rw-r--r--source/compiler/aslparser.y2
-rw-r--r--source/compiler/aslpld.c2
-rw-r--r--source/compiler/aslpredef.c2
-rw-r--r--source/compiler/aslprepkg.c2
-rw-r--r--source/compiler/aslprimaries.y4
-rw-r--r--source/compiler/aslprintf.c2
-rw-r--r--source/compiler/aslprune.c2
-rw-r--r--source/compiler/aslresource.c2
-rw-r--r--source/compiler/aslresources.y2
-rw-r--r--source/compiler/aslrestype1.c2
-rw-r--r--source/compiler/aslrestype1i.c2
-rw-r--r--source/compiler/aslrestype2.c2
-rw-r--r--source/compiler/aslrestype2d.c2
-rw-r--r--source/compiler/aslrestype2e.c2
-rw-r--r--source/compiler/aslrestype2q.c2
-rw-r--r--source/compiler/aslrestype2s.c2
-rw-r--r--source/compiler/aslrestype2w.c2
-rw-r--r--source/compiler/aslrules.y8
-rw-r--r--source/compiler/aslstartup.c25
-rw-r--r--source/compiler/aslstubs.c2
-rw-r--r--source/compiler/aslsupport.l2
-rw-r--r--source/compiler/aslsupport.y2
-rw-r--r--source/compiler/asltokens.y2
-rw-r--r--source/compiler/asltransform.c2
-rw-r--r--source/compiler/asltree.c2
-rw-r--r--source/compiler/asltypes.h2
-rw-r--r--source/compiler/asltypes.y4
-rw-r--r--source/compiler/aslutils.c2
-rw-r--r--source/compiler/asluuid.c3
-rw-r--r--source/compiler/aslwalks.c2
-rw-r--r--source/compiler/aslxref.c2
-rw-r--r--source/compiler/aslxrefout.c2
-rw-r--r--source/compiler/cvcompiler.c2
-rw-r--r--source/compiler/cvdisasm.c2
-rw-r--r--source/compiler/cvparser.c2
-rw-r--r--source/compiler/dtcompile.c2
-rw-r--r--source/compiler/dtcompiler.h10
-rw-r--r--source/compiler/dtcompilerparser.l2
-rw-r--r--source/compiler/dtcompilerparser.y2
-rw-r--r--source/compiler/dtexpress.c2
-rw-r--r--source/compiler/dtfield.c8
-rw-r--r--source/compiler/dtio.c2
-rw-r--r--source/compiler/dtparser.l2
-rw-r--r--source/compiler/dtparser.y2
-rw-r--r--source/compiler/dtsubtable.c2
-rw-r--r--source/compiler/dttable.c61
-rw-r--r--source/compiler/dttable1.c179
-rw-r--r--source/compiler/dttable2.c404
-rw-r--r--source/compiler/dttemplate.c2
-rw-r--r--source/compiler/dttemplate.h205
-rw-r--r--source/compiler/dtutils.c15
-rw-r--r--source/compiler/preprocess.h2
-rw-r--r--source/compiler/prexpress.c2
-rw-r--r--source/compiler/prmacros.c2
-rw-r--r--source/compiler/prparser.l2
-rw-r--r--source/compiler/prparser.y2
-rw-r--r--source/compiler/prscan.c2
-rw-r--r--source/compiler/prutils.c2
-rw-r--r--source/components/debugger/dbcmds.c2
-rw-r--r--source/components/debugger/dbconvert.c2
-rw-r--r--source/components/debugger/dbdisply.c2
-rw-r--r--source/components/debugger/dbexec.c2
-rw-r--r--source/components/debugger/dbfileio.c2
-rw-r--r--source/components/debugger/dbhistry.c2
-rw-r--r--source/components/debugger/dbinput.c2
-rw-r--r--source/components/debugger/dbmethod.c2
-rw-r--r--source/components/debugger/dbnames.c2
-rw-r--r--source/components/debugger/dbobject.c2
-rw-r--r--source/components/debugger/dbstats.c2
-rw-r--r--source/components/debugger/dbtest.c2
-rw-r--r--source/components/debugger/dbutils.c2
-rw-r--r--source/components/debugger/dbxface.c2
-rw-r--r--source/components/disassembler/dmbuffer.c2
-rw-r--r--source/components/disassembler/dmcstyle.c2
-rw-r--r--source/components/disassembler/dmdeferred.c2
-rw-r--r--source/components/disassembler/dmnames.c2
-rw-r--r--source/components/disassembler/dmopcode.c2
-rw-r--r--source/components/disassembler/dmresrc.c2
-rw-r--r--source/components/disassembler/dmresrcl.c2
-rw-r--r--source/components/disassembler/dmresrcl2.c2
-rw-r--r--source/components/disassembler/dmresrcs.c2
-rw-r--r--source/components/disassembler/dmutils.c2
-rw-r--r--source/components/disassembler/dmwalk.c12
-rw-r--r--source/components/dispatcher/dsargs.c2
-rw-r--r--source/components/dispatcher/dscontrol.c2
-rw-r--r--source/components/dispatcher/dsdebug.c2
-rw-r--r--source/components/dispatcher/dsfield.c2
-rw-r--r--source/components/dispatcher/dsinit.c2
-rw-r--r--source/components/dispatcher/dsmethod.c2
-rw-r--r--source/components/dispatcher/dsmthdat.c2
-rw-r--r--source/components/dispatcher/dsobject.c2
-rw-r--r--source/components/dispatcher/dsopcode.c3
-rw-r--r--source/components/dispatcher/dspkginit.c2
-rw-r--r--source/components/dispatcher/dsutils.c2
-rw-r--r--source/components/dispatcher/dswexec.c4
-rw-r--r--source/components/dispatcher/dswload.c2
-rw-r--r--source/components/dispatcher/dswload2.c2
-rw-r--r--source/components/dispatcher/dswscope.c2
-rw-r--r--source/components/dispatcher/dswstate.c2
-rw-r--r--source/components/events/evevent.c2
-rw-r--r--source/components/events/evglock.c2
-rw-r--r--source/components/events/evgpe.c2
-rw-r--r--source/components/events/evgpeblk.c2
-rw-r--r--source/components/events/evgpeinit.c2
-rw-r--r--source/components/events/evgpeutil.c2
-rw-r--r--source/components/events/evhandler.c4
-rw-r--r--source/components/events/evmisc.c2
-rw-r--r--source/components/events/evregion.c11
-rw-r--r--source/components/events/evrgnini.c60
-rw-r--r--source/components/events/evsci.c2
-rw-r--r--source/components/events/evxface.c2
-rw-r--r--source/components/events/evxfevnt.c2
-rw-r--r--source/components/events/evxfgpe.c2
-rw-r--r--source/components/events/evxfregn.c2
-rw-r--r--source/components/executer/exconcat.c2
-rw-r--r--source/components/executer/exconfig.c63
-rw-r--r--source/components/executer/exconvrt.c2
-rw-r--r--source/components/executer/excreate.c3
-rw-r--r--source/components/executer/exdebug.c2
-rw-r--r--source/components/executer/exdump.c2
-rw-r--r--source/components/executer/exfield.c6
-rw-r--r--source/components/executer/exfldio.c4
-rw-r--r--source/components/executer/exmisc.c2
-rw-r--r--source/components/executer/exmutex.c2
-rw-r--r--source/components/executer/exnames.c2
-rw-r--r--source/components/executer/exoparg1.c24
-rw-r--r--source/components/executer/exoparg2.c2
-rw-r--r--source/components/executer/exoparg3.c2
-rw-r--r--source/components/executer/exoparg6.c2
-rw-r--r--source/components/executer/exprep.c2
-rw-r--r--source/components/executer/exregion.c16
-rw-r--r--source/components/executer/exresnte.c2
-rw-r--r--source/components/executer/exresolv.c2
-rw-r--r--source/components/executer/exresop.c2
-rw-r--r--source/components/executer/exserial.c2
-rw-r--r--source/components/executer/exstore.c2
-rw-r--r--source/components/executer/exstoren.c2
-rw-r--r--source/components/executer/exstorob.c2
-rw-r--r--source/components/executer/exsystem.c41
-rw-r--r--source/components/executer/extrace.c2
-rw-r--r--source/components/executer/exutils.c2
-rw-r--r--source/components/hardware/hwacpi.c2
-rw-r--r--source/components/hardware/hwesleep.c7
-rw-r--r--source/components/hardware/hwgpe.c2
-rw-r--r--source/components/hardware/hwpci.c2
-rw-r--r--source/components/hardware/hwregs.c4
-rw-r--r--source/components/hardware/hwsleep.c9
-rw-r--r--source/components/hardware/hwtimer.c2
-rw-r--r--source/components/hardware/hwvalid.c2
-rw-r--r--source/components/hardware/hwxface.c2
-rw-r--r--source/components/hardware/hwxfsleep.c4
-rw-r--r--source/components/namespace/nsaccess.c2
-rw-r--r--source/components/namespace/nsalloc.c2
-rw-r--r--source/components/namespace/nsarguments.c2
-rw-r--r--source/components/namespace/nsconvert.c2
-rw-r--r--source/components/namespace/nsdump.c2
-rw-r--r--source/components/namespace/nsdumpdv.c2
-rw-r--r--source/components/namespace/nseval.c2
-rw-r--r--source/components/namespace/nsinit.c2
-rw-r--r--source/components/namespace/nsload.c2
-rw-r--r--source/components/namespace/nsnames.c2
-rw-r--r--source/components/namespace/nsobject.c2
-rw-r--r--source/components/namespace/nsparse.c2
-rw-r--r--source/components/namespace/nspredef.c2
-rw-r--r--source/components/namespace/nsprepkg.c2
-rw-r--r--source/components/namespace/nsrepair.c2
-rw-r--r--source/components/namespace/nsrepair2.c2
-rw-r--r--source/components/namespace/nssearch.c2
-rw-r--r--source/components/namespace/nsutils.c2
-rw-r--r--source/components/namespace/nswalk.c6
-rw-r--r--source/components/namespace/nsxfeval.c2
-rw-r--r--source/components/namespace/nsxfname.c2
-rw-r--r--source/components/namespace/nsxfobj.c2
-rw-r--r--source/components/parser/psargs.c2
-rw-r--r--source/components/parser/psloop.c2
-rw-r--r--source/components/parser/psobject.c2
-rw-r--r--source/components/parser/psopcode.c4
-rw-r--r--source/components/parser/psopinfo.c2
-rw-r--r--source/components/parser/psparse.c2
-rw-r--r--source/components/parser/psscope.c2
-rw-r--r--source/components/parser/pstree.c2
-rw-r--r--source/components/parser/psutils.c2
-rw-r--r--source/components/parser/pswalk.c2
-rw-r--r--source/components/parser/psxface.c2
-rw-r--r--source/components/resources/rsaddr.c2
-rw-r--r--source/components/resources/rscalc.c2
-rw-r--r--source/components/resources/rscreate.c2
-rw-r--r--source/components/resources/rsdump.c2
-rw-r--r--source/components/resources/rsdumpinfo.c2
-rw-r--r--source/components/resources/rsinfo.c2
-rw-r--r--source/components/resources/rsio.c2
-rw-r--r--source/components/resources/rsirq.c2
-rw-r--r--source/components/resources/rslist.c2
-rw-r--r--source/components/resources/rsmemory.c2
-rw-r--r--source/components/resources/rsmisc.c2
-rw-r--r--source/components/resources/rsserial.c2
-rw-r--r--source/components/resources/rsutils.c2
-rw-r--r--source/components/resources/rsxface.c2
-rw-r--r--source/components/tables/tbdata.c87
-rw-r--r--source/components/tables/tbfadt.c8
-rw-r--r--source/components/tables/tbfind.c2
-rw-r--r--source/components/tables/tbinstal.c14
-rw-r--r--source/components/tables/tbprint.c5
-rw-r--r--source/components/tables/tbutils.c5
-rw-r--r--source/components/tables/tbxface.c2
-rw-r--r--source/components/tables/tbxfload.c59
-rw-r--r--source/components/tables/tbxfroot.c2
-rw-r--r--source/components/utilities/utaddress.c2
-rw-r--r--source/components/utilities/utalloc.c2
-rw-r--r--source/components/utilities/utascii.c2
-rw-r--r--source/components/utilities/utbuffer.c2
-rw-r--r--source/components/utilities/utcache.c2
-rw-r--r--source/components/utilities/utclib.c2
-rw-r--r--source/components/utilities/utcopy.c2
-rw-r--r--source/components/utilities/utdebug.c2
-rw-r--r--source/components/utilities/utdecode.c2
-rw-r--r--source/components/utilities/utdelete.c3
-rw-r--r--source/components/utilities/uterror.c2
-rw-r--r--source/components/utilities/uteval.c2
-rw-r--r--source/components/utilities/utexcep.c2
-rw-r--r--source/components/utilities/utglobal.c2
-rw-r--r--source/components/utilities/uthex.c2
-rw-r--r--source/components/utilities/utids.c2
-rw-r--r--source/components/utilities/utinit.c2
-rw-r--r--source/components/utilities/utlock.c2
-rw-r--r--source/components/utilities/utmath.c2
-rw-r--r--source/components/utilities/utmisc.c2
-rw-r--r--source/components/utilities/utmutex.c2
-rw-r--r--source/components/utilities/utnonansi.c2
-rw-r--r--source/components/utilities/utobject.c2
-rw-r--r--source/components/utilities/utosi.c3
-rw-r--r--source/components/utilities/utownerid.c2
-rw-r--r--source/components/utilities/utpredef.c2
-rw-r--r--source/components/utilities/utprint.c2
-rw-r--r--source/components/utilities/utresdecode.c2
-rw-r--r--source/components/utilities/utresrc.c2
-rw-r--r--source/components/utilities/utstate.c2
-rw-r--r--source/components/utilities/utstring.c2
-rw-r--r--source/components/utilities/utstrsuppt.c2
-rw-r--r--source/components/utilities/utstrtoul64.c2
-rw-r--r--source/components/utilities/uttrack.c2
-rw-r--r--source/components/utilities/utuuid.c2
-rw-r--r--source/components/utilities/utxface.c2
-rw-r--r--source/components/utilities/utxferror.c2
-rw-r--r--source/components/utilities/utxfinit.c2
-rw-r--r--source/components/utilities/utxfmutex.c2
-rw-r--r--source/include/acapps.h4
-rw-r--r--source/include/acbuffer.h2
-rw-r--r--source/include/acclib.h2
-rw-r--r--source/include/accommon.h2
-rw-r--r--source/include/acconfig.h2
-rw-r--r--source/include/acconvert.h2
-rw-r--r--source/include/acdebug.h2
-rw-r--r--source/include/acdisasm.h29
-rw-r--r--source/include/acdispat.h2
-rw-r--r--source/include/acevents.h9
-rw-r--r--source/include/acexcep.h2
-rw-r--r--source/include/acglobal.h2
-rw-r--r--source/include/achware.h2
-rw-r--r--source/include/acinterp.h2
-rw-r--r--source/include/aclocal.h2
-rw-r--r--source/include/acmacros.h2
-rw-r--r--source/include/acnames.h2
-rw-r--r--source/include/acnamesp.h2
-rw-r--r--source/include/acobject.h3
-rw-r--r--source/include/acopcode.h2
-rw-r--r--source/include/acoutput.h2
-rw-r--r--source/include/acparser.h2
-rw-r--r--source/include/acpi.h2
-rw-r--r--source/include/acpiosxf.h2
-rw-r--r--source/include/acpixf.h12
-rw-r--r--source/include/acpredef.h2
-rw-r--r--source/include/acresrc.h2
-rw-r--r--source/include/acrestyp.h2
-rw-r--r--source/include/acstruct.h2
-rw-r--r--source/include/actables.h7
-rw-r--r--source/include/actbinfo.h19
-rw-r--r--source/include/actbl.h2
-rw-r--r--source/include/actbl1.h35
-rw-r--r--source/include/actbl2.h316
-rw-r--r--source/include/actbl3.h2
-rw-r--r--source/include/actypes.h33
-rw-r--r--source/include/acutils.h2
-rw-r--r--source/include/acuuid.h2
-rw-r--r--source/include/amlcode.h2
-rw-r--r--source/include/amlresrc.h2
-rw-r--r--source/include/platform/accygwin.h2
-rw-r--r--source/include/platform/acdragonflyex.h2
-rw-r--r--source/include/platform/acefi.h2
-rw-r--r--source/include/platform/acefiex.h2
-rw-r--r--source/include/platform/acenv.h2
-rw-r--r--source/include/platform/acenvex.h2
-rw-r--r--source/include/platform/acfreebsd.h2
-rw-r--r--source/include/platform/acgcc.h2
-rw-r--r--source/include/platform/acgccex.h2
-rw-r--r--source/include/platform/achaiku.h2
-rw-r--r--source/include/platform/acintel.h2
-rw-r--r--source/include/platform/aclinux.h7
-rw-r--r--source/include/platform/aclinuxex.h2
-rw-r--r--source/include/platform/acmacosx.h2
-rw-r--r--source/include/platform/acmsvc.h2
-rw-r--r--source/include/platform/acmsvcex.h2
-rw-r--r--source/include/platform/acnetbsd.h2
-rw-r--r--source/include/platform/acos2.h2
-rw-r--r--source/include/platform/acqnx.h2
-rw-r--r--source/include/platform/acwin.h2
-rw-r--r--source/include/platform/acwin64.h2
-rw-r--r--source/os_specific/service_layers/osbsdtbl.c2
-rw-r--r--source/os_specific/service_layers/oslinuxtbl.c2
-rw-r--r--source/os_specific/service_layers/osunixdir.c2
-rw-r--r--source/os_specific/service_layers/osunixmap.c2
-rw-r--r--source/os_specific/service_layers/osunixxf.c2
-rw-r--r--source/os_specific/service_layers/oswindir.c2
-rw-r--r--source/os_specific/service_layers/oswintbl.c2
-rw-r--r--source/os_specific/service_layers/oswinxf.c2
-rw-r--r--source/tools/acpibin/abcompare.c2
-rw-r--r--source/tools/acpibin/abmain.c2
-rw-r--r--source/tools/acpibin/acpibin.h2
-rw-r--r--source/tools/acpidump/acpidump.h2
-rw-r--r--source/tools/acpidump/apdump.c2
-rw-r--r--source/tools/acpidump/apfiles.c2
-rw-r--r--source/tools/acpidump/apmain.c2
-rw-r--r--source/tools/acpiexec/aecommon.h2
-rw-r--r--source/tools/acpiexec/aeexception.c6
-rw-r--r--source/tools/acpiexec/aeexec.c2
-rw-r--r--source/tools/acpiexec/aehandlers.c2
-rw-r--r--source/tools/acpiexec/aeinitfile.c2
-rw-r--r--source/tools/acpiexec/aeinstall.c2
-rw-r--r--source/tools/acpiexec/aemain.c2
-rw-r--r--source/tools/acpiexec/aeregion.c2
-rw-r--r--source/tools/acpiexec/aetables.c2
-rw-r--r--source/tools/acpiexec/aetables.h2
-rw-r--r--source/tools/acpiexec/aetests.c2
-rw-r--r--source/tools/acpihelp/acpihelp.h2
-rw-r--r--source/tools/acpihelp/ahaml.c2
-rw-r--r--source/tools/acpihelp/ahamlops.c2
-rw-r--r--source/tools/acpihelp/ahasl.c2
-rw-r--r--source/tools/acpihelp/ahaslkey.c2
-rw-r--r--source/tools/acpihelp/ahaslops.c2
-rw-r--r--source/tools/acpihelp/ahdecode.c2
-rw-r--r--source/tools/acpihelp/ahgrammar.c2
-rw-r--r--source/tools/acpihelp/ahmain.c2
-rw-r--r--source/tools/acpisrc/acpisrc.h2
-rw-r--r--source/tools/acpisrc/ascase.c2
-rw-r--r--source/tools/acpisrc/asconvrt.c4
-rw-r--r--source/tools/acpisrc/asfile.c2
-rw-r--r--source/tools/acpisrc/asmain.c2
-rw-r--r--source/tools/acpisrc/asremove.c2
-rw-r--r--source/tools/acpisrc/astable.c36
-rw-r--r--source/tools/acpisrc/asutils.c2
-rw-r--r--source/tools/acpixtract/acpixtract.c2
-rw-r--r--source/tools/acpixtract/acpixtract.h2
-rw-r--r--source/tools/acpixtract/axmain.c2
-rw-r--r--source/tools/acpixtract/axutils.c2
-rw-r--r--source/tools/efihello/efihello.c2
-rw-r--r--source/tools/examples/examples.c2
-rw-r--r--source/tools/examples/examples.h2
-rw-r--r--source/tools/examples/exstubs.c2
-rw-r--r--source/tools/examples/extables.c2
426 files changed, 2857 insertions, 848 deletions
diff --git a/changes.txt b/changes.txt
index ad2323971aea..cf3c21898c51 100644
--- a/changes.txt
+++ b/changes.txt
@@ -1,4 +1,130 @@
----------------------------------------
+31 March 2022. Summary of changes for version 20220331:
+
+0) Global changes:
+
+Update all copyright notices to the year 2022. This effects all source
+modules, as well as utility signons.
+
+
+1) ACPICA kernel-resident subsystem:
+
+For the ASL Sleep() operator, issue a warning if the sleep value is
+greater than 10 Milliseconds. Quick boottime is important, so warn about
+sleeps greater than 10 ms. Distribution Linux kernels reach initrd in 350
+ms, so excessive delays should be called out. 10 ms is chosen randomly,
+but three of such delays would already make up ten percent of the
+boottime.
+
+Namespace: Avoid attempting to walk the Namespace if the Namespace does
+not exist.
+
+AML interpreter/iASL compiler: Add new Acpi 6.4 semantics for the
+LoadTable and Load operators. DDB_HANDLE is gone, now loadtable returns a
+pass/fail integer. Now load returns a pass/fail integer, as well as
+storing the return value in an optional 2nd argument.
+
+Headers: Use uintptr_t and offsetof() in Linux kernel builds. To avoid
+"performing pointer subtraction with a null pointer has undefined
+behavior" compiler warnings, use uintptr_t and offsetof() that are always
+available during Linux kernel builds to define ACPI_UINTPTR_T and the
+ACPI_TO_INTEGER() and ACPI_OFFSET() macros when building the ACPICA code
+in the Linux kernel.
+
+Added support for the Windows 11 _OSI string ("Windows 2021"). Submitted
+by superm1.
+
+executer/exsystem: Inform users about ACPI spec violation for the Stall()
+operator. Values greater than 100 microseconds violate the ACPI
+specification, so warn users about it. From the ACPI Specification
+version 6.2 Errata A, 19.6.128 *Stall (Stall for a Short Time)*:
+> The implementation of Stall is OS-specific, but must not relinquish
+> control of the processor. Because of this, delays longer than 100
+> microseconds must use Sleep instead of Stall.
+
+
+2) iASL Compiler/Disassembler and ACPICA tools:
+
+Data Table Compiler/Disassembler: Add support for the APMT table - ARM
+Performance Monitoring Unit table. Submitted by @bwicaksononv.
+
+Data Table Compiler/Disassembler: For MADT, add support for the OEM-
+defined subtables (Types 0x80-0x7F).
+
+Data Table Compiler: Fixed a problem with support for the SDEV table,
+where a subtable Length was not computed correctly.
+
+Data Table Compiler/Disassembler: Add/fix the CFMWS subtable to the CEDT
+Acpi table support.
+
+Data Table Compiler/Disassembler: Fix a compile issue with the CEDT and
+add template. Submitted by MasterDrogo.
+
+Data Table Compiler/Disassembler: NHLT Changes provided by Piotr Maziarz:
+iASL/NHLT: Rename linux specific structures to DeviceInfo to improve
+readability of the code.
+iASL/NHLT: Fix parsing undocumented bytes at the end of Endpoint.
+Undocumented bytes at the end of Endpoint Descriptor can be present
+independently of Linux-specific structures. Their size can also vary.
+iASL/NHLT: Treat TableTerminator as SpecificConfig. SpecificConfig has 4
+bytes of size and then an amount of bytes specified by size. All of the
+terminators that I've seen had a size equal to 4, but theoretically it
+can vary.
+
+iASL/AcpiExec: Use _exit instead of exit in signal handers (ctrl-C).
+
+iASL: Remove a remark due to excessive output. Removed a remark for
+duplicate Offset() operators, due to a user complaint.
+
+----------------------------------------
+17 December 2021. Summary of changes for version 20211217:
+
+1) ACPICA kernel-resident subsystem:
+
+Hardware: Do not flush CPU cache when entering S4 and S5. 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.
+
+Avoid subobject buffer overflow when validating RSDP signature. Since the
+Signature member is accessed through an ACPI_TABLE_HEADER, the pointer to
+it is only to a 4-char array, and so trying to read past the 4th
+character, as will be done when it is an RSDP, reads beyond the bounds of
+the accessed member. Contributed by jrtc27.
+
+Add support for PCC Opregion special context data. PCC Opregion added in
+ACPIC 6.3 requires special context data similar to GPIO and Generic
+Serial Bus as it needs to know the internal PCC buffer and its length as
+well as the PCC channel index when the opregion handler is being executed
+by the OSPM. Adds support for the special context data needed by PCC
+Opregion. Submitted by Sudeep Holla <sudeep.holla@arm.com>
+
+2) iASL Compiler/Disassembler and ACPICA tools:
+
+iASL: Completed compiler support for the NHLT ACPI table.
+
+iASL/NHLT table: Fixed a reported problem where a fault would occur
+during disassembly of a "Linux-Specific" section if the "Specific Data"
+part was not present.
+
+iASL: Added full support (compiler and disassembler) for the AGDI ACPI
+table. Contributed by: Ilkka Koskinen <ilkka@os.amperecomputing.com>.
+
+iASL: Added full support for the TDEL ACPI table.
+
+iASL table compiler: FADT support updates:
+1) Allow the 32-bit DSDT address to be zero.
+2) Issue error if both the 32-bit and 64-bit DSDT addresses are zero.
+
+iASL: Fix unaligned accesses to local cache allocations. Contributed by
+jrtc27.
+
+iASL: Open binary input files in binary mode, not text mode Affects
+binary input AML files, as well as binary data table files, for
+disassembly.
+
+----------------------------------------
30 September 2021. Summary of changes for version 20210930:
This release is available at https://acpica.org/downloads
diff --git a/source/common/acfileio.c b/source/common/acfileio.c
index 99f8972985ec..7c624f5d3644 100644
--- a/source/common/acfileio.c
+++ b/source/common/acfileio.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -552,10 +552,15 @@ AcValidateTableHeader (
/* Read a potential table header */
OriginalOffset = ftell (File);
- fseek (File, TableOffset, SEEK_SET);
-
+ if (fseek (File, TableOffset, SEEK_SET))
+ {
+ fprintf (stderr, "SEEK error\n");
+ }
Actual = fread (&TableHeader, 1, sizeof (ACPI_TABLE_HEADER), File);
- fseek (File, OriginalOffset, SEEK_SET);
+ if (fseek (File, OriginalOffset, SEEK_SET))
+ {
+ fprintf (stderr, "SEEK error\n");
+ }
if (Actual < sizeof (ACPI_TABLE_HEADER))
{
diff --git a/source/common/acgetline.c b/source/common/acgetline.c
index 88479d619a64..e5d0bf560fae 100644
--- a/source/common/acgetline.c
+++ b/source/common/acgetline.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/common/adfile.c b/source/common/adfile.c
index db6bcabc1efa..647333d9d682 100644
--- a/source/common/adfile.c
+++ b/source/common/adfile.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/common/adisasm.c b/source/common/adisasm.c
index f549bd5aa3ea..ecb984858388 100644
--- a/source/common/adisasm.c
+++ b/source/common/adisasm.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/common/adwalk.c b/source/common/adwalk.c
index c4d149e3d4d6..6d51c7e17748 100644
--- a/source/common/adwalk.c
+++ b/source/common/adwalk.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/common/ahids.c b/source/common/ahids.c
index b58bc082054a..05c31bf50fd0 100644
--- a/source/common/ahids.c
+++ b/source/common/ahids.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/common/ahpredef.c b/source/common/ahpredef.c
index d92417d16ca4..724abe6a33d0 100644
--- a/source/common/ahpredef.c
+++ b/source/common/ahpredef.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/common/ahtable.c b/source/common/ahtable.c
index d7ce88a973f2..bff8ae79080b 100644
--- a/source/common/ahtable.c
+++ b/source/common/ahtable.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -200,6 +200,7 @@ AcpiAhGetTableInfo (
const AH_TABLE AcpiGbl_SupportedTables[] =
{
{ACPI_SIG_AEST, "Arm Error Source Table"},
+ {ACPI_SIG_AGDI, "Arm Generic Diagnostic Dump and Reset Device Interface Table"},
{ACPI_SIG_ASF, "Alert Standard Format Table"},
{ACPI_SIG_BDAT, "BIOS Data ACPI Table"},
{ACPI_SIG_BERT, "Boot Error Record Table"},
@@ -233,6 +234,7 @@ const AH_TABLE AcpiGbl_SupportedTables[] =
{ACPI_SIG_MSCT, "Maximum System Characteristics Table"},
{ACPI_SIG_MSDM, "Microsoft Data Management Table"},
{ACPI_SIG_NFIT, "NVDIMM Firmware Interface Table"},
+ {ACPI_SIG_NHLT, "Non HD Audio Link Table"},
{ACPI_SIG_PCCT, "Platform Communications Channel Table"},
{ACPI_SIG_PDTT, "Platform Debug Trigger Table"},
{ACPI_SIG_PHAT, "Platform Health Assessment Table"},
@@ -256,6 +258,7 @@ const AH_TABLE AcpiGbl_SupportedTables[] =
{ACPI_SIG_STAO, "Status Override Table"},
{ACPI_SIG_SVKL, "Storage Volume Key Location Table"},
{ACPI_SIG_TCPA, "Trusted Computing Platform Alliance Table"},
+ {ACPI_SIG_TDEL, "TD-Event Log Table"},
{ACPI_SIG_TPM2, "Trusted Platform Module hardware interface Table"},
{ACPI_SIG_UEFI, "UEFI Boot Optimization Table"},
{ACPI_SIG_VIOT, "Virtual I/O Translation Table"},
diff --git a/source/common/ahuuids.c b/source/common/ahuuids.c
index eef1c5688cfd..909698c572a9 100644
--- a/source/common/ahuuids.c
+++ b/source/common/ahuuids.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/common/cmfsize.c b/source/common/cmfsize.c
index 38ec915a989d..474ccd9501f8 100644
--- a/source/common/cmfsize.c
+++ b/source/common/cmfsize.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/common/dmextern.c b/source/common/dmextern.c
index 36d586008cb6..806daa33f94b 100644
--- a/source/common/dmextern.c
+++ b/source/common/dmextern.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/common/dmrestag.c b/source/common/dmrestag.c
index 59d5c4f4faeb..b677298436fc 100644
--- a/source/common/dmrestag.c
+++ b/source/common/dmrestag.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/common/dmswitch.c b/source/common/dmswitch.c
index 2b894c65dcd5..4a4347368c9e 100644
--- a/source/common/dmswitch.c
+++ b/source/common/dmswitch.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/common/dmtable.c b/source/common/dmtable.c
index dff1c6139cd7..440c5fb409fd 100644
--- a/source/common/dmtable.c
+++ b/source/common/dmtable.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -167,10 +167,11 @@ AcpiAhGetTableInfo (
/* Common format strings for commented values */
-#define UINT8_FORMAT "%2.2X [%s]\n"
-#define UINT16_FORMAT "%4.4X [%s]\n"
-#define UINT32_FORMAT "%8.8X [%s]\n"
-#define STRING_FORMAT "[%s]\n"
+#define UINT8_FORMAT "%2.2X [%s]\n"
+#define UINT8_FORMAT_NO_NEWLINE "%2.2X [%s]"
+#define UINT16_FORMAT "%4.4X [%s]\n"
+#define UINT32_FORMAT "%8.8X [%s]\n"
+#define STRING_FORMAT "[%s]\n"
/* These tables map a subtable type to a description string */
@@ -247,6 +248,7 @@ static const char *AcpiDmDmarSubnames[] =
"Root Port ATS Capability",
"Remapping Hardware Static Affinity",
"ACPI Namespace Device Declaration",
+ "SoC Integrated Address Translation Cache",
"Unknown Subtable Type" /* Reserved */
};
@@ -401,7 +403,8 @@ static const char *AcpiDmMadtSubnames[] =
"Generic Interrupt Redistributor", /* ACPI_MADT_GENERIC_REDISTRIBUTOR */
"Generic Interrupt Translator", /* ACPI_MADT_GENERIC_TRANSLATOR */
"Mutiprocessor Wakeup", /* ACPI_MADT_TYPE_MULTIPROC_WAKEUP */
- "Unknown Subtable Type" /* Reserved */
+ "Unknown Subtable Type", /* Reserved */
+ "Types 80-FF are used for OEM data" /* Reserved for OEM data */
};
static const char *AcpiDmNfitSubnames[] =
@@ -437,6 +440,50 @@ static const char *AcpiDmNhltDirectionNames[] =
"Unknown Direction" /* Reserved */
};
+static const char *AcpiDmNhltMicTypeNames[] =
+{
+ "Omnidirectional", /* ACPI_NHLT_MIC_OMNIDIRECTIONAL */
+ "Subcardioid", /* ACPI_NHLT_MIC_SUBCARDIOID */
+ "Cardioid", /* ACPI_NHLT_MIC_CARDIOID */
+ "SuperCardioid", /* ACPI_NHLT_MIC_SUPER_CARDIOID */
+ "HyperCardioid", /* ACPI_NHLT_MIC_HYPER_CARDIOID */
+ "8 Shaped", /* ACPI_NHLT_MIC_8_SHAPED */
+ "Reserved Mic Type", /* Reserved */
+ "Vendor Defined", /* ACPI_NHLT_MIC_VENDOR_DEFINED */
+ "Unknown Mic Type" /* ACPI_NHLT_MIC_RESERVED */
+};
+
+static const char *AcpiDmNhltMicPositionNames[] =
+{
+ "Top", /* ACPI_NHLT_MIC_POSITION_TOP */
+ "Bottom", /* ACPI_NHLT_MIC_POSITION_BOTTOM */
+ "Left", /* ACPI_NHLT_MIC_POSITION_LEFT */
+ "Right", /* ACPI_NHLT_MIC_POSITION_RIGHT */
+ "Front", /* ACPI_NHLT_MIC_POSITION_FRONT */
+ "Back", /* ACPI_NHLT_MIC_POSITION_BACK */
+ "Unknown Mic Position" /* 6 and above are reserved */
+};
+
+static const char *AcpiDmNhltMicArrayTypeNames[] =
+{
+ "Unknown Array Type", /* ACPI_NHLT_ARRAY_TYPE_RESERVED */
+ "Small Linear 2-element", /* ACPI_NHLT_SMALL_LINEAR_2ELEMENT */
+ "Big Linear 2-element", /* ACPI_NHLT_BIG_LINEAR_2ELEMENT */
+ "Linear 4-element 1st Geometry", /* ACPI_NHLT_FIRST_GEOMETRY_LINEAR_4ELEMENT */
+ "Planar L-shaped 4-element", /* ACPI_NHLT_PLANAR_LSHAPED_4ELEMENT */
+ "Linear 4-element 2nd Geometry", /* ACPI_NHLT_SECOND_GEOMETRY_LINEAR_4ELEMENT */
+ "Vendor Defined" /* ACPI_NHLT_VENDOR_DEFINED */
+};
+
+static const char *AcpiDmNhltConfigTypeNames[] =
+{
+ "Generic Type", /* ACPI_NHLT_CONFIG_TYPE_GENERIC */
+ "Microphone Array", /* ACPI_NHLT_CONFIG_TYPE_MIC_ARRAY */
+ "Reserved", /* ACPI_NHLT_CONFIG_TYPE_RESERVED */
+ "Render Feedback", /* ACPI_NHLT_CONFIG_TYPE_RENDER_FEEDBACK */
+ "Unknown Config Type" /* ACPI_NHLT_CONFIG_TYPE_RESERVED */
+};
+
static const char *AcpiDmPcctSubnames[] =
{
"Generic Communications Subspace", /* ACPI_PCCT_TYPE_GENERIC_SUBSPACE */
@@ -604,6 +651,8 @@ static const char *AcpiDmGasAccessWidth[] =
const ACPI_DMTABLE_DATA AcpiDmTableData[] =
{
{ACPI_SIG_AEST, NULL, AcpiDmDumpAest, DtCompileAest, TemplateAest},
+ {ACPI_SIG_AGDI, AcpiDmTableInfoAgdi, NULL, NULL, TemplateAgdi},
+ {ACPI_SIG_APMT, NULL, AcpiDmDumpApmt, DtCompileApmt, TemplateApmt},
{ACPI_SIG_ASF, NULL, AcpiDmDumpAsf, DtCompileAsf, TemplateAsf},
{ACPI_SIG_BDAT, AcpiDmTableInfoBdat, NULL, NULL, TemplateBdat},
{ACPI_SIG_BERT, AcpiDmTableInfoBert, NULL, NULL, TemplateBert},
@@ -635,7 +684,7 @@ const ACPI_DMTABLE_DATA AcpiDmTableData[] =
{ACPI_SIG_MSCT, NULL, AcpiDmDumpMsct, DtCompileMsct, TemplateMsct},
{ACPI_SIG_MSDM, NULL, AcpiDmDumpSlic, DtCompileSlic, TemplateMsdm},
{ACPI_SIG_NFIT, AcpiDmTableInfoNfit, AcpiDmDumpNfit, DtCompileNfit, TemplateNfit},
- {ACPI_SIG_NHLT, AcpiDmTableInfoNhlt, AcpiDmDumpNhlt, NULL, NULL},
+ {ACPI_SIG_NHLT, AcpiDmTableInfoNhlt, AcpiDmDumpNhlt, DtCompileNhlt, TemplateNhlt},
{ACPI_SIG_PCCT, AcpiDmTableInfoPcct, AcpiDmDumpPcct, DtCompilePcct, TemplatePcct},
{ACPI_SIG_PDTT, AcpiDmTableInfoPdtt, AcpiDmDumpPdtt, DtCompilePdtt, TemplatePdtt},
{ACPI_SIG_PHAT, NULL, AcpiDmDumpPhat, DtCompilePhat, TemplatePhat},
@@ -657,6 +706,7 @@ const ACPI_DMTABLE_DATA AcpiDmTableData[] =
{ACPI_SIG_STAO, NULL, AcpiDmDumpStao, DtCompileStao, TemplateStao},
{ACPI_SIG_SVKL, AcpiDmTableInfoSvkl, AcpiDmDumpSvkl, DtCompileSvkl, TemplateSvkl},
{ACPI_SIG_TCPA, NULL, AcpiDmDumpTcpa, DtCompileTcpa, TemplateTcpa},
+ {ACPI_SIG_TDEL, AcpiDmTableInfoTdel, NULL, NULL, TemplateTdel},
{ACPI_SIG_TPM2, AcpiDmTableInfoTpm2, AcpiDmDumpTpm2, DtCompileTpm2, TemplateTpm2},
{ACPI_SIG_UEFI, AcpiDmTableInfoUefi, NULL, DtCompileUefi, TemplateUefi},
{ACPI_SIG_VIOT, AcpiDmTableInfoViot, AcpiDmDumpViot, DtCompileViot, TemplateViot},
@@ -795,7 +845,8 @@ AcpiDmDumpDataTable (
return;
}
}
- else if (ACPI_VALIDATE_RSDP_SIG (Table->Signature))
+ else if (ACPI_VALIDATE_RSDP_SIG (ACPI_CAST_PTR (ACPI_TABLE_RSDP,
+ Table)->Signature))
{
Length = AcpiDmDumpRsdp (Table);
}
@@ -1040,7 +1091,7 @@ AcpiDmDumpTable (
/* Check for beyond subtable end or (worse) beyond EOT */
- if (SubtableLength && (Info->Offset >= SubtableLength))
+ if (SubtableLength && (Info->Offset > SubtableLength))
{
AcpiOsPrintf (
"/**** ACPI subtable terminates early (Len %u) - "
@@ -1074,6 +1125,10 @@ AcpiDmDumpTable (
case ACPI_DMT_MADT:
case ACPI_DMT_NHLT1:
case ACPI_DMT_NHLT1a:
+ case ACPI_DMT_NHLT1b:
+ case ACPI_DMT_NHLT1c:
+ case ACPI_DMT_NHLT1d:
+ case ACPI_DMT_NHLT1f:
case ACPI_DMT_PCCT:
case ACPI_DMT_PMTT:
case ACPI_DMT_PPTT:
@@ -1102,6 +1157,7 @@ AcpiDmDumpTable (
case ACPI_DMT_HEST:
case ACPI_DMT_HMAT:
case ACPI_DMT_NFIT:
+ case ACPI_DMT_NHLT1e:
case ACPI_DMT_PHAT:
ByteLength = 2;
@@ -1308,7 +1364,12 @@ AcpiDmDumpTable (
AcpiOsPrintf ("%1.1X\n", (*Target >> 2) & 0x03);
break;
- case ACPI_DMT_FLAGS4:
+ case ACPI_DMT_FLAGS8_2:
+
+ AcpiOsPrintf ("%2.2X\n", (*Target >> 2) & 0xFF);
+ break;
+
+ case ACPI_DMT_FLAGS4:
AcpiOsPrintf ("%1.1X\n", (*Target >> 4) & 0x03);
break;
@@ -1797,11 +1858,14 @@ AcpiDmDumpTable (
/* MADT subtable types */
Temp8 = *Target;
- if (Temp8 > ACPI_MADT_TYPE_RESERVED)
+ if ((Temp8 >= ACPI_MADT_TYPE_RESERVED) && (Temp8 < ACPI_MADT_TYPE_OEM_RESERVED))
{
Temp8 = ACPI_MADT_TYPE_RESERVED;
}
-
+ else if (Temp8 >= ACPI_MADT_TYPE_OEM_RESERVED)
+ {
+ Temp8 = ACPI_MADT_TYPE_RESERVED + 1;
+ }
AcpiOsPrintf (UINT8_FORMAT, *Target,
AcpiDmMadtSubnames[Temp8]);
break;
@@ -1848,6 +1912,95 @@ AcpiDmDumpTable (
AcpiDmNhltDirectionNames[Temp8]);
break;
+ case ACPI_DMT_NHLT1b:
+
+ /* NHLT microphone type */
+
+ Temp8 = *Target;
+ if (Temp8 > ACPI_NHLT_MIC_RESERVED)
+ {
+ Temp8 = ACPI_NHLT_MIC_RESERVED;
+ }
+
+ AcpiOsPrintf (UINT8_FORMAT, *Target,
+ AcpiDmNhltMicTypeNames[Temp8]);
+ break;
+
+ case ACPI_DMT_NHLT1c:
+
+ /* NHLT microphone position */
+
+ Temp8 = *Target;
+ if (Temp8 > ACPI_NHLT_MIC_POSITION_RESERVED)
+ {
+ Temp8 = ACPI_NHLT_MIC_POSITION_RESERVED;
+ }
+
+ AcpiOsPrintf (UINT8_FORMAT, *Target,
+ AcpiDmNhltMicPositionNames[Temp8]);
+ break;
+
+ case ACPI_DMT_NHLT1d:
+
+ /* NHLT microphone array type */
+
+ Temp8 = *Target & ACPI_NHLT_ARRAY_TYPE_MASK;
+ if (Temp8 < ACPI_NHLT_ARRAY_TYPE_RESERVED)
+ {
+ Temp8 = ACPI_NHLT_ARRAY_TYPE_RESERVED;
+ }
+
+ AcpiOsPrintf (UINT8_FORMAT_NO_NEWLINE, *Target,
+ AcpiDmNhltMicArrayTypeNames[Temp8 - ACPI_NHLT_ARRAY_TYPE_RESERVED]);
+
+ Temp8 = *Target;
+ if (Temp8 & ACPI_NHLT_MIC_SNR_SENSITIVITY_EXT)
+ {
+ AcpiOsPrintf (" [%s]", "SNR and Sensitivity");
+ }
+
+ AcpiOsPrintf ("\n");
+ break;
+
+ case ACPI_DMT_NHLT1e:
+
+ /* NHLT Endpoint Device ID */
+
+ Temp16 = ACPI_GET16 (Target);
+ if (Temp16 == 0xAE20)
+ {
+ Name = "PDM DMIC";
+ }
+ else if (Temp16 == 0xAE30)
+ {
+ Name = "BT Sideband";
+ }
+ else if (Temp16 == 0xAE34)
+ {
+ Name = "I2S/TDM Codecs";
+ }
+ else
+ {
+ Name = "Unknown Device ID";
+ }
+
+ AcpiOsPrintf (UINT16_FORMAT, Temp16, Name);
+ break;
+
+ case ACPI_DMT_NHLT1f:
+
+ /* NHLT ConfigType field */
+
+ Temp8 = *Target;
+ if (Temp8 > ACPI_NHLT_CONFIG_TYPE_RESERVED)
+ {
+ Temp8 = ACPI_NHLT_CONFIG_TYPE_RESERVED;
+ }
+
+ AcpiOsPrintf (UINT8_FORMAT, *Target,
+ AcpiDmNhltConfigTypeNames[Temp8]);
+ break;
+
case ACPI_DMT_PCCT:
/* PCCT subtable types */
@@ -1929,7 +2082,7 @@ AcpiDmDumpTable (
break;
}
- AcpiDmDumpBuffer (Target, 0, ByteLength, 0, NULL);
+ AcpiDmDumpBuffer (Target, 0, ByteLength, CurrentOffset, NULL);
break;
case ACPI_DMT_RGRT:
diff --git a/source/common/dmtables.c b/source/common/dmtables.c
index fa04e0c88979..6f42bcb3bf66 100644
--- a/source/common/dmtables.c
+++ b/source/common/dmtables.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/common/dmtbdump.c b/source/common/dmtbdump.c
index abeb06fa5c38..b4faf68316ff 100644
--- a/source/common/dmtbdump.c
+++ b/source/common/dmtbdump.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -195,7 +195,9 @@ AcpiDmDumpBuffer (
char *Header)
{
UINT8 *Buffer;
+ UINT8 BufChar;
UINT32 i;
+ UINT32 j;
if (!Length)
@@ -208,20 +210,72 @@ AcpiDmDumpBuffer (
while (i < Length)
{
- if (!(i % 16))
+ if ((Length > 16) && (i != 0))
{
- /* Insert a backslash - line continuation character */
+ if ((Length - i) < 16)
+ AcpiOsPrintf ("\n/* %3.3Xh %4.4u %3u */ ", AbsoluteOffset, AbsoluteOffset, Length - i);
+ else
+ AcpiOsPrintf ("\n/* %3.3Xh %4.4u 16 */ ", AbsoluteOffset, AbsoluteOffset);
+ }
+ AbsoluteOffset += 16;
+
+ /* Emit the raw data bytes*/
- if (Length > 16)
+ for (j = 0; j < 16; j++)
+ {
+ if (i + j >= Length)
{
- AcpiOsPrintf ("\\\n ");
+ /* Dump fill spaces */
+
+ AcpiOsPrintf ("%*s", (48 - (3 * (Length -i))), " ");
+ break;
}
+ AcpiOsPrintf ("%.02X ", Buffer[(ACPI_SIZE) i + j]);
+ }
+
+ /* Emit the ASCII equivalent to the raw data bytes */
+
+ for (j = 0; j < 16; j++)
+ {
+ if (i + j >= Length)
+ {
+ AcpiOsPrintf (" */\\\n");
+ return;
+ }
+
+ /*
+ * Add comment characters so rest of line is ignored when
+ * compiled
+ */
+ if (j == 0)
+ {
+ AcpiOsPrintf ("/* ");
+ }
+
+ BufChar = Buffer[(ACPI_SIZE) i + j];
+ if (isprint (BufChar))
+ {
+ AcpiOsPrintf ("%c", BufChar);
+ }
+ else
+ {
+ AcpiOsPrintf (".");
+ }
+ }
+
+ /* Done with that line. */
+ /* Close the comment and insert a backslash - line continuation character */
+
+ if (Length > 16)
+ {
+ AcpiOsPrintf (" */\\");
+ }
+ else
+ {
+ AcpiOsPrintf (" */\\");
}
- AcpiOsPrintf ("%.02X ", *Buffer);
- i++;
- Buffer++;
- AbsoluteOffset++;
+ i += 16; /* Point to next line */
}
AcpiOsPrintf ("\n");
diff --git a/source/common/dmtbdump1.c b/source/common/dmtbdump1.c
index 3a97af4680f7..13662611e0a6 100644
--- a/source/common/dmtbdump1.c
+++ b/source/common/dmtbdump1.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -296,8 +296,6 @@ AcpiDmDumpAest (
case ACPI_AEST_GENERIC_RESOURCE:
InfoTable = AcpiDmTableInfoAestGenRsrc;
Length = sizeof (ACPI_AEST_PROCESSOR_GENERIC);
- AcpiOsPrintf ("Generic Resource Type (%X) is not supported at this time\n",
- ProcessorSubtable->ResourceType);
break;
/* Error case below */
@@ -378,6 +376,68 @@ AcpiDmDumpAest (
}
}
+/*******************************************************************************
+ *
+ * FUNCTION: AcpiDmDumpApmt
+ *
+ * PARAMETERS: Table - A APMT table
+ *
+ * RETURN: None
+ *
+ * DESCRIPTION: Format the contents of a APMT. This table type consists
+ * of an open-ended number of subtables.
+ *
+ *
+ * APMT - ARM Performance Monitoring Unit table. Conforms to:
+ * ARM Performance Monitoring Unit Architecture 1.0 Platform Design Document
+ * ARM DEN0117 v1.0 November 25, 2021
+ *
+ ******************************************************************************/
+
+void
+AcpiDmDumpApmt (
+ ACPI_TABLE_HEADER *Table)
+{
+ ACPI_STATUS Status;
+ ACPI_APMT_NODE *Subtable;
+ UINT32 Length = Table->Length;
+ UINT32 Offset = sizeof (ACPI_TABLE_APMT);
+ UINT32 NodeNum = 0;
+
+ /* There is no main table (other than the standard ACPI header) */
+
+ /* Subtables */
+
+ Subtable = ACPI_ADD_PTR (ACPI_APMT_NODE, Table, Offset);
+ while (Offset < Table->Length)
+ {
+ AcpiOsPrintf ("\n");
+
+ if (Subtable->Type >= ACPI_APMT_NODE_TYPE_COUNT)
+ {
+ AcpiOsPrintf ("\n**** Unknown APMT subtable type 0x%X\n",
+ Subtable->Type);
+ return;
+ }
+
+ AcpiOsPrintf ("/* APMT Node-%u */\n", NodeNum++);
+
+ Status = AcpiDmDumpTable (Length, Offset, Subtable,
+ Subtable->Length, AcpiDmTableInfoApmtNode);
+ if (ACPI_FAILURE (Status))
+ {
+ return;
+ }
+
+ /* Point to next subtable */
+
+ Offset += Subtable->Length;
+ Subtable = ACPI_ADD_PTR (ACPI_APMT_NODE, Subtable,
+ Subtable->Length);
+ AcpiOsPrintf ("\n");
+ }
+}
+
/*******************************************************************************
*
@@ -569,7 +629,6 @@ AcpiDmDumpCedt (
ACPI_CEDT_HEADER *Subtable;
UINT32 Length = Table->Length;
UINT32 Offset = sizeof (ACPI_TABLE_CEDT);
- ACPI_DMTABLE_INFO *InfoTable;
/* There is no main table (other than the standard ACPI header) */
@@ -590,35 +649,52 @@ AcpiDmDumpCedt (
switch (Subtable->Type)
{
case ACPI_CEDT_TYPE_CHBS:
+ Status = AcpiDmDumpTable (Length, Offset, Subtable,
+ Subtable->Length, AcpiDmTableInfoCedt0);
+ if (ACPI_FAILURE (Status)) {
+ return;
+ }
+ break;
+
+ case ACPI_CEDT_TYPE_CFMWS: {
+ ACPI_CEDT_CFMWS *ptr = (ACPI_CEDT_CFMWS *) Subtable;
+ unsigned int i, max = 0x01 << (ptr->InterleaveWays);
- InfoTable = AcpiDmTableInfoCedt0;
+ /* print out table with first "Interleave target" */
+
+ Status = AcpiDmDumpTable (Length, Offset, Subtable,
+ Subtable->Length, AcpiDmTableInfoCedt1);
+ if (ACPI_FAILURE (Status)) {
+ return;
+ }
+
+ /* Now, print out any interleave targets beyond the first. */
+
+ for (i = 1; i < max; i++) {
+ unsigned int loc_offset = Offset + (i * 4) + ACPI_OFFSET(ACPI_CEDT_CFMWS, InterleaveTargets);
+ unsigned int *trg = &(ptr->InterleaveTargets[i]);
+ Status = AcpiDmDumpTable (Length, loc_offset, trg,
+ Subtable->Length, AcpiDmTableInfoCedt1_te);
+ if (ACPI_FAILURE (Status)) {
+ return;
+ }
+ }
break;
+ }
default:
-
AcpiOsPrintf ("\n**** Unknown CEDT subtable type 0x%X\n\n",
Subtable->Type);
/* Attempt to continue */
-
if (!Subtable->Length)
{
AcpiOsPrintf ("Invalid zero length subtable\n");
return;
}
- goto NextSubtable;
- }
-
- Status = AcpiDmDumpTable (Length, Offset, Subtable,
- Subtable->Length, InfoTable);
- if (ACPI_FAILURE (Status))
- {
- return;
}
-NextSubtable:
/* Point to next subtable */
-
Offset += Subtable->Length;
Subtable = ACPI_ADD_PTR (ACPI_CEDT_HEADER, Subtable,
Subtable->Length);
@@ -990,6 +1066,12 @@ AcpiDmDumpDmar (
ScopeOffset = sizeof (ACPI_DMAR_ANDD);
break;
+ case ACPI_DMAR_TYPE_SATC:
+
+ InfoTable = AcpiDmTableInfoDmar5;
+ ScopeOffset = sizeof (ACPI_DMAR_SATC);
+ break;
+
default:
AcpiOsPrintf ("\n**** Unknown DMAR subtable type 0x%X\n\n",
diff --git a/source/common/dmtbdump2.c b/source/common/dmtbdump2.c
index 118b96eeab0f..c50a6a2470bd 100644
--- a/source/common/dmtbdump2.c
+++ b/source/common/dmtbdump2.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -203,9 +203,9 @@ AcpiDmDumpIort (
Revision = Table->Revision;
- /* Both IORT Rev E and E.a have known issues and are not supported */
+ /* IORT Revisions E, E.a and E.c have known issues and are not supported */
- if (Revision == 1 || Revision == 2)
+ if (Revision == 1 || Revision == 2 || Revision == 4)
{
AcpiOsPrintf ("\n**** Unsupported IORT revision 0x%X\n",
Revision);
@@ -445,7 +445,7 @@ AcpiDmDumpIort (
}
break;
- default:
+ default:
break;
}
@@ -887,6 +887,8 @@ AcpiDmDumpMadt (
/* Subtables */
Subtable = ACPI_ADD_PTR (ACPI_SUBTABLE_HEADER, Table, Offset);
+ DbgPrint (ASL_PARSE_OUTPUT, "//0B) Offset %X, from table start: 0x%8.8X%8.8X\n",
+ Offset, ACPI_FORMAT_UINT64 (ACPI_CAST_PTR (char, Subtable) - ACPI_CAST_PTR (char, Table)));
while (Offset < Table->Length)
{
/* Common subtable header */
@@ -899,6 +901,7 @@ AcpiDmDumpMadt (
return;
}
+ DbgPrint (ASL_PARSE_OUTPUT, "subtableType: %X\n", Subtable->Type);
switch (Subtable->Type)
{
case ACPI_MADT_TYPE_LOCAL_APIC:
@@ -988,8 +991,23 @@ AcpiDmDumpMadt (
default:
- AcpiOsPrintf ("\n**** Unknown MADT subtable type 0x%X\n\n",
- Subtable->Type);
+ if ((Subtable->Type >= ACPI_MADT_TYPE_RESERVED) &&
+ (Subtable->Type < ACPI_MADT_TYPE_OEM_RESERVED))
+ {
+ AcpiOsPrintf ("\n**** Unknown MADT subtable type 0x%X\n\n",
+ Subtable->Type);
+ goto NextSubtable;
+ }
+ else if (Subtable->Type >= ACPI_MADT_TYPE_OEM_RESERVED)
+ {
+ DbgPrint (ASL_PARSE_OUTPUT, "//[Found an OEM structure, type = %0x]\n",
+ Subtable->Type);
+ Offset += sizeof (ACPI_SUBTABLE_HEADER);
+ DbgPrint (ASL_PARSE_OUTPUT, "//[0) Subtable->Length = %X, Subtable = %p, Offset = %X]\n",
+ Subtable->Length, Subtable, Offset);
+ DbgPrint (ASL_PARSE_OUTPUT, "//[0A) Offset from table start: 0x%8.8X%8.8X]\n",
+ ACPI_FORMAT_UINT64 (ACPI_CAST_PTR (char, Subtable) - ACPI_CAST_PTR (char, Table)));
+ }
/* Attempt to continue */
@@ -999,9 +1017,24 @@ AcpiDmDumpMadt (
return;
}
+ /* Dump the OEM data */
+
+ Status = AcpiDmDumpTable (Length, Offset, ACPI_CAST_PTR (UINT8, Table) + Offset,
+ Subtable->Length - sizeof (ACPI_SUBTABLE_HEADER), AcpiDmTableInfoMadt17);
+ if (ACPI_FAILURE (Status))
+ {
+ return;
+ }
+
+ DbgPrint (ASL_PARSE_OUTPUT, "//[1) Subtable->Length = %X, Offset = %X]\n",
+ Subtable->Length, Offset);
+ Offset -= sizeof (ACPI_SUBTABLE_HEADER);
+
goto NextSubtable;
}
+ DbgPrint (ASL_PARSE_OUTPUT, "//[2) Subtable->Length = %X, Offset = %X]\n",
+ Subtable->Length, Offset);
Status = AcpiDmDumpTable (Length, Offset, Subtable,
Subtable->Length, InfoTable);
if (ACPI_FAILURE (Status))
@@ -1012,9 +1045,28 @@ AcpiDmDumpMadt (
NextSubtable:
/* Point to next subtable */
- Offset += Subtable->Length;
+ DbgPrint (ASL_PARSE_OUTPUT, "//[3) Subtable->Length = %X, Offset = %X]\n",
+ Subtable->Length, Offset);
+ DbgPrint (ASL_PARSE_OUTPUT, "//[4) Offset from table start: 0x%8.8X%8.8X (%p) %p]\n",
+ ACPI_FORMAT_UINT64 (ACPI_CAST_PTR (UINT8, Subtable) - ACPI_CAST_PTR (UINT8, Table)), Subtable, Table);
+ if (Offset > Table->Length)
+ {
+ return;
+ }
+
Subtable = ACPI_ADD_PTR (ACPI_SUBTABLE_HEADER, Subtable,
Subtable->Length);
+
+ DbgPrint (ASL_PARSE_OUTPUT, "//[5) Next Subtable %p, length %X]\n",
+ Subtable, Subtable->Length);
+ DbgPrint (ASL_PARSE_OUTPUT, "//[5B) Offset from table start: 0x%8.8X%8.8X (%p)]\n",
+ ACPI_FORMAT_UINT64 (ACPI_CAST_PTR (char, Subtable) - ACPI_CAST_PTR (char, Table)), Subtable);
+
+ Offset = ACPI_CAST_PTR (char, Subtable) - ACPI_CAST_PTR (char, Table);
+ if (Offset >= Table->Length)
+ {
+ return;
+ }
}
}
@@ -1494,19 +1546,21 @@ AcpiDmDumpNhlt (
UINT32 CapabilitiesSize;
UINT32 i;
UINT32 j;
- UINT32 k;
UINT32 EndpointEndOffset;
UINT8 ConfigType = 0;
UINT8 ArrayType;
+ UINT8 MicrophoneCount;
+ ACPI_NHLT_VENDOR_MIC_COUNT *MicCount;
ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_A *DevSpecific;
ACPI_NHLT_FORMATS_CONFIG *FormatsConfig;
- ACPI_NHLT_LINUX_SPECIFIC_COUNT *Count;
- ACPI_NHLT_LINUX_SPECIFIC_DATA *LinuxData;
+ ACPI_NHLT_DEVICE_INFO_COUNT *Count;
+ ACPI_NHLT_DEVICE_INFO *DeviceInfo;
+ ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_B *Capabilities;
/* Main table */
- AcpiOsPrintf ("/* Main table */\n");
+ AcpiOsPrintf (" /* Main table */\n");
Status = AcpiDmDumpTable (TableLength, 0, Table, 0, AcpiDmTableInfoNhlt);
if (ACPI_FAILURE (Status))
@@ -1532,52 +1586,59 @@ AcpiDmDumpNhlt (
/* Do the Endpoint Descriptor table */
Subtable = ACPI_ADD_PTR (ACPI_NHLT_ENDPOINT, Table, Offset);
+
+ /* Check for endpoint descriptor length beyond end-of-table */
+
if (Subtable->DescriptorLength > TableLength)
{
Offset += 1;
- AcpiOsPrintf ("\n/* Endpoint Descriptor Length larger than"
+ AcpiOsPrintf ("\n /* Endpoint Descriptor Length larger than"
" table size: %X, table %X, adjusting table offset (+1) */\n",
Subtable->DescriptorLength, TableLength);
Subtable = ACPI_ADD_PTR (ACPI_NHLT_ENDPOINT, Table, Offset);
}
- AcpiOsPrintf ("\n/* Endpoint Descriptor #%u */\n", i+1);
+ AcpiOsPrintf ("\n /* Endpoint Descriptor #%u */\n", i+1);
Status = AcpiDmDumpTable (TableLength, Offset, Subtable,
Subtable->DescriptorLength, AcpiDmTableInfoNhlt0);
if (ACPI_FAILURE (Status))
{
return;
}
+
EndpointEndOffset = Subtable->DescriptorLength + Offset;
/* Check for endpoint descriptor beyond end-of-table */
if (Subtable->DescriptorLength > TableLength)
{
- AcpiOsPrintf ("\n/* Endpoint Descriptor Length larger than table size: %X, table %X */\n",
+ AcpiOsPrintf ("\n /* Endpoint Descriptor Length larger than table size: %X, table %X */\n",
Subtable->DescriptorLength, TableLength);
}
+
Offset += sizeof (ACPI_NHLT_ENDPOINT);
Subtable = ACPI_ADD_PTR (ACPI_NHLT_ENDPOINT, Table, Offset);
/* Do the Device Specific table */
- AcpiOsPrintf ("\n/* Endpoint Device_Specific_Config table */\n");
+ AcpiOsPrintf ("\n /* Endpoint Device_Specific_Config table */\n");
DevSpecific = ACPI_CAST_PTR (ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_A, Subtable);
CapabilitiesSize = DevSpecific->CapabilitiesSize;
+ Status = AcpiDmDumpTable (TableLength, Offset, DevSpecific,
+ sizeof (ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_B), AcpiDmTableInfoNhlt5b);
+ if (ACPI_FAILURE (Status))
+ {
+ return;
+ }
+
+ ArrayType = 0;
/* Different subtables based upon capabilities_size */
switch (CapabilitiesSize)
{
case 0:
- Status = AcpiDmDumpTable (TableLength, Offset, DevSpecific,
- sizeof (ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_B), AcpiDmTableInfoNhlt5b);
- if (ACPI_FAILURE (Status))
- {
- return;
- }
Offset += sizeof (ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_B);
break;
@@ -1602,6 +1663,9 @@ AcpiDmDumpNhlt (
break;
case 3:
+ default:
+ /* Extract the ConfigType and ArrayType */
+
ConfigType = DevSpecific->ConfigType;
ArrayType = DevSpecific->ArrayType;
@@ -1614,56 +1678,113 @@ AcpiDmDumpNhlt (
/* Capabilities Size == 3 */
Offset += sizeof (ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_A);
+ break;
- /* Check for a vendor-defined mic array */
+ case 7:
+ ConfigType = DevSpecific->ConfigType;
+ Subtable = ACPI_ADD_PTR (ACPI_NHLT_ENDPOINT, Table, Offset);
+ DevSpecific = ACPI_CAST_PTR (ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_A, Subtable);
- if ((ConfigType == ACPI_NHLT_TYPE_MIC_ARRAY) && ((ArrayType & ARRAY_TYPE_MASK) == VENDOR_DEFINED))
+ AcpiOsPrintf ("\n /* Render Feedback Device-Specific table */\n");
+ Status = AcpiDmDumpTable (TableLength, Offset, DevSpecific,
+ sizeof (ACPI_NHLT_DEVICE_SPECIFIC_CONFIG), AcpiDmTableInfoNhlt5);
+ if (ACPI_FAILURE (Status))
{
- /* Vendor-defined microphone array */
+ return;
+ }
- AcpiOsPrintf ("\n/* Vendor-defined microphone array */\n");
+ /* Capabilities Size = 7 */
+ Offset += sizeof (ACPI_NHLT_DEVICE_SPECIFIC_CONFIG);
+
+ if (ConfigType == ACPI_NHLT_CONFIG_TYPE_RENDER_FEEDBACK)
+ {
+ Subtable = ACPI_ADD_PTR (ACPI_NHLT_ENDPOINT, Table, Offset);
+ DevSpecific = ACPI_CAST_PTR (ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_A, Subtable);
Status = AcpiDmDumpTable (TableLength, Offset, DevSpecific,
- sizeof (ACPI_NHLT_VENDOR_MIC_CONFIG), AcpiDmTableInfoNhlt6);
+ sizeof (ACPI_NHLT_RENDER_FEEDBACK_DEVICE_SPECIFIC_CONFIG), AcpiDmTableInfoNhlt6b);
if (ACPI_FAILURE (Status))
{
return;
}
- Offset += sizeof (ACPI_NHLT_VENDOR_MIC_CONFIG);
+ Offset += sizeof (ACPI_NHLT_RENDER_FEEDBACK_DEVICE_SPECIFIC_CONFIG);
}
break;
+ }
- default:
- Status = AcpiDmDumpTable (TableLength, Offset, DevSpecific,
- sizeof (ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_B), AcpiDmTableInfoNhlt5b);
- if (ACPI_FAILURE (Status))
- {
- return;
- }
+ /* Check for a vendor-defined mic array */
- Offset += sizeof (ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_B);
- Status = AcpiDmDumpTable (TableLength, Offset, DevSpecific,
- CapabilitiesSize, AcpiDmTableInfoNhlt3a);
- if (ACPI_FAILURE (Status))
+ if (ConfigType == ACPI_NHLT_CONFIG_TYPE_MIC_ARRAY)
+ {
+ if ((ArrayType & ACPI_NHLT_ARRAY_TYPE_MASK) == ACPI_NHLT_VENDOR_DEFINED)
{
- return;
+ /* Vendor-defined microphone array; get the microphone count first */
+
+ AcpiOsPrintf ("\n /* Vendor-defined microphone count */\n");
+ MicCount = ACPI_ADD_PTR (ACPI_NHLT_VENDOR_MIC_COUNT, Table, Offset);
+ MicrophoneCount = MicCount->MicrophoneCount;
+
+ Status = AcpiDmDumpTable (TableLength, Offset, MicCount,
+ sizeof (ACPI_NHLT_VENDOR_MIC_COUNT), AcpiDmTableInfoNhlt6a);
+ Offset += sizeof (ACPI_NHLT_VENDOR_MIC_COUNT);
+ if (ACPI_FAILURE (Status))
+ {
+ return;
+ }
+
+ /* Get the vendor microphone config structure(s) */
+
+ for (j = 0; j < MicrophoneCount; j++)
+ {
+ AcpiOsPrintf ("\n /* Vendor-defined microphone array #%u*/\n", j+1);
+ DevSpecific = ACPI_ADD_PTR (ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_A, Table, Offset);
+
+ Status = AcpiDmDumpTable (TableLength, Offset, DevSpecific,
+ sizeof (ACPI_NHLT_VENDOR_MIC_CONFIG), AcpiDmTableInfoNhlt6);
+ if (ACPI_FAILURE (Status))
+ {
+ return;
+ }
+
+ Offset += sizeof (ACPI_NHLT_VENDOR_MIC_CONFIG);
+ }
+
+ /* Check for Microphone SNR and sensitivity extension */
+
+ if ((ArrayType & ACPI_NHLT_ARRAY_TYPE_EXT_MASK) == ACPI_NHLT_MIC_SNR_SENSITIVITY_EXT)
+ {
+ AcpiOsPrintf ("\n /* Microphone SNR and sensitivity array */\n");
+ DevSpecific = ACPI_ADD_PTR (ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_A, Table, Offset);
+
+ Status = AcpiDmDumpTable (TableLength, Offset, DevSpecific,
+ sizeof (ACPI_NHLT_MIC_SNR_SENSITIVITY_EXTENSION), AcpiDmTableInfoNhlt9);
+ if (ACPI_FAILURE (Status))
+ {
+ return;
+ }
+
+ Offset += sizeof (ACPI_NHLT_MIC_SNR_SENSITIVITY_EXTENSION);
+ }
}
- Offset += CapabilitiesSize;
- break;
}
- /* Do the Formats_Config table */
+ /* Do the Formats_Config table - starts with the FormatsCount field */
FormatsConfig = ACPI_ADD_PTR (ACPI_NHLT_FORMATS_CONFIG, Table, Offset);
FormatsCount = FormatsConfig->FormatsCount;
- AcpiOsPrintf ("\n/* Formats_Config table */\n");
+ AcpiOsPrintf ("\n /* Formats_Config table */\n");
- Status = AcpiDmDumpTable (TableLength, Offset, FormatsConfig,
- sizeof (ACPI_NHLT_FORMATS_CONFIG), AcpiDmTableInfoNhlt4);
- if (ACPI_FAILURE (Status))
+ /* Dump the FormatsCount value */
+
+ if (FormatsCount > 0)
{
- return;
+ Status = AcpiDmDumpTable (TableLength, Offset, FormatsConfig,
+ sizeof (ACPI_NHLT_FORMATS_CONFIG), AcpiDmTableInfoNhlt4);
+ if (ACPI_FAILURE (Status))
+ {
+ return;
+ }
}
Offset += sizeof (ACPI_NHLT_FORMATS_CONFIG);
@@ -1676,90 +1797,125 @@ AcpiDmDumpNhlt (
/* Do the Wave_extensible struct */
- AcpiOsPrintf ("\n/* Wave_Format_Extensible table #%u */\n", j+1);
+ AcpiOsPrintf ("\n /* Wave_Format_Extensible table #%u */\n", j+1);
Status = AcpiDmDumpTable (TableLength, Offset, FormatSubtable,
sizeof (ACPI_NHLT_FORMAT_CONFIG), AcpiDmTableInfoNhlt3);
if (ACPI_FAILURE (Status))
{
return;
}
- Offset += sizeof (ACPI_NHLT_WAVE_EXTENSIBLE);
- /* Do the Capabilities array */
+ Offset += sizeof (ACPI_NHLT_FORMAT_CONFIG);
- Offset += sizeof (UINT32);
- AcpiOsPrintf ("\n/* Specific_Config table #%u */\n", j+1);
- FormatSubtable = ACPI_ADD_PTR (ACPI_NHLT_FORMAT_CONFIG, Table, Offset);
- Status = AcpiDmDumpTable (TableLength, Offset, FormatSubtable,
- CapabilitiesSize, AcpiDmTableInfoNhlt3a);
- if (ACPI_FAILURE (Status))
+ if (CapabilitiesSize > 0)
{
- return;
+ UINT8* CapabilitiesBuf = ACPI_ADD_PTR (UINT8, Table, Offset);
+ /* Do the Capabilities array (of bytes) */
+
+ AcpiOsPrintf ("\n /* Specific_Config table #%u */\n", j+1);
+
+ Status = AcpiDmDumpTable (TableLength, Offset, CapabilitiesBuf,
+ CapabilitiesSize, AcpiDmTableInfoNhlt3a);
+ if (ACPI_FAILURE (Status))
+ {
+ return;
+ }
+
+ Offset += CapabilitiesSize; /* + sizeof (ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_B); */
}
- Offset += CapabilitiesSize;
- }
+
+ } /* for (j = 0; j < FormatsCount; j++) */
/*
- * If we are not done with the Endpoint(s) yet, then there must be
- * some Linux-specific structure(s) yet to be processed.
+ * If we are not done with the current Endpoint yet, then there must be
+ * some non documented structure(s) yet to be processed. First, get
+ * the count of such structure(s).
*/
if (Offset < EndpointEndOffset)
{
- AcpiOsPrintf ("\n");
- Count = ACPI_ADD_PTR (ACPI_NHLT_LINUX_SPECIFIC_COUNT, Table, Offset);
+ AcpiOsPrintf ("\n /* Structures that are not part of NHLT spec */\n");
+ Count = ACPI_ADD_PTR (ACPI_NHLT_DEVICE_INFO_COUNT, Table, Offset);
Status = AcpiDmDumpTable (TableLength, Offset, Count,
- sizeof (ACPI_NHLT_LINUX_SPECIFIC_COUNT), AcpiDmTableInfoNhlt7);
+ sizeof (ACPI_NHLT_DEVICE_INFO_COUNT), AcpiDmTableInfoNhlt7);
if (ACPI_FAILURE (Status))
{
return;
}
- Offset += sizeof (ACPI_NHLT_LINUX_SPECIFIC_COUNT);
+ Offset += sizeof (ACPI_NHLT_DEVICE_INFO_COUNT);
- /* Variable number of linux-specific structures */
+ /* Variable number of device structures */
- for (k = 0; k < Count->StructureCount; k++)
+ for (j = 0; j < Count->StructureCount; j++)
{
- LinuxData = ACPI_ADD_PTR (ACPI_NHLT_LINUX_SPECIFIC_DATA, Table, Offset);
+ DeviceInfo = ACPI_ADD_PTR (ACPI_NHLT_DEVICE_INFO, Table, Offset);
+ AcpiOsPrintf ("\n /* Device Info structure #%u (not part of NHLT spec) */\n", j+1);
- AcpiOsPrintf ("\n/* Linux-specific structure #%u */\n", k+1);
-
- Status = AcpiDmDumpTable (TableLength, Offset, LinuxData,
- sizeof (ACPI_NHLT_LINUX_SPECIFIC_DATA), AcpiDmTableInfoNhlt7a);
+ /*
+ * Dump the following Device Info fields:
+ * 1) Device ID
+ * 2) Device Instance ID
+ * 3) Device Port ID
+ */
+ Status = AcpiDmDumpTable (TableLength, Offset, DeviceInfo,
+ sizeof (ACPI_NHLT_DEVICE_INFO), AcpiDmTableInfoNhlt7a);
if (ACPI_FAILURE (Status))
{
return;
}
- Offset += sizeof (ACPI_NHLT_LINUX_SPECIFIC_DATA);
+ Offset += sizeof (ACPI_NHLT_DEVICE_INFO);
}
- /* Should be at the end of the Endpoint structure. Skip any extra bytes */
-
+ /*
+ * Check that the current offset is not beyond the end of
+ * this endpoint descriptor. If it is not, print those
+ * undocumented bytes.
+ */
if (Offset < EndpointEndOffset)
{
- AcpiOsPrintf ("\n/* Endpoint descriptor ended before endpoint size was reached. "
- "skipped %X input bytes, current offset: %X, Endpoint End Offset: %X */\n",
- EndpointEndOffset - Offset, Offset, EndpointEndOffset);
- AcpiUtDumpBuffer (((UINT8 *)Table)+Offset,
- EndpointEndOffset - Offset, DB_BYTE_DISPLAY, Offset);
+ /* Unknown data at the end of the Endpoint */
+ UINT32 size = EndpointEndOffset - Offset;
+ UINT8* buffer = ACPI_ADD_PTR (UINT8, Table, Offset);
+ AcpiOsPrintf ("\n /* Unknown data at the end of the Endpoint, size: %X */\n", size);
+ Status = AcpiDmDumpTable (TableLength, Offset, buffer,
+ size, AcpiDmTableInfoNhlt7b);
Offset = EndpointEndOffset;
}
+
+ /* Should be at the end of the Endpoint structure. */
}
- }
- /* Emit the table terminator (if present) */
+ } /* for (i = 0; i < EndpointCount; i++) */
+
- if (Offset == TableLength - sizeof (ACPI_NHLT_TABLE_TERMINATOR))
+ /*
+ * Done with all of the Endpoint Descriptors, Emit the table terminator
+ * (if such a legacy structure is present -- not in NHLT specification)
+ */
+ if (Offset < TableLength)
{
- LinuxData = ACPI_ADD_PTR (ACPI_NHLT_LINUX_SPECIFIC_DATA, Table, Offset);
- AcpiOsPrintf ("\n/* Table terminator structure */\n");
+ Capabilities = ACPI_ADD_PTR (ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_B, Table, Offset);
+ AcpiOsPrintf ("\n/* Terminating specific config (not part of NHLT spec) */\n");
- Status = AcpiDmDumpTable (TableLength, Offset, LinuxData,
- sizeof (ACPI_NHLT_TABLE_TERMINATOR), AcpiDmTableInfoNhlt8);
+ Status = AcpiDmDumpTable (TableLength, Offset, Capabilities,
+ sizeof (ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_B), AcpiDmTableInfoNhlt5b);
if (ACPI_FAILURE (Status))
{
return;
}
+ Offset += sizeof (ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_B);
+
+ if (Capabilities->CapabilitiesSize > 0)
+ {
+ UINT32 remainingBytes = TableLength - Offset;
+ UINT8* buffer = ACPI_ADD_PTR (UINT8, Table, Offset);
+
+ if (remainingBytes != Capabilities->CapabilitiesSize)
+ AcpiOsPrintf ("\n/* Incorrect config size, should be %X, is %X */\n",
+ Capabilities->CapabilitiesSize, remainingBytes);
+ Status = AcpiDmDumpTable (TableLength, Offset, buffer,
+ remainingBytes, AcpiDmTableInfoNhlt3a);
+ }
}
return;
diff --git a/source/common/dmtbdump3.c b/source/common/dmtbdump3.c
index 63b6d2d5e2e2..cbcd9e7f0e11 100644
--- a/source/common/dmtbdump3.c
+++ b/source/common/dmtbdump3.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/common/dmtbinfo.c b/source/common/dmtbinfo.c
index 347f9d367b17..4053996992e4 100644
--- a/source/common/dmtbinfo.c
+++ b/source/common/dmtbinfo.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -292,7 +292,7 @@ ACPI_DMTABLE_INFO AcpiDmTableInfoFacs[] =
ACPI_DMTABLE_INFO AcpiDmTableInfoFadt1[] =
{
{ACPI_DMT_UINT32, ACPI_FADT_OFFSET (Facs), "FACS Address", 0},
- {ACPI_DMT_UINT32, ACPI_FADT_OFFSET (Dsdt), "DSDT Address", DT_NON_ZERO},
+ {ACPI_DMT_UINT32, ACPI_FADT_OFFSET (Dsdt), "DSDT Address", 0},
{ACPI_DMT_UINT8, ACPI_FADT_OFFSET (Model), "Model", 0},
{ACPI_DMT_FADTPM, ACPI_FADT_OFFSET (PreferredProfile), "PM Profile", 0},
{ACPI_DMT_UINT16, ACPI_FADT_OFFSET (SciInterrupt), "SCI Interrupt", 0},
@@ -408,7 +408,7 @@ ACPI_DMTABLE_INFO AcpiDmTableInfoFadt3[] =
ACPI_DMT_TERMINATOR
};
-/* ACPI 5.0 Extensions (FADT version 5) */
+/* Extensions for FADT version 5 */
ACPI_DMTABLE_INFO AcpiDmTableInfoFadt5[] =
{
@@ -417,7 +417,7 @@ ACPI_DMTABLE_INFO AcpiDmTableInfoFadt5[] =
ACPI_DMT_TERMINATOR
};
-/* ACPI 6.0 Extensions (FADT version 6) */
+/* Extensions for FADT version 6 */
ACPI_DMTABLE_INFO AcpiDmTableInfoFadt6[] =
{
diff --git a/source/common/dmtbinfo1.c b/source/common/dmtbinfo1.c
index b30cafa9f773..d6a94bfc1025 100644
--- a/source/common/dmtbinfo1.c
+++ b/source/common/dmtbinfo1.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -521,6 +521,28 @@ ACPI_DMTABLE_INFO AcpiDmTableInfoCedt0[] =
ACPI_DMT_TERMINATOR
};
+/* 1: CXL Fixed Memory Window Structure */
+
+ACPI_DMTABLE_INFO AcpiDmTableInfoCedt1[] =
+{
+ {ACPI_DMT_UINT32, ACPI_CEDT1_OFFSET (Reserved1), "Reserved", 0},
+ {ACPI_DMT_UINT64, ACPI_CEDT1_OFFSET (BaseHpa), "Window base address", 0},
+ {ACPI_DMT_UINT64, ACPI_CEDT1_OFFSET (WindowSize), "Window size", 0},
+ {ACPI_DMT_UINT8, ACPI_CEDT1_OFFSET (InterleaveWays), "Interleave Members (2^n)", 0},
+ {ACPI_DMT_UINT8, ACPI_CEDT1_OFFSET (InterleaveArithmetic), "Interleave Arithmetic", 0},
+ {ACPI_DMT_UINT16, ACPI_CEDT1_OFFSET (Reserved2), "Reserved", 0},
+ {ACPI_DMT_UINT32, ACPI_CEDT1_OFFSET (Granularity), "Granularity", 0},
+ {ACPI_DMT_UINT16, ACPI_CEDT1_OFFSET (Restrictions), "Restrictions", 0},
+ {ACPI_DMT_UINT16, ACPI_CEDT1_OFFSET (QtgId), "QtgId", 0},
+ {ACPI_DMT_UINT32, ACPI_CEDT1_OFFSET (InterleaveTargets), "First Target", 0},
+ ACPI_DMT_TERMINATOR
+};
+
+ACPI_DMTABLE_INFO AcpiDmTableInfoCedt1_te[] =
+{
+ {ACPI_DMT_UINT32, ACPI_CEDT1_TE_OFFSET (InterleaveTarget), "Next Target", 0},
+ ACPI_DMT_TERMINATOR
+};
/*******************************************************************************
*
@@ -768,6 +790,15 @@ ACPI_DMTABLE_INFO AcpiDmTableInfoDmar4[] =
ACPI_DMT_TERMINATOR
};
+/* 5: Hardware Unit Definition */
+
+ACPI_DMTABLE_INFO AcpiDmTableInfoDmar5[] =
+{
+ {ACPI_DMT_UINT8, ACPI_DMAR5_OFFSET (Flags), "Flags", 0},
+ {ACPI_DMT_UINT8, ACPI_DMAR5_OFFSET (Reserved), "Reserved", 0},
+ {ACPI_DMT_UINT16, ACPI_DMAR5_OFFSET (Segment), "PCI Segment Number", 0},
+ ACPI_DMT_TERMINATOR
+};
/*******************************************************************************
*
diff --git a/source/common/dmtbinfo2.c b/source/common/dmtbinfo2.c
index 4cbe112eb0ad..2c7d81785086 100644
--- a/source/common/dmtbinfo2.c
+++ b/source/common/dmtbinfo2.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -188,6 +188,59 @@
* Remaining tables are not consumed directly by the ACPICA subsystem
*/
+/*******************************************************************************
+ *
+ * AGDI - Arm Generic Diagnostic Dump and Reset Device Interface
+ *
+ * Conforms to "ACPI for Arm Components 1.1, Platform Design Document"
+ * ARM DEN0093 v1.1
+ *
+ ******************************************************************************/
+
+ACPI_DMTABLE_INFO AcpiDmTableInfoAgdi[] =
+{
+ {ACPI_DMT_UINT8, ACPI_AGDI_OFFSET (Flags), "Flags (decoded below)", 0},
+ {ACPI_DMT_FLAG0, ACPI_AGDI_FLAG_OFFSET (Flags, 0), "Signalling mode", 0},
+ {ACPI_DMT_UINT24, ACPI_AGDI_OFFSET (Reserved[0]), "Reserved", 0},
+ {ACPI_DMT_UINT32, ACPI_AGDI_OFFSET (SdeiEvent), "SdeiEvent", 0},
+ {ACPI_DMT_UINT32, ACPI_AGDI_OFFSET (Gsiv), "Gsiv", 0},
+ ACPI_DMT_TERMINATOR
+};
+
+
+/*******************************************************************************
+ *
+ * APMT - ARM Performance Monitoring Unit Table
+ *
+ * Conforms to:
+ * ARM Performance Monitoring Unit Architecture 1.0 Platform Design Document
+ * ARM DEN0117 v1.0 November 25, 2021
+ *
+ ******************************************************************************/
+
+ACPI_DMTABLE_INFO AcpiDmTableInfoApmtNode[] =
+{
+ {ACPI_DMT_UINT16, ACPI_APMTN_OFFSET (Length), "Length of APMT Node", 0},
+ {ACPI_DMT_UINT8, ACPI_APMTN_OFFSET (Flags), "Node Flags", 0},
+ {ACPI_DMT_FLAG0, ACPI_APMTN_FLAG_OFFSET (Flags, 0), "Dual Page Extension", 0},
+ {ACPI_DMT_FLAG1, ACPI_APMTN_FLAG_OFFSET (Flags, 0), "Processor Affinity Type", 0},
+ {ACPI_DMT_FLAG2, ACPI_APMTN_FLAG_OFFSET (Flags, 0), "64-bit Atomic Support", 0},
+ {ACPI_DMT_UINT8, ACPI_APMTN_OFFSET (Type), "Node Type", 0},
+ {ACPI_DMT_UINT32, ACPI_APMTN_OFFSET (Id), "Unique Node Identifier", 0},
+ {ACPI_DMT_UINT64, ACPI_APMTN_OFFSET (InstPrimary), "Primary Node Instance", 0},
+ {ACPI_DMT_UINT32, ACPI_APMTN_OFFSET (InstSecondary), "Secondary Node Instance", 0},
+ {ACPI_DMT_UINT64, ACPI_APMTN_OFFSET (BaseAddress0), "Page 0 Base Address", 0},
+ {ACPI_DMT_UINT64, ACPI_APMTN_OFFSET (BaseAddress1), "Page 1 Base Address", 0},
+ {ACPI_DMT_UINT32, ACPI_APMTN_OFFSET (OvflwIrq), "Overflow Interrupt ID", 0},
+ {ACPI_DMT_UINT32, ACPI_APMTN_OFFSET (Reserved), "Reserved", 0},
+ {ACPI_DMT_UINT32, ACPI_APMTN_OFFSET (OvflwIrqFlags), "Overflow Interrupt Flags", 0},
+ {ACPI_DMT_FLAG0, ACPI_APMTN_FLAG_OFFSET (OvflwIrqFlags, 0), "Interrupt Mode", 0},
+ {ACPI_DMT_FLAG1, ACPI_APMTN_FLAG_OFFSET (OvflwIrqFlags, 0), "Interrupt Type", 0},
+ {ACPI_DMT_UINT32, ACPI_APMTN_OFFSET (ProcAffinity), "Processor Affinity", 0},
+ {ACPI_DMT_UINT32, ACPI_APMTN_OFFSET (ImplId), "Implementation ID", 0},
+ ACPI_DMT_TERMINATOR
+};
+
/*******************************************************************************
*
@@ -304,7 +357,8 @@ ACPI_DMTABLE_INFO AcpiDmTableInfoIort2[] =
{ACPI_DMT_UINT32, ACPI_IORT2_OFFSET (AtsAttribute), "ATS Attribute", 0},
{ACPI_DMT_UINT32, ACPI_IORT2_OFFSET (PciSegmentNumber), "PCI Segment Number", 0},
{ACPI_DMT_UINT8, ACPI_IORT2_OFFSET (MemoryAddressLimit), "Memory Size Limit", 0},
- {ACPI_DMT_UINT24, ACPI_IORT2_OFFSET (Reserved[0]), "Reserved", 0},
+ {ACPI_DMT_UINT16, ACPI_IORT2_OFFSET (PasidCapabilities), "PASID Capabilities", 0},
+ {ACPI_DMT_UINT8, ACPI_IORT2_OFFSET (Reserved[0]), "Reserved", 0},
ACPI_DMT_TERMINATOR
};
@@ -388,6 +442,8 @@ ACPI_DMTABLE_INFO AcpiDmTableInfoIort6[] =
{
{ACPI_DMT_UINT32, ACPI_IORT6_OFFSET (Flags), "Flags (decoded below)", 0},
{ACPI_DMT_FLAG0, ACPI_IORT6_FLAG_OFFSET (Flags, 0), "Remapping Permitted", 0},
+ {ACPI_DMT_FLAG1, ACPI_IORT6_FLAG_OFFSET (Flags, 0), "Access Privileged", 0},
+ {ACPI_DMT_FLAGS8_2, ACPI_IORT6_FLAG_OFFSET (Flags, 0), "Access Attributes", 0},
{ACPI_DMT_UINT32, ACPI_IORT6_OFFSET (RmrCount), "Number of RMR Descriptors", 0},
{ACPI_DMT_UINT32, ACPI_IORT6_OFFSET (RmrOffset), "RMR Descriptor Offset", 0},
ACPI_DMT_TERMINATOR
@@ -868,6 +924,13 @@ ACPI_DMTABLE_INFO AcpiDmTableInfoMadt16[] =
ACPI_DMT_TERMINATOR
};
+/* 17: OEM data structure */
+
+ACPI_DMTABLE_INFO AcpiDmTableInfoMadt17[] =
+{
+ {ACPI_DMT_RAW_BUFFER, 0, "OEM Data", 0},
+ ACPI_DMT_TERMINATOR
+};
/*******************************************************************************
*
@@ -1217,7 +1280,7 @@ ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt0[] =
{ACPI_DMT_NHLT1, ACPI_NHLT0_OFFSET (LinkType), "Link Type", 0},
{ACPI_DMT_UINT8, ACPI_NHLT0_OFFSET (InstanceId), "Instance Id", 0},
{ACPI_DMT_UINT16, ACPI_NHLT0_OFFSET (VendorId), "Vendor Id", 0},
- {ACPI_DMT_UINT16, ACPI_NHLT0_OFFSET (DeviceId), "Device Id", 0},
+ {ACPI_DMT_NHLT1e, ACPI_NHLT0_OFFSET (DeviceId), "Device Id", 0},
{ACPI_DMT_UINT16, ACPI_NHLT0_OFFSET (RevisionId), "Revision Id", 0},
{ACPI_DMT_UINT32, ACPI_NHLT0_OFFSET (SubsystemId), "Subsystem Id", 0},
{ACPI_DMT_UINT8, ACPI_NHLT0_OFFSET (DeviceType), "Device Type", 0},
@@ -1230,9 +1293,9 @@ ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt0[] =
ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt1[] =
{
- {ACPI_DMT_UINT32, ACPI_NHLT1_OFFSET (CapabilitiesSize), "Capabilities Size", DT_LENGTH},
+ {ACPI_DMT_UINT32, ACPI_NHLT1_OFFSET (CapabilitiesSize), "Capabilities Size", 0},
{ACPI_DMT_UINT8, ACPI_NHLT1_OFFSET (VirtualSlot), "Virtual Slot", 0},
- {ACPI_DMT_UINT8, ACPI_NHLT1_OFFSET (ConfigType), "Config Type", 0},
+ {ACPI_DMT_NHLT1f, ACPI_NHLT1_OFFSET (ConfigType), "Config Type", 0},
ACPI_DMT_TERMINATOR
};
@@ -1253,7 +1316,7 @@ ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt2[] =
ACPI_DMT_TERMINATOR
};
-/* Format Config */
+/* Format Config (wave_format_extensible structure) */
ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt3[] =
{
@@ -1267,7 +1330,7 @@ ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt3[] =
{ACPI_DMT_UINT16, ACPI_NHLT3_OFFSET (Format.ValidBitsPerSample), "Valid Bits Per Sample", 0},
{ACPI_DMT_UINT32, ACPI_NHLT3_OFFSET (Format.ChannelMask), "Channel Mask", 0},
{ACPI_DMT_UUID, ACPI_NHLT3_OFFSET (Format.SubFormatGuid), "SubFormat GUID", 0},
- {ACPI_DMT_UINT32, ACPI_NHLT3_OFFSET (CapabilitySize), "Capabilities Length", DT_LENGTH},
+ {ACPI_DMT_UINT32, ACPI_NHLT3_OFFSET (CapabilitySize), "Capabilities Length", 0},
ACPI_DMT_TERMINATOR
};
@@ -1281,7 +1344,6 @@ ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt3a[] =
ACPI_DMT_TERMINATOR
};
-
/* Formats Config */
ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt4[] =
@@ -1294,9 +1356,8 @@ ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt4[] =
ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt5[] =
{
- {ACPI_DMT_UINT32, ACPI_NHLT5_OFFSET (CapabilitiesSize), "Capabilities Size", DT_LENGTH},
{ACPI_DMT_UINT8, ACPI_NHLT5_OFFSET (VirtualSlot), "Virtual Slot", 0},
- {ACPI_DMT_UINT8, ACPI_NHLT5_OFFSET (ConfigType), "Config Type", 0},
+ {ACPI_DMT_NHLT1f, ACPI_NHLT5_OFFSET (ConfigType), "Config Type", 0},
ACPI_DMT_TERMINATOR
};
@@ -1304,10 +1365,9 @@ ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt5[] =
ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt5a[] =
{
- {ACPI_DMT_UINT32, ACPI_NHLT5A_OFFSET (CapabilitiesSize), "Capabilities Size", DT_LENGTH},
{ACPI_DMT_UINT8, ACPI_NHLT5A_OFFSET (VirtualSlot), "Virtual Slot", 0},
- {ACPI_DMT_UINT8, ACPI_NHLT5A_OFFSET (ConfigType), "Config Type", 0},
- {ACPI_DMT_UINT8, ACPI_NHLT5A_OFFSET (ArrayType), "Array Type", 0},
+ {ACPI_DMT_NHLT1f, ACPI_NHLT5A_OFFSET (ConfigType), "Config Type", 0},
+ {ACPI_DMT_NHLT1d, ACPI_NHLT5A_OFFSET (ArrayType), "Array Type", 0},
ACPI_DMT_TERMINATOR
};
@@ -1315,7 +1375,7 @@ ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt5a[] =
ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt5b[] =
{
- {ACPI_DMT_UINT32, ACPI_NHLT5B_OFFSET (CapabilitiesSize), "Capabilities Size", DT_LENGTH},
+ {ACPI_DMT_UINT32, ACPI_NHLT5B_OFFSET (CapabilitiesSize), "Capabilities Size", 0},
ACPI_DMT_TERMINATOR
};
@@ -1323,17 +1383,32 @@ ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt5b[] =
ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt5c[] =
{
- {ACPI_DMT_UINT32, ACPI_NHLT5C_OFFSET (CapabilitiesSize), "Capabilities Size", DT_LENGTH},
{ACPI_DMT_UINT8, ACPI_NHLT5C_OFFSET (VirtualSlot), "Virtual Slot", 0},
ACPI_DMT_TERMINATOR
};
/* Microphone array Config */
+ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt6a[] =
+{
+ {ACPI_DMT_UINT8, ACPI_NHLT6A_OFFSET (MicrophoneCount), "Microphone Count", 0},
+ ACPI_DMT_TERMINATOR
+};
+
+/* Render Feedback Device Config, CapabilitiesSize == 7 */
+
+ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt6b[] =
+{
+ {ACPI_DMT_UINT8, ACPI_NHLT6B_OFFSET (FeedbackVirtualSlot), "Feedback Virtual Slot", 0},
+ {ACPI_DMT_UINT16, ACPI_NHLT6B_OFFSET (FeedbackChannels), "Feedback Channels", 0},
+ {ACPI_DMT_UINT16, ACPI_NHLT6B_OFFSET (FeedbackValidBitsPerSample),"Valid Bits Per Sample", 0},
+ ACPI_DMT_TERMINATOR
+};
+
ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt6[] =
{
- {ACPI_DMT_UINT8, ACPI_NHLT6_OFFSET (Type), "Type", 0},
- {ACPI_DMT_UINT8, ACPI_NHLT6_OFFSET (Panel), "Panel", 0},
+ {ACPI_DMT_NHLT1b, ACPI_NHLT6_OFFSET (Type), "Type", 0},
+ {ACPI_DMT_NHLT1c, ACPI_NHLT6_OFFSET (Panel), "Panel", 0},
{ACPI_DMT_UINT16, ACPI_NHLT6_OFFSET (SpeakerPositionDistance), "Speaker Position Distance", 0},
{ACPI_DMT_UINT16, ACPI_NHLT6_OFFSET (HorizontalOffset), "Horizontal Offset", 0},
{ACPI_DMT_UINT16, ACPI_NHLT6_OFFSET (VerticalOffset), "Vertical Offset", 0},
@@ -1348,31 +1423,36 @@ ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt6[] =
ACPI_DMT_TERMINATOR
};
-/* Number of Linux-specific structures */
+/* Number of DeviceInfo structures */
ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt7[] =
{
- {ACPI_DMT_UINT8, ACPI_NHLT7_OFFSET (StructureCount), "Linux-specific struct count", 0},
+ {ACPI_DMT_UINT8, ACPI_NHLT7_OFFSET (StructureCount), "Device Info struct count", 0},
ACPI_DMT_TERMINATOR
};
-/* The Linux-specific structure */
+/* The DeviceInfo structure */
ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt7a[] =
{
- {ACPI_DMT_BUF16, ACPI_NHLT7A_OFFSET (DeviceId), "Device ID", 0},
+ {ACPI_DMT_UUID, ACPI_NHLT7A_OFFSET (DeviceId), "Device ID GUID", 0},
{ACPI_DMT_UINT8, ACPI_NHLT7A_OFFSET (DeviceInstanceId), "Device Instance ID", 0},
{ACPI_DMT_UINT8, ACPI_NHLT7A_OFFSET (DevicePortId), "Device Port ID", 0},
- {ACPI_DMT_BUF18, ACPI_NHLT7A_OFFSET (Filler), "Specific Data", 0},
ACPI_DMT_TERMINATOR
};
-/* Table terminator (may or may not be present) */
+ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt7b[] =
+{
+ {ACPI_DMT_RAW_BUFFER, 0, "Bytes", 0},
+ ACPI_DMT_TERMINATOR
+};
+
+/* Sensitivity Extension */
-ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt8[] =
+ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt9[] =
{
- {ACPI_DMT_UINT32, ACPI_NHLT8_OFFSET (TerminatorValue), "Terminator Value", 0},
- {ACPI_DMT_UINT32, ACPI_NHLT8_OFFSET (TerminatorSignature), "Terminator Signature", 0},
+ {ACPI_DMT_UINT32, ACPI_NHLT9_OFFSET (SNR), "Signal-to-noise ratio", 0},
+ {ACPI_DMT_UINT32, ACPI_NHLT9_OFFSET (Sensitivity), "Mic Sensitivity", 0},
ACPI_DMT_TERMINATOR
};
@@ -1950,7 +2030,7 @@ ACPI_DMTABLE_INFO AcpiDmTableInfoSdevHdr[] =
{ACPI_DMT_UINT8, ACPI_SDEVH_OFFSET (Flags), "Flags (decoded below)", 0},
{ACPI_DMT_FLAG0, ACPI_SDEVH_FLAG_OFFSET (Flags,0), "Allow handoff to unsecure OS", 0},
{ACPI_DMT_FLAG1, ACPI_SDEVH_FLAG_OFFSET (Flags,0), "Secure access components present", 0},
- {ACPI_DMT_UINT16, ACPI_SDEVH_OFFSET (Length), "Length", 0},
+ {ACPI_DMT_UINT16, ACPI_SDEVH_OFFSET (Length), "Length", DT_LENGTH},
ACPI_DMT_TERMINATOR
};
diff --git a/source/common/dmtbinfo3.c b/source/common/dmtbinfo3.c
index 12e1be4cacc5..fa698d2f40e5 100644
--- a/source/common/dmtbinfo3.c
+++ b/source/common/dmtbinfo3.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -493,6 +493,20 @@ ACPI_DMTABLE_INFO AcpiDmTableInfoTcpaServer[] =
/*******************************************************************************
*
+ * TDEL - TD-Event Log Table
+ *
+ ******************************************************************************/
+
+ACPI_DMTABLE_INFO AcpiDmTableInfoTdel[] =
+{
+ {ACPI_DMT_UINT32, ACPI_TDEL_OFFSET (Reserved), "Reserved", 0},
+ {ACPI_DMT_UINT64, ACPI_TDEL_OFFSET (LogAreaMinimumLength), "Log Area Minimum Length", 0},
+ {ACPI_DMT_UINT64, ACPI_TDEL_OFFSET (LogAreaStartAddress), "Log Area Start Address", 0},
+ ACPI_DMT_TERMINATOR
+};
+
+/*******************************************************************************
+ *
* TPM2 - Trusted Platform Module (TPM) 2.0 Hardware Interface Table
*
******************************************************************************/
diff --git a/source/common/getopt.c b/source/common/getopt.c
index 766ab8e35448..772b66c0d932 100644
--- a/source/common/getopt.c
+++ b/source/common/getopt.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslallocate.c b/source/compiler/aslallocate.c
index 8be711b2c017..d697d059e6d1 100644
--- a/source/compiler/aslallocate.c
+++ b/source/compiler/aslallocate.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslanalyze.c b/source/compiler/aslanalyze.c
index c54ff8a215e4..9db7d4fbe81a 100644
--- a/source/compiler/aslanalyze.c
+++ b/source/compiler/aslanalyze.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslascii.c b/source/compiler/aslascii.c
index 0e8c4d4e0f40..6c0e62c41177 100644
--- a/source/compiler/aslascii.c
+++ b/source/compiler/aslascii.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslbtypes.c b/source/compiler/aslbtypes.c
index ebb798a7d8b5..f7b3fb1bec75 100644
--- a/source/compiler/aslbtypes.c
+++ b/source/compiler/aslbtypes.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslcache.c b/source/compiler/aslcache.c
index 51e6f4c46f86..9cc707e207d3 100644
--- a/source/compiler/aslcache.c
+++ b/source/compiler/aslcache.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -183,6 +183,11 @@ UtLocalCacheCalloc (
UINT32 CacheSize = ASL_STRING_CACHE_SIZE;
+#ifdef ACPI_MISALIGNMENT_NOT_SUPPORTED
+ /* Used for objects other than strings, so keep allocations aligned */
+ Length = ACPI_ROUND_UP_TO_NATIVE_WORD (Length);
+#endif
+
if (Length > CacheSize)
{
CacheSize = Length;
diff --git a/source/compiler/aslcodegen.c b/source/compiler/aslcodegen.c
index 757886893b42..6ae3a0aa202b 100644
--- a/source/compiler/aslcodegen.c
+++ b/source/compiler/aslcodegen.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslcompile.c b/source/compiler/aslcompile.c
index ffb7496dd6fe..c17e219c1a4c 100644
--- a/source/compiler/aslcompile.c
+++ b/source/compiler/aslcompile.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -915,10 +915,11 @@ CmCleanupAndExit (
if (AslGbl_ExceptionCount[ASL_ERROR] > ASL_MAX_ERROR_COUNT)
{
- printf ("\nMaximum error count (%d) exceeded\n",
+ printf ("\nMaximum error count (%d) exceeded (aslcompile.c)\n",
ASL_MAX_ERROR_COUNT);
}
+ AslGbl_ExceptionCount[ASL_ERROR] = 0;
UtDisplaySummary (ASL_FILE_STDOUT);
/*
diff --git a/source/compiler/aslcompiler.h b/source/compiler/aslcompiler.h
index 5112ea49695c..d52f60f2180b 100644
--- a/source/compiler/aslcompiler.h
+++ b/source/compiler/aslcompiler.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslcompiler.l b/source/compiler/aslcompiler.l
index e0985362fb94..881096ad5bbf 100644
--- a/source/compiler/aslcompiler.l
+++ b/source/compiler/aslcompiler.l
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslcstyle.y b/source/compiler/aslcstyle.y
index 2f032fac9d2f..b4e9065fee0f 100644
--- a/source/compiler/aslcstyle.y
+++ b/source/compiler/aslcstyle.y
@@ -9,7 +9,7 @@ NoEcho('
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/asldebug.c b/source/compiler/asldebug.c
index 636fe0518209..5ac6a4ed6059 100644
--- a/source/compiler/asldebug.c
+++ b/source/compiler/asldebug.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/asldefine.h b/source/compiler/asldefine.h
index 9149ff60377b..12b2899e4062 100644
--- a/source/compiler/asldefine.h
+++ b/source/compiler/asldefine.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslerror.c b/source/compiler/aslerror.c
index d73d7de903a1..a0ebe7b34e7d 100644
--- a/source/compiler/aslerror.c
+++ b/source/compiler/aslerror.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -1025,7 +1025,7 @@ AslLogNewError (
AslGbl_ExceptionCount[ModifiedLevel]++;
if (!AslGbl_IgnoreErrors && AslGbl_ExceptionCount[ASL_ERROR] > ASL_MAX_ERROR_COUNT)
{
- printf ("\nMaximum error count (%u) exceeded\n", ASL_MAX_ERROR_COUNT);
+ printf ("\nMaximum error count (%u) exceeded (aslerror.c)\n", ASL_MAX_ERROR_COUNT);
AslGbl_SourceLine = 0;
AslGbl_NextError = AslGbl_ErrorLog;
@@ -1033,6 +1033,7 @@ AslLogNewError (
exit(1);
}
+ AslGbl_ExceptionCount[ASL_ERROR] = 0;
return;
}
diff --git a/source/compiler/aslexternal.c b/source/compiler/aslexternal.c
index 80edfd2bf9fd..a7d2c9c3d36d 100644
--- a/source/compiler/aslexternal.c
+++ b/source/compiler/aslexternal.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslfileio.c b/source/compiler/aslfileio.c
index a55b2dbc293a..88b9def907f2 100644
--- a/source/compiler/aslfileio.c
+++ b/source/compiler/aslfileio.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslfiles.c b/source/compiler/aslfiles.c
index a93417c6de5b..2479b404ee41 100644
--- a/source/compiler/aslfiles.c
+++ b/source/compiler/aslfiles.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -835,8 +835,8 @@ ErrorExit:
* RETURN: Status
*
* DESCRIPTION: Open the specified input file, and save the directory path to
- * the file so that include files can be opened in
- * the same directory.
+ * the file so that include files can be opened in the same
+ * directory. NOTE: File is opened in text mode.
*
******************************************************************************/
diff --git a/source/compiler/aslfold.c b/source/compiler/aslfold.c
index d9cc88035efb..316890c4ac06 100644
--- a/source/compiler/aslfold.c
+++ b/source/compiler/aslfold.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslglobal.h b/source/compiler/aslglobal.h
index 540d7dd9d361..ff00b92ef1ea 100644
--- a/source/compiler/aslglobal.h
+++ b/source/compiler/aslglobal.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslhelp.c b/source/compiler/aslhelp.c
index 3131b9db037d..d83d41e3d584 100644
--- a/source/compiler/aslhelp.c
+++ b/source/compiler/aslhelp.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslhelpers.y b/source/compiler/aslhelpers.y
index abb729c33320..2764bf65b9f7 100644
--- a/source/compiler/aslhelpers.y
+++ b/source/compiler/aslhelpers.y
@@ -9,7 +9,7 @@ NoEcho('
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslhex.c b/source/compiler/aslhex.c
index 95b364ff2268..a6e80fdf57ac 100644
--- a/source/compiler/aslhex.c
+++ b/source/compiler/aslhex.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslkeywords.y b/source/compiler/aslkeywords.y
index 54314e64504e..661cfc9397b0 100644
--- a/source/compiler/aslkeywords.y
+++ b/source/compiler/aslkeywords.y
@@ -9,7 +9,7 @@ NoEcho('
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/asllength.c b/source/compiler/asllength.c
index a2a550949e3b..b1c06246411c 100644
--- a/source/compiler/asllength.c
+++ b/source/compiler/asllength.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/asllisting.c b/source/compiler/asllisting.c
index 6ed161390c43..290d506210e5 100644
--- a/source/compiler/asllisting.c
+++ b/source/compiler/asllisting.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/asllistsup.c b/source/compiler/asllistsup.c
index 60d304230596..b03560d3612a 100644
--- a/source/compiler/asllistsup.c
+++ b/source/compiler/asllistsup.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslload.c b/source/compiler/aslload.c
index f73135f336b0..3f827d0ba4d5 100644
--- a/source/compiler/aslload.c
+++ b/source/compiler/aslload.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/asllookup.c b/source/compiler/asllookup.c
index 50f087d705ed..44bf9a38667a 100644
--- a/source/compiler/asllookup.c
+++ b/source/compiler/asllookup.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslmain.c b/source/compiler/aslmain.c
index 1df36a2b312d..3c2ce58ea0b2 100644
--- a/source/compiler/aslmain.c
+++ b/source/compiler/aslmain.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -417,7 +417,7 @@ AslSignalHandler (
}
printf (ASL_PREFIX "Terminating\n");
- exit (0);
+ _exit (0);
}
diff --git a/source/compiler/aslmap.c b/source/compiler/aslmap.c
index 7b591bc6e8fa..782d0d96cfb4 100644
--- a/source/compiler/aslmap.c
+++ b/source/compiler/aslmap.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -379,8 +379,8 @@ const ASL_MAPPING_ENTRY AslKeywordMapping [] =
/* LLESSEQUAL */ OP_TABLE_ENTRY (AML_LOGICAL_LESS_EQUAL_OP, 0, 0, ACPI_BTYPE_INTEGER),
/* LNOT */ OP_TABLE_ENTRY (AML_LOGICAL_NOT_OP, 0, 0, ACPI_BTYPE_INTEGER),
/* LNOTEQUAL */ OP_TABLE_ENTRY (AML_LOGICAL_NOT_EQUAL_OP, 0, 0, ACPI_BTYPE_INTEGER),
-/* LOAD */ OP_TABLE_ENTRY (AML_LOAD_OP, 0, 0, 0),
-/* LOADTABLE */ OP_TABLE_ENTRY (AML_LOAD_TABLE_OP, 0, 0, ACPI_BTYPE_DDB_HANDLE),
+/* LOAD */ OP_TABLE_ENTRY (AML_LOAD_OP, 0, 0, ACPI_BTYPE_INTEGER),
+/* LOADTABLE */ OP_TABLE_ENTRY (AML_LOAD_TABLE_OP, 0, 0, ACPI_BTYPE_INTEGER),
/* LOCAL0 */ OP_TABLE_ENTRY (AML_LOCAL0, 0, 0, ACPI_BTYPE_OBJECTS_AND_REFS),
/* LOCAL1 */ OP_TABLE_ENTRY (AML_LOCAL1, 0, 0, ACPI_BTYPE_OBJECTS_AND_REFS),
/* LOCAL2 */ OP_TABLE_ENTRY (AML_LOCAL2, 0, 0, ACPI_BTYPE_OBJECTS_AND_REFS),
diff --git a/source/compiler/aslmapenter.c b/source/compiler/aslmapenter.c
index 7ade1a31dbba..5dae3e9ea86b 100644
--- a/source/compiler/aslmapenter.c
+++ b/source/compiler/aslmapenter.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslmapoutput.c b/source/compiler/aslmapoutput.c
index 0fe7b1173dc9..95146ea65fbb 100644
--- a/source/compiler/aslmapoutput.c
+++ b/source/compiler/aslmapoutput.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslmaputils.c b/source/compiler/aslmaputils.c
index c376bc0a2888..0b2c7e2615e9 100644
--- a/source/compiler/aslmaputils.c
+++ b/source/compiler/aslmaputils.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslmessages.c b/source/compiler/aslmessages.c
index 4dd6422ba75a..990e376f76bd 100644
--- a/source/compiler/aslmessages.c
+++ b/source/compiler/aslmessages.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -193,7 +193,8 @@ const char *AslErrorLevelIde [ASL_NUM_REPORT_LEVELS] = {
*
* NOTE2: With the introduction of the -vw option to disable specific messages,
* new messages should only be added to the end of this list, so that values
- * for existing messages are not disturbed.
+ * for existing messages are not disturbed. As important, obsolete messages
+ * cannot be removed from this list, as it will affect the -vw option.
*/
/* ASL compiler */
@@ -410,6 +411,8 @@ const char *AslTableCompilerMsgs [] =
/* ASL_MSG_ENTRY_LIST */ "Invalid entry initializer list",
/* ASL_MSG_UNKNOWN_FORMAT */ "Unknown format value",
/* ASL_MSG_RESERVED_VALUE */ "Value for field is reserved or unknown",
+/* ASL_MSG_TWO_ZERO_VALUES */ "32-bit DSDT Address and 64-bit X_DSDT Address cannot both be zero",
+/* ASL_MSG_BAD_PARSE_TREE */ "Parse tree appears to be ill-defined"
};
/* Preprocessor */
diff --git a/source/compiler/aslmessages.h b/source/compiler/aslmessages.h
index 69c2561bad0f..197e9e2276c0 100644
--- a/source/compiler/aslmessages.h
+++ b/source/compiler/aslmessages.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -412,6 +412,8 @@ typedef enum
ASL_MSG_ENTRY_LIST,
ASL_MSG_UNKNOWN_FORMAT,
ASL_MSG_RESERVED_VALUE,
+ ASL_MSG_TWO_ZERO_VALUES,
+ ASL_MSG_BAD_PARSE_TREE,
/* These messages are used by the Preprocessor only */
diff --git a/source/compiler/aslmethod.c b/source/compiler/aslmethod.c
index 4b3b66a5ab40..517ba778cd8e 100644
--- a/source/compiler/aslmethod.c
+++ b/source/compiler/aslmethod.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslnamesp.c b/source/compiler/aslnamesp.c
index 6f9bb65a4d6c..60c488db05a0 100644
--- a/source/compiler/aslnamesp.c
+++ b/source/compiler/aslnamesp.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/asloffset.c b/source/compiler/asloffset.c
index 5f2661e42107..b0954c70105c 100644
--- a/source/compiler/asloffset.c
+++ b/source/compiler/asloffset.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslopcodes.c b/source/compiler/aslopcodes.c
index 2f2c77446c22..e07910b1f5f6 100644
--- a/source/compiler/aslopcodes.c
+++ b/source/compiler/aslopcodes.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/asloperands.c b/source/compiler/asloperands.c
index ae3b918dffda..9330fdfb4244 100644
--- a/source/compiler/asloperands.c
+++ b/source/compiler/asloperands.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -429,6 +429,11 @@ OpnDoFieldCommon (
Next->Asl.ParseOpcode = PARSEOP_DEFAULT_ARG;
PkgLengthNode->Asl.ParseOpcode = PARSEOP_DEFAULT_ARG;
}
+#ifdef _OBSOLETE_CODE
+ /*
+ * January 2022: removed this check due to complaints by users
+ * for too many (invalid) remarks.
+ */
else if (NewBitOffset == CurrentBitOffset)
{
/*
@@ -459,6 +464,7 @@ OpnDoFieldCommon (
CurrentBitOffset = NewBitOffset;
}
}
+#endif
else
{
/*
diff --git a/source/compiler/aslopt.c b/source/compiler/aslopt.c
index 0246b312a9f6..916aebfba1cd 100644
--- a/source/compiler/aslopt.c
+++ b/source/compiler/aslopt.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/asloptions.c b/source/compiler/asloptions.c
index ab9daa4046d4..2808650e3dd0 100644
--- a/source/compiler/asloptions.c
+++ b/source/compiler/asloptions.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslparseop.c b/source/compiler/aslparseop.c
index 92eeb0fb6260..ab81ac286e7d 100644
--- a/source/compiler/aslparseop.c
+++ b/source/compiler/aslparseop.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslparser.y b/source/compiler/aslparser.y
index 0a6fb64d62d8..dff15619283b 100644
--- a/source/compiler/aslparser.y
+++ b/source/compiler/aslparser.y
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslpld.c b/source/compiler/aslpld.c
index 0939c5c62d8c..9faa8c263d6f 100644
--- a/source/compiler/aslpld.c
+++ b/source/compiler/aslpld.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslpredef.c b/source/compiler/aslpredef.c
index aa1a95704dfe..c52295ee854b 100644
--- a/source/compiler/aslpredef.c
+++ b/source/compiler/aslpredef.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslprepkg.c b/source/compiler/aslprepkg.c
index 380c48b01ab0..f562dbe6b820 100644
--- a/source/compiler/aslprepkg.c
+++ b/source/compiler/aslprepkg.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslprimaries.y b/source/compiler/aslprimaries.y
index dd1310b07469..69565defe405 100644
--- a/source/compiler/aslprimaries.y
+++ b/source/compiler/aslprimaries.y
@@ -11,7 +11,7 @@ NoEcho('
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -843,7 +843,7 @@ LoadTerm
: PARSEOP_LOAD
PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_LOAD);}
NameString
- RequiredTarget
+ Target
PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
| PARSEOP_LOAD
PARSEOP_OPEN_PAREN
diff --git a/source/compiler/aslprintf.c b/source/compiler/aslprintf.c
index 04f2d31eaee5..3f270fec9da8 100644
--- a/source/compiler/aslprintf.c
+++ b/source/compiler/aslprintf.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslprune.c b/source/compiler/aslprune.c
index 78b2e34f5c61..4626a1eef08d 100644
--- a/source/compiler/aslprune.c
+++ b/source/compiler/aslprune.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslresource.c b/source/compiler/aslresource.c
index a2d855684d6b..104a48357372 100644
--- a/source/compiler/aslresource.c
+++ b/source/compiler/aslresource.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslresources.y b/source/compiler/aslresources.y
index 86c8981f79b6..a5752b01c04f 100644
--- a/source/compiler/aslresources.y
+++ b/source/compiler/aslresources.y
@@ -11,7 +11,7 @@ NoEcho('
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslrestype1.c b/source/compiler/aslrestype1.c
index 6751444a2afc..a6625c08c9cd 100644
--- a/source/compiler/aslrestype1.c
+++ b/source/compiler/aslrestype1.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslrestype1i.c b/source/compiler/aslrestype1i.c
index c880a7400221..84d5b653fe8b 100644
--- a/source/compiler/aslrestype1i.c
+++ b/source/compiler/aslrestype1i.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslrestype2.c b/source/compiler/aslrestype2.c
index 4c308aaacf4f..387e85c80e41 100644
--- a/source/compiler/aslrestype2.c
+++ b/source/compiler/aslrestype2.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslrestype2d.c b/source/compiler/aslrestype2d.c
index c1cafe207d73..6b597e257758 100644
--- a/source/compiler/aslrestype2d.c
+++ b/source/compiler/aslrestype2d.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslrestype2e.c b/source/compiler/aslrestype2e.c
index 63db785270e2..414b2d23f851 100644
--- a/source/compiler/aslrestype2e.c
+++ b/source/compiler/aslrestype2e.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslrestype2q.c b/source/compiler/aslrestype2q.c
index ec64da2b3616..ce79659720ee 100644
--- a/source/compiler/aslrestype2q.c
+++ b/source/compiler/aslrestype2q.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslrestype2s.c b/source/compiler/aslrestype2s.c
index 607aca8be350..ea832da3db2c 100644
--- a/source/compiler/aslrestype2s.c
+++ b/source/compiler/aslrestype2s.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslrestype2w.c b/source/compiler/aslrestype2w.c
index 3c3fed7b06a7..a758e0581d38 100644
--- a/source/compiler/aslrestype2w.c
+++ b/source/compiler/aslrestype2w.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslrules.y b/source/compiler/aslrules.y
index a944308e39c2..79aa2210abb8 100644
--- a/source/compiler/aslrules.y
+++ b/source/compiler/aslrules.y
@@ -11,7 +11,7 @@ NoEcho('
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -261,11 +261,11 @@ Target
| ',' {$$ = TrCreateNullTargetOp ();} /* Placeholder is a ZeroOp object */
| ',' SuperName {$$ = TrSetOpFlags ($2, OP_IS_TARGET);}
;
-
+/*
RequiredTarget
: ',' SuperName {$$ = TrSetOpFlags ($2, OP_IS_TARGET);}
;
-
+*/
TermArg
: SimpleName {$$ = TrSetOpFlags ($1, OP_IS_TERM_ARG);}
| Type2Opcode {$$ = TrSetOpFlags ($1, OP_IS_TERM_ARG);}
@@ -715,7 +715,6 @@ Type1Opcode
| FatalTerm {}
| ForTerm {}
| ElseIfTerm {}
- | LoadTerm {}
| NoOpTerm {}
| NotifyTerm {}
| ReleaseTerm {}
@@ -734,6 +733,7 @@ Type2Opcode
| CondRefOfTerm {}
| CopyObjectTerm {}
| DerefOfTerm {}
+ | LoadTerm {} /* Moved from Type1 -- now returns an integer (ACPI 6.4) */
| ObjectTypeTerm {}
| RefOfTerm {}
| SizeOfTerm {}
diff --git a/source/compiler/aslstartup.c b/source/compiler/aslstartup.c
index 97881e14d288..45462adf9519 100644
--- a/source/compiler/aslstartup.c
+++ b/source/compiler/aslstartup.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -293,9 +293,17 @@ AslDetectSourceFileType (
goto Cleanup;
}
- /* We have some sort of binary table, check for valid ACPI table */
-
- fseek (Info->Handle, 0, SEEK_SET);
+ /*
+ * We have some sort of binary table; reopen in binary mode, then
+ * check for valid ACPI table
+ */
+ fclose (Info->Handle);
+ Info->Handle = fopen (Info->Filename, "rb");
+ if (!Info->Handle)
+ {
+ fprintf (stderr, "Could not open input file %s\n",
+ Info->Filename);
+ }
Status = AcValidateTableHeader (Info->Handle, 0);
if (ACPI_SUCCESS (Status))
@@ -446,8 +454,9 @@ AslDoOneFile (
UtConvertBackslashes (AslGbl_Files[ASL_FILE_INPUT].Filename);
/*
- * Open the input file. Here, this should be an ASCII source file,
- * either an ASL file or a Data Table file
+ * Open the input file. Here, this could be an ASCII source file,
+ * either an ASL file or a Data Table file, or a binary AML file
+ * or binary data table file (For disassembly).
*/
Status = FlOpenInputFile (AslGbl_Files[ASL_FILE_INPUT].Filename);
if (ACPI_FAILURE (Status))
@@ -458,8 +467,6 @@ AslDoOneFile (
FileNode = FlGetCurrentFileNode();
- FileNode->OriginalInputFileSize = FlGetFileSize (ASL_FILE_INPUT);
-
/* Determine input file type */
AslGbl_FileType = AslDetectSourceFileType (&AslGbl_Files[ASL_FILE_INPUT]);
@@ -469,6 +476,8 @@ AslDoOneFile (
return (AE_ERROR);
}
+ FileNode->OriginalInputFileSize = FlGetFileSize (ASL_FILE_INPUT);
+
/*
* If -p not specified, we will use the input filename as the
* output filename prefix
diff --git a/source/compiler/aslstubs.c b/source/compiler/aslstubs.c
index be3337ab8a99..0e6cd56f48e7 100644
--- a/source/compiler/aslstubs.c
+++ b/source/compiler/aslstubs.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslsupport.l b/source/compiler/aslsupport.l
index a507e99b3327..0daec602e148 100644
--- a/source/compiler/aslsupport.l
+++ b/source/compiler/aslsupport.l
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslsupport.y b/source/compiler/aslsupport.y
index dfc427a9d796..3f19af2f48b1 100644
--- a/source/compiler/aslsupport.y
+++ b/source/compiler/aslsupport.y
@@ -9,7 +9,7 @@ NoEcho('
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/asltokens.y b/source/compiler/asltokens.y
index 5e205e01de3c..c43561e7a4a3 100644
--- a/source/compiler/asltokens.y
+++ b/source/compiler/asltokens.y
@@ -9,7 +9,7 @@ NoEcho('
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/asltransform.c b/source/compiler/asltransform.c
index 91655420fee8..573ddad1565f 100644
--- a/source/compiler/asltransform.c
+++ b/source/compiler/asltransform.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/asltree.c b/source/compiler/asltree.c
index 91db420f949a..9cf49269f377 100644
--- a/source/compiler/asltree.c
+++ b/source/compiler/asltree.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/asltypes.h b/source/compiler/asltypes.h
index 760995f59fea..d5689dea58b0 100644
--- a/source/compiler/asltypes.h
+++ b/source/compiler/asltypes.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/asltypes.y b/source/compiler/asltypes.y
index aaa732f4dc45..ba98362cd323 100644
--- a/source/compiler/asltypes.y
+++ b/source/compiler/asltypes.y
@@ -9,7 +9,7 @@ NoEcho('
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -175,7 +175,9 @@ NoEcho('
%type <n> ParameterTypePackageList
%type <n> ParameterTypesPackage
%type <n> ParameterTypesPackageList
+/*
%type <n> RequiredTarget
+*/
%type <n> SimpleName
%type <n> StringData
%type <n> StringLiteral
diff --git a/source/compiler/aslutils.c b/source/compiler/aslutils.c
index c4325c3b253a..e91fd4602c26 100644
--- a/source/compiler/aslutils.c
+++ b/source/compiler/aslutils.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/asluuid.c b/source/compiler/asluuid.c
index 30540acdaeaa..0eb36050e882 100644
--- a/source/compiler/asluuid.c
+++ b/source/compiler/asluuid.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -211,4 +211,3 @@ AuValidateUuid (
return (AE_OK);
}
-
diff --git a/source/compiler/aslwalks.c b/source/compiler/aslwalks.c
index 8ee5122c21f1..6e32f0818725 100644
--- a/source/compiler/aslwalks.c
+++ b/source/compiler/aslwalks.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslxref.c b/source/compiler/aslxref.c
index ef99a971de5b..3a00f5a92cbc 100644
--- a/source/compiler/aslxref.c
+++ b/source/compiler/aslxref.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslxrefout.c b/source/compiler/aslxrefout.c
index 843504a02543..dd3fe80c275f 100644
--- a/source/compiler/aslxrefout.c
+++ b/source/compiler/aslxrefout.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/cvcompiler.c b/source/compiler/cvcompiler.c
index 633a31d893ff..b51a688b3a59 100644
--- a/source/compiler/cvcompiler.c
+++ b/source/compiler/cvcompiler.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/cvdisasm.c b/source/compiler/cvdisasm.c
index be3378ba9ae4..250c009ac315 100644
--- a/source/compiler/cvdisasm.c
+++ b/source/compiler/cvdisasm.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/cvparser.c b/source/compiler/cvparser.c
index 62d981fbdd1f..66b04e9a8597 100644
--- a/source/compiler/cvparser.c
+++ b/source/compiler/cvparser.c
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/dtcompile.c b/source/compiler/dtcompile.c
index 84d8e5c1b629..89eb937d5fc3 100644
--- a/source/compiler/dtcompile.c
+++ b/source/compiler/dtcompile.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/dtcompiler.h b/source/compiler/dtcompiler.h
index 614a686f1ad4..3b3683cc6b74 100644
--- a/source/compiler/dtcompiler.h
+++ b/source/compiler/dtcompiler.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -570,6 +570,10 @@ DtCompileAest (
void **PFieldList);
ACPI_STATUS
+DtCompileApmt (
+ void **PFieldList);
+
+ACPI_STATUS
DtCompileAsf (
void **PFieldList);
@@ -762,6 +766,8 @@ DtGetGenericTableInfo (
/* ACPI Table templates */
extern const unsigned char TemplateAest[];
+extern const unsigned char TemplateAgdi[];
+extern const unsigned char TemplateApmt[];
extern const unsigned char TemplateAsf[];
extern const unsigned char TemplateBoot[];
extern const unsigned char TemplateBdat[];
@@ -793,6 +799,7 @@ extern const unsigned char TemplateMpst[];
extern const unsigned char TemplateMsct[];
extern const unsigned char TemplateMsdm[];
extern const unsigned char TemplateNfit[];
+extern const unsigned char TemplateNhlt[];
extern const unsigned char TemplatePcct[];
extern const unsigned char TemplatePdtt[];
extern const unsigned char TemplatePhat[];
@@ -814,6 +821,7 @@ extern const unsigned char TemplateSrat[];
extern const unsigned char TemplateStao[];
extern const unsigned char TemplateSvkl[];
extern const unsigned char TemplateTcpa[];
+extern const unsigned char TemplateTdel[];
extern const unsigned char TemplateTpm2[];
extern const unsigned char TemplateUefi[];
extern const unsigned char TemplateViot[];
diff --git a/source/compiler/dtcompilerparser.l b/source/compiler/dtcompilerparser.l
index bd128bed71ad..a00ef56e2481 100644
--- a/source/compiler/dtcompilerparser.l
+++ b/source/compiler/dtcompilerparser.l
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/dtcompilerparser.y b/source/compiler/dtcompilerparser.y
index 3b1a67a0707a..30ead3afa9ad 100644
--- a/source/compiler/dtcompilerparser.y
+++ b/source/compiler/dtcompilerparser.y
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/dtexpress.c b/source/compiler/dtexpress.c
index c9705c9d0f7e..fd292d8fec76 100644
--- a/source/compiler/dtexpress.c
+++ b/source/compiler/dtexpress.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/dtfield.c b/source/compiler/dtfield.c
index f4c7114743cb..f931631955c2 100644
--- a/source/compiler/dtfield.c
+++ b/source/compiler/dtfield.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -676,6 +676,12 @@ DtCompileFlag (
BitLength = 2;
break;
+ case ACPI_DMT_FLAGS8_2:
+
+ BitPosition = 2;
+ BitLength = 8;
+ break;
+
case ACPI_DMT_FLAGS4:
BitPosition = 4;
diff --git a/source/compiler/dtio.c b/source/compiler/dtio.c
index e1776f3f2919..1a00424c6abf 100644
--- a/source/compiler/dtio.c
+++ b/source/compiler/dtio.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/dtparser.l b/source/compiler/dtparser.l
index 9d2e3afe4283..b7cb26e2ba32 100644
--- a/source/compiler/dtparser.l
+++ b/source/compiler/dtparser.l
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/dtparser.y b/source/compiler/dtparser.y
index 1b6f6df6138f..fc8275cc209c 100644
--- a/source/compiler/dtparser.y
+++ b/source/compiler/dtparser.y
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/dtsubtable.c b/source/compiler/dtsubtable.c
index 6ea538e6c66b..3c2798b64dbd 100644
--- a/source/compiler/dtsubtable.c
+++ b/source/compiler/dtsubtable.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/dttable.c b/source/compiler/dttable.c
index 702c83ee2196..dfc34c134667 100644
--- a/source/compiler/dttable.c
+++ b/source/compiler/dttable.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -223,10 +223,12 @@ DtCompileRsdp (
*
* RETURN: Status
*
- * DESCRIPTION: Compile FADT.
+ * DESCRIPTION: Compile FADT (signature FACP).
*
*****************************************************************************/
+#define ACPI_XDSDT_LOCATION_IN_LIST 11
+
ACPI_STATUS
DtCompileFadt (
void **List)
@@ -235,10 +237,17 @@ DtCompileFadt (
DT_SUBTABLE *Subtable;
DT_SUBTABLE *ParentTable;
DT_FIELD **PFieldList = (DT_FIELD **) List;
- ACPI_TABLE_HEADER *Table;
+ DT_FIELD *DsdtFieldList;
+ ACPI_TABLE_FADT *Table;
UINT8 Revision;
+ UINT32 DsdtAddress;
+ UINT64 X_DsdtAddress;
+ UINT32 i;
+
+ /* Get the table revision and 32-bit DSDT Address definition */
+ DsdtFieldList = (*PFieldList)->Next;
Status = DtCompileTable (PFieldList, AcpiDmTableInfoFadt1,
&Subtable);
if (ACPI_FAILURE (Status))
@@ -249,8 +258,16 @@ DtCompileFadt (
ParentTable = DtPeekSubtable ();
DtInsertSubtable (ParentTable, Subtable);
- Table = ACPI_CAST_PTR (ACPI_TABLE_HEADER, ParentTable->Buffer);
- Revision = Table->Revision;
+ Table = ACPI_CAST_PTR (ACPI_TABLE_FADT, ParentTable->Buffer);
+ Revision = Table->Header.Revision;
+ DsdtAddress = Table->Dsdt;
+
+ /* FADT version 1 has only 32-bit addresses - error if DSDT address is NULL */
+
+ if ((Revision == 1) && (!DsdtAddress))
+ {
+ DtError (ASL_ERROR, ASL_MSG_ZERO_VALUE, DsdtFieldList, NULL);
+ }
if (Revision == 2)
{
@@ -263,8 +280,24 @@ DtCompileFadt (
DtInsertSubtable (ParentTable, Subtable);
}
- else if (Revision >= 2)
+
+ else if (Revision > 2)
{
+ /*
+ * Rev 3 and greater have 64-bit addresses (as well as 32-bit).
+ * Get the 64-bit DSDT (X_DSDT) Address definition. Note: This
+ * appears at field list offset 11 within AcpiDmTableInfoFadt3.
+ */
+ DsdtFieldList = *PFieldList;
+ for (i = 0; i < ACPI_XDSDT_LOCATION_IN_LIST; i++)
+ {
+ DsdtFieldList = DsdtFieldList->Next;
+ if (!DsdtFieldList)
+ {
+ return (ASL_MSG_BAD_PARSE_TREE);
+ }
+ }
+
Status = DtCompileTable (PFieldList, AcpiDmTableInfoFadt3,
&Subtable);
if (ACPI_FAILURE (Status))
@@ -274,6 +307,20 @@ DtCompileFadt (
DtInsertSubtable (ParentTable, Subtable);
+ Table = ACPI_CAST_PTR (ACPI_TABLE_FADT, ParentTable->Buffer);
+ X_DsdtAddress = Table->XDsdt;
+
+ /*
+ * Error if both the 32-bit DSDT address and the
+ * 64-bit X_DSDT address are zero.
+ */
+ if ((!X_DsdtAddress) && (!DsdtAddress))
+ {
+ DtError (ASL_ERROR, ASL_MSG_TWO_ZERO_VALUES, DsdtFieldList, NULL);
+ }
+
+ /* Fields specific to FADT Revision 5 (appended to previous) */
+
if (Revision >= 5)
{
Status = DtCompileTable (PFieldList, AcpiDmTableInfoFadt5,
@@ -286,6 +333,8 @@ DtCompileFadt (
DtInsertSubtable (ParentTable, Subtable);
}
+ /* Fields specific to FADT Revision 6 (appended to previous) */
+
if (Revision >= 6)
{
Status = DtCompileTable (PFieldList, AcpiDmTableInfoFadt6,
diff --git a/source/compiler/dttable1.c b/source/compiler/dttable1.c
index 2e6a856912cd..9ac0435069f6 100644
--- a/source/compiler/dttable1.c
+++ b/source/compiler/dttable1.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -389,6 +389,102 @@ DtCompileAest (
/******************************************************************************
*
+ * FUNCTION: DtCompileApmt
+ *
+ * PARAMETERS: List - Current field list pointer
+ *
+ * RETURN: Status
+ *
+ * DESCRIPTION: Compile APMT.
+ *
+ *****************************************************************************/
+
+ACPI_STATUS
+DtCompileApmt (
+ void **List)
+{
+ ACPI_STATUS Status;
+ ACPI_TABLE_HEADER *Header;
+ ACPI_APMT_NODE *ApmtNode;
+ ACPI_APMT_NODE *PeerApmtNode;
+ DT_SUBTABLE *Subtable;
+ DT_SUBTABLE *PeerSubtable;
+ DT_SUBTABLE *ParentTable;
+ DT_FIELD **PFieldList = (DT_FIELD**)List;
+ DT_FIELD *SubtableStart;
+ UINT32 CurLength;
+ char MsgBuffer[64] = "";
+
+ ParentTable = DtPeekSubtable();
+
+ Header = ACPI_CAST_PTR(ACPI_TABLE_HEADER, ParentTable->Buffer);
+
+ CurLength = sizeof(ACPI_TABLE_HEADER);
+
+ /* Walk the parse tree */
+
+ while (*PFieldList)
+ {
+ /* APMT Node Subtable */
+
+ SubtableStart = *PFieldList;
+
+ Status = DtCompileTable(PFieldList, AcpiDmTableInfoApmtNode, &Subtable);
+
+ if (ACPI_FAILURE(Status))
+ {
+ return (Status);
+ }
+
+ ApmtNode = ACPI_CAST_PTR(ACPI_APMT_NODE, Subtable->Buffer);
+
+ if (ApmtNode->Length != sizeof(ACPI_APMT_NODE))
+ {
+ DtFatal(ASL_MSG_INVALID_LENGTH, SubtableStart, "APMT");
+ return (AE_ERROR);
+ }
+
+ if (ApmtNode->Type >= ACPI_APMT_NODE_TYPE_COUNT)
+ {
+ snprintf(MsgBuffer, 64, "Node Type : 0x%X", ApmtNode->Type);
+ DtFatal(ASL_MSG_INVALID_TYPE, SubtableStart, MsgBuffer);
+ return (AE_ERROR);
+ }
+
+ PeerSubtable = DtGetNextSubtable(ParentTable, NULL);
+
+ /* Validate the node id needs to be unique. */
+ while(PeerSubtable)
+ {
+ PeerApmtNode = ACPI_CAST_PTR(ACPI_APMT_NODE, PeerSubtable->Buffer);
+ if (PeerApmtNode->Id == ApmtNode->Id)
+ {
+ snprintf(MsgBuffer, 64, "Node Id : 0x%X existed", ApmtNode->Id);
+ DtFatal(ASL_MSG_DUPLICATE_ITEM, SubtableStart, MsgBuffer);
+ return (AE_ERROR);
+ }
+
+ PeerSubtable = DtGetNextSubtable(ParentTable, PeerSubtable);
+ }
+
+ CurLength += ApmtNode->Length;
+
+ DtInsertSubtable(ParentTable, Subtable);
+ }
+
+ if (Header->Length != CurLength)
+ {
+ snprintf(MsgBuffer, 64, " - APMT Length : %u (expected: %u)",
+ Header->Length, CurLength);
+ DtFatal(ASL_MSG_INVALID_LENGTH, NULL, MsgBuffer);
+ return (AE_ERROR);
+ }
+
+ return (AE_OK);
+}
+
+/******************************************************************************
+ *
* FUNCTION: DtCompileAsf
*
* PARAMETERS: List - Current field list pointer
@@ -587,6 +683,9 @@ DtCompileCedt (
while (*PFieldList)
{
+ /* if CFMWS and has more than one target, then set to zero later */
+
+ int InsertFlag = 1;
SubtableStart = *PFieldList;
/* CEDT Header */
@@ -607,25 +706,72 @@ DtCompileCedt (
switch (CedtHeader->Type)
{
case ACPI_CEDT_TYPE_CHBS:
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoCedt0, &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+ break;
+ case ACPI_CEDT_TYPE_CFMWS: {
+ unsigned char *dump;
+ unsigned int idx, offset, max = 0;
+
+ /* Compile table with first "Interleave target" */
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoCedt1, &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
+ /* Look in buffer for the number of targets */
+ offset = (unsigned int) ACPI_OFFSET (ACPI_CEDT_CFMWS, InterleaveWays);
+ dump = (unsigned char *) Subtable->Buffer - 4; /* place at beginning of cedt1 */
+ max = 0x01 << dump[offset]; /* 2^max, so 0=1, 1=2, 2=4, 3=8. 8 is MAX */
+ if (max > 8) max=1; /* Error in encoding Interleaving Ways. */
+ if (max == 1) /* if only one target, then break here. */
+ break; /* break if only one target. */
+
+ /* We need to add more interleave targets, so write the current Subtable. */
+
+ ParentTable = DtPeekSubtable ();
+ DtInsertSubtable (ParentTable, Subtable); /* Insert AcpiDmTableInfoCedt1 table so we can put in */
+ DtPushSubtable (Subtable); /* the targets > the first. */
+
+ /* Now, find out all interleave targets beyond the first. */
+
+ for (idx = 1; idx < max; idx++) {
+ ParentTable = DtPeekSubtable ();
+
+ if (*PFieldList)
+ {
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoCedt1_te, &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+ if (Subtable)
+ {
+ DtInsertSubtable (ParentTable, Subtable); /* got a target, so insert table. */
+ InsertFlag = 0;
+ }
+ }
+ }
+
+ DtPopSubtable ();
+ ParentTable = DtPeekSubtable ();
break;
+ }
default:
-
DtFatal (ASL_MSG_UNKNOWN_SUBTABLE, SubtableStart, "CEDT");
return (AE_ERROR);
}
- /* CEDT Subtable */
-
- Status = DtCompileTable (PFieldList, AcpiDmTableInfoCedt0, &Subtable);
- if (ACPI_FAILURE (Status))
- {
- return (Status);
- }
-
ParentTable = DtPeekSubtable ();
- DtInsertSubtable (ParentTable, Subtable);
+ if (InsertFlag == 1) {
+ DtInsertSubtable (ParentTable, Subtable);
+ }
DtPopSubtable ();
}
@@ -1005,6 +1151,11 @@ DtCompileDmar (
InfoTable = AcpiDmTableInfoDmar4;
break;
+ case ACPI_DMAR_TYPE_SATC:
+
+ InfoTable = AcpiDmTableInfoDmar5;
+ break;
+
default:
DtFatal (ASL_MSG_UNKNOWN_SUBTABLE, SubtableStart, "DMAR");
@@ -1903,9 +2054,9 @@ DtCompileIort (
Table = ACPI_CAST_PTR (ACPI_TABLE_HEADER, ParentTable->Buffer);
Revision = Table->Revision;
- /* Both IORT Rev E and E.a have known issues and are not supported */
+ /* IORT Revisions E, E.a & E.c have known issues and are not supported */
- if (Revision == 1 || Revision == 2)
+ if (Revision == 1 || Revision == 2 || Revision == 4)
{
DtError (ASL_ERROR, ASL_MSG_UNSUPPORTED, NULL, "IORT table revision");
return (AE_ERROR);
@@ -2218,7 +2369,7 @@ DtCompileIort (
IortRmr->RmrCount = RmrCount;
break;
- default:
+ default:
DtFatal (ASL_MSG_UNKNOWN_SUBTABLE, SubtableStart, "IORT");
return (AE_ERROR);
diff --git a/source/compiler/dttable2.c b/source/compiler/dttable2.c
index b94451229e47..1798a963e744 100644
--- a/source/compiler/dttable2.c
+++ b/source/compiler/dttable2.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -373,8 +373,17 @@ DtCompileMadt (
default:
- DtFatal (ASL_MSG_UNKNOWN_SUBTABLE, SubtableStart, "MADT");
- return (AE_ERROR);
+ if (MadtHeader->Type >= ACPI_MADT_TYPE_OEM_RESERVED)
+ {
+ InfoTable = AcpiDmTableInfoMadt17;
+ }
+ else
+ {
+ DtFatal (ASL_MSG_UNKNOWN_SUBTABLE, SubtableStart, "MADT");
+ return (AE_ERROR);
+ }
+
+ break;
}
Status = DtCompileTable (PFieldList, InfoTable, &Subtable);
@@ -783,6 +792,394 @@ DtCompileNfit (
/******************************************************************************
*
+ * FUNCTION: DtCompileNhlt
+ *
+ * PARAMETERS: List - Current field list pointer
+ *
+ * RETURN: Status
+ *
+ * DESCRIPTION: Compile NHLT.
+ *
+ *****************************************************************************/
+
+ACPI_STATUS
+DtCompileNhlt (
+ void **List)
+{
+ ACPI_STATUS Status;
+ UINT32 EndpointCount;
+ UINT32 MicrophoneCount;
+ UINT32 FormatsCount;
+ DT_SUBTABLE *Subtable;
+ DT_SUBTABLE *ParentTable;
+ DT_FIELD **PFieldList = (DT_FIELD **) List;
+ UINT32 CapabilitiesSize;
+ UINT8 ArrayType;
+ UINT8 ConfigType;
+ UINT8 DeviceInfoCount;
+ UINT32 i;
+ UINT32 j;
+ ACPI_TABLE_NHLT_ENDPOINT_COUNT *MainTable;
+ ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_A *DevSpecific;
+ ACPI_NHLT_VENDOR_MIC_COUNT *MicCount;
+ ACPI_NHLT_FORMATS_CONFIG *FormatsConfig;
+ ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_D *ConfigSpecific;
+ ACPI_NHLT_DEVICE_INFO_COUNT *DeviceInfo;
+
+
+ /* Main table */
+
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoNhlt,
+ &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
+ /* Get the Endpoint Descriptor count */
+
+ ParentTable = DtPeekSubtable ();
+ DtInsertSubtable (ParentTable, Subtable);
+ DtPushSubtable (Subtable);
+
+ MainTable = ACPI_CAST_PTR (ACPI_TABLE_NHLT_ENDPOINT_COUNT, Subtable->Buffer);
+ EndpointCount = MainTable->EndpointCount;
+
+ /* Subtables */
+
+ while (*PFieldList)
+ {
+ /* Variable number of Endpoint descriptors */
+
+ for (i = 0; i < EndpointCount; i++)
+ {
+ /* Do the Endpoint Descriptor */
+
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoNhlt0,
+ &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
+ ParentTable = DtPeekSubtable ();
+ DtInsertSubtable (ParentTable, Subtable);
+ DtPushSubtable (Subtable);
+
+ /* Do the Device Specific table */
+
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoNhlt5b,
+ &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
+ ParentTable = DtPeekSubtable ();
+ DtInsertSubtable (ParentTable, Subtable);
+ DtPushSubtable (Subtable);
+
+ DevSpecific = ACPI_CAST_PTR (ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_A, Subtable->Buffer);
+ CapabilitiesSize = DevSpecific->CapabilitiesSize;
+
+ ArrayType = 0;
+ ConfigType = 0;
+
+ switch (CapabilitiesSize)
+ {
+ case 0:
+ break;
+
+ case 1:
+
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoNhlt5c,
+ &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
+ ParentTable = DtPeekSubtable ();
+ DtInsertSubtable (ParentTable, Subtable);
+ break;
+
+ case 2:
+
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoNhlt5,
+ &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
+ ParentTable = DtPeekSubtable ();
+ DtInsertSubtable (ParentTable, Subtable);
+ break;
+
+ case 3:
+
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoNhlt5a,
+ &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
+ ParentTable = DtPeekSubtable ();
+ DtInsertSubtable (ParentTable, Subtable);
+
+ ConfigSpecific = ACPI_CAST_PTR (ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_D, Subtable->Buffer);
+ ArrayType = ConfigSpecific->ArrayType;
+ ConfigType = ConfigSpecific->ConfigType;
+ break;
+
+ case 7:
+
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoNhlt5,
+ &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
+ ParentTable = DtPeekSubtable ();
+ DtInsertSubtable (ParentTable, Subtable);
+
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoNhlt6b,
+ &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
+ ParentTable = DtPeekSubtable ();
+ DtInsertSubtable (ParentTable, Subtable);
+
+ ConfigSpecific = ACPI_CAST_PTR (ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_D, Subtable->Buffer);
+ ArrayType = ConfigSpecific->ArrayType;
+ ConfigType = ConfigSpecific->ConfigType;
+ break;
+
+ default:
+
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoNhlt5a,
+ &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
+ ParentTable = DtPeekSubtable ();
+ DtInsertSubtable (ParentTable, Subtable);
+
+ ConfigSpecific = ACPI_CAST_PTR (ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_D, Subtable->Buffer);
+ ArrayType = ConfigSpecific->ArrayType;
+ ConfigType = ConfigSpecific->ConfigType;
+ break;
+
+ } /* switch (CapabilitiesSize) */
+
+ if (CapabilitiesSize >= 3)
+ {
+ /* Check for a vendor-defined mic array */
+
+ if (ConfigType == ACPI_NHLT_CONFIG_TYPE_MIC_ARRAY)
+ {
+ if ((ArrayType & ACPI_NHLT_ARRAY_TYPE_MASK) == ACPI_NHLT_VENDOR_DEFINED)
+ {
+ /* Get the microphone count */
+
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoNhlt6a,
+ &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
+ MicCount = ACPI_CAST_PTR (ACPI_NHLT_VENDOR_MIC_COUNT, Subtable->Buffer);
+ MicrophoneCount = MicCount->MicrophoneCount;
+
+ ParentTable = DtPeekSubtable ();
+ DtInsertSubtable (ParentTable, Subtable);
+
+ /* Variable number of microphones */
+
+ for (j = 0; j < MicrophoneCount; j++)
+ {
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoNhlt6,
+ &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
+ ParentTable = DtPeekSubtable ();
+ DtInsertSubtable (ParentTable, Subtable);
+ }
+
+ /* Do the MIC_SNR_SENSITIVITY_EXTENSION, if present */
+
+ if (ArrayType & ACPI_NHLT_ARRAY_TYPE_EXT_MASK)
+ {
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoNhlt9,
+ &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
+ ParentTable = DtPeekSubtable ();
+ DtInsertSubtable (ParentTable, Subtable);
+ }
+ }
+ }
+ }
+
+ /* Get the formats count */
+
+ DtPopSubtable ();
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoNhlt4,
+ &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
+ ParentTable = DtPeekSubtable ();
+ DtInsertSubtable (ParentTable, Subtable);
+
+ FormatsConfig = ACPI_CAST_PTR (ACPI_NHLT_FORMATS_CONFIG, Subtable->Buffer);
+ FormatsCount = FormatsConfig->FormatsCount;
+
+ /* Variable number of wave_format_extensible structs */
+
+ for (j = 0; j < FormatsCount; j++)
+ {
+ /* Do the main wave_format_extensible structure */
+
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoNhlt3,
+ &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
+ ParentTable = DtPeekSubtable ();
+ DtInsertSubtable (ParentTable, Subtable);
+ DtPushSubtable (Subtable);
+
+ /* Do the capabilities list */
+
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoNhlt3a,
+ &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
+ DtPopSubtable ();
+ ParentTable = DtPeekSubtable ();
+ DtInsertSubtable (ParentTable, Subtable);
+
+ } /* for (j = 0; j < FormatsCount; j++) */
+
+ /*
+ * If we are not done with the current Endpoint yet, then there must be
+ * some non documeneted structure(s) yet to be processed. First, get
+ * the count of such structure(s).
+ */
+ if (*PFieldList && (strcmp ((const char *) (*PFieldList)->Name, "Descriptor Length")))
+ {
+ /* Get the count of non documented structures */
+
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoNhlt7,
+ &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
+ ParentTable = DtPeekSubtable ();
+ DtInsertSubtable (ParentTable, Subtable);
+
+ DeviceInfo = ACPI_CAST_PTR (ACPI_NHLT_DEVICE_INFO_COUNT, Subtable->Buffer);
+ DeviceInfoCount = DeviceInfo->StructureCount;
+
+ for (j = 0; j < DeviceInfoCount; j++)
+ {
+ /*
+ * Compile the following Device Info fields:
+ * 1) Device ID
+ * 2) Device Instance ID
+ * 3) Device Port ID
+ */
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoNhlt7a,
+ &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
+ ParentTable = DtPeekSubtable ();
+ DtInsertSubtable (ParentTable, Subtable);
+ } /* for (j = 0; j < LinuxSpecificCount; j++) */
+
+
+ /* Undocumented data at the end of endpoint */
+ if (*PFieldList && (strcmp ((const char *) (*PFieldList)->Name, "Descriptor Length")))
+ {
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoNhlt7b,
+ &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
+ ParentTable = DtPeekSubtable ();
+ DtInsertSubtable (ParentTable, Subtable);
+ }
+ }
+
+ DtPopSubtable ();
+
+ } /* for (i = 0; i < EndpointCount; i++) */
+
+ /*
+ * All Endpoint Descriptors are completed.
+ * Do the table terminator specific config (not in NHLT spec, optional)
+ */
+ if (*PFieldList && (strcmp ((const char *) (*PFieldList)->Name, "Descriptor Length")))
+ {
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoNhlt5b,
+ &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
+ ParentTable = DtPeekSubtable ();
+ DtInsertSubtable (ParentTable, Subtable);
+
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoNhlt3a,
+ &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
+ ParentTable = DtPeekSubtable ();
+ DtInsertSubtable (ParentTable, Subtable);
+ }
+
+ return (AE_OK);
+ }
+
+ return (AE_OK);
+}
+
+
+/******************************************************************************
+ *
* FUNCTION: DtCompilePcct
*
* PARAMETERS: List - Current field list pointer
@@ -2141,7 +2538,6 @@ DtCompileStao (
}
-
/******************************************************************************
*
* FUNCTION: DtCompileSvkl
diff --git a/source/compiler/dttemplate.c b/source/compiler/dttemplate.c
index 8154abb58ec3..1bcc4a12cbf1 100644
--- a/source/compiler/dttemplate.c
+++ b/source/compiler/dttemplate.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/dttemplate.h b/source/compiler/dttemplate.h
index 24c8c6f93e5d..ad5af70748dc 100644
--- a/source/compiler/dttemplate.h
+++ b/source/compiler/dttemplate.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -249,6 +249,39 @@ const unsigned char TemplateAest[] =
0x56,0x00,0x00,0x00 /* 000002C8 "V..." */
};
+const unsigned char TemplateAgdi[] =
+{
+ 0x41,0x47,0x44,0x49,0x30,0x00,0x00,0x00, /* 00000000 "AGDI0..." */
+ 0x01,0xE4,0x41,0x4D,0x50,0x45,0x52,0x45, /* 00000008 "..AMPERE" */
+ 0x54,0x45,0x4D,0x50,0x4C,0x41,0x54,0x45, /* 00000010 "TEMPLATE" */
+ 0x01,0x00,0x00,0x00,0x49,0x4E,0x54,0x4C, /* 00000018 "....INTL" */
+ 0x05,0x01,0x21,0x20,0x00,0x00,0x00,0x00, /* 00000020 "..! ...." */
+ 0x01,0x00,0x00,0x40,0x00,0x00,0x00,0x00 /* 00000028 "...@...." */
+};
+
+const unsigned char TemplateApmt[] =
+{
+ 0x41,0x50,0x4D,0x54,0x94,0x00,0x00,0x00, /* 00000000 "APMT...." */
+ 0x00,0x79,0x4E,0x56,0x49,0x44,0x49,0x41, /* 00000008 ".yNVIDIA" */
+ 0x54,0x45,0x4D,0x50,0x4C,0x41,0x54,0x45, /* 00000010 "TEMPLATE" */
+ 0x00,0x00,0x00,0x00,0x49,0x4E,0x54,0x4C, /* 00000018 "....INTL" */
+ 0x17,0x12,0x21,0x20,0x38,0x00,0x04,0x03, /* 00000020 "..! 8..." */
+ 0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00, /* 00000028 "........" */
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000030 "........" */
+ 0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000038 ". ......" */
+ 0x00,0x20,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000040 ". ......" */
+ 0x03,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000048 "........" */
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000050 "........" */
+ 0x6B,0x03,0x00,0x00,0x38,0x00,0x06,0x03, /* 00000058 "k...8..." */
+ 0x01,0x00,0x00,0x00,0x02,0x00,0x00,0x00, /* 00000060 "........" */
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000068 "........" */
+ 0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000070 ".0......" */
+ 0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000078 ".0......" */
+ 0x04,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000080 "........" */
+ 0x01,0x00,0x00,0x00,0x01,0x00,0x00,0x00, /* 00000088 "........" */
+ 0x6B,0x03,0x00,0x00 /* 00000090 "k..." */
+};
+
const unsigned char TemplateAsf[] =
{
0x41,0x53,0x46,0x21,0x72,0x00,0x00,0x00, /* 00000000 "ASF!r..." */
@@ -310,23 +343,58 @@ const unsigned char TemplateBoot[] =
const unsigned char TemplateCedt[] =
{
- 0x43,0x45,0x44,0x54,0x84,0x00,0x00,0x00, /* 00000000 "CEDT...." */
- 0x01,0x8B,0x49,0x4E,0x54,0x45,0x4C,0x20, /* 00000008 "..INTEL " */
- 0x54,0x45,0x4D,0x50,0x4C,0x41,0x54,0x45, /* 00000010 "TEMPLATE" */
- 0x01,0x00,0x00,0x00,0x49,0x4E,0x54,0x4C, /* 00000018 "....INTL" */
- 0x05,0x01,0x21,0x20,0x00,0x00,0x20,0x00, /* 00000020 "..! .. ." */
- 0x33,0x33,0xCD,0xAB,0x01,0x00,0x00,0x00, /* 00000028 "33......" */
- 0x00,0x00,0x00,0x00,0x00,0x21,0x43,0xD5, /* 00000030 ".....!C." */
- 0x00,0x00,0x00,0x00,0x45,0x23,0x01,0x00, /* 00000038 "....E#.." */
+ 0x43,0x45,0x44,0x54,0x9c,0x01,0x00,0x00, /* 00000000 "CEDT...." */
+ 0x01,0x87,0x49,0x4e,0x54,0x45,0x4c,0x20, /* 00000008 "..INTEL " */
+ 0x54,0x45,0x4d,0x50,0x4c,0x41,0x54,0x45, /* 00000010 "TEMPLATE" */
+ 0x00,0x00,0x00,0x00,0x49,0x4e,0x54,0x4c, /* 00000018 "....INTL" */
+ 0x17,0x12,0x21,0x20,0x00,0x00,0x20,0x00, /* 00000020 "..! .. ." */
+ 0x00,0x5e,0xba,0x00,0x00,0x00,0x00,0x00, /* 00000028 ".^......" */
+ 0x00,0x00,0x00,0x00,0x00,0x10,0x00,0x00, /* 00000030 "........" */
+ 0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x00, /* 00000038 "..... .." */
0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00, /* 00000040 "...... ." */
- 0x44,0x44,0xCD,0xAB,0x01,0x00,0x00,0x00, /* 00000048 "DD......" */
- 0x00,0x00,0x00,0x00,0x00,0x21,0x43,0xA5, /* 00000050 ".....!C." */
- 0x00,0x00,0x00,0x00,0x45,0x23,0xB1,0x00, /* 00000058 "....E#.." */
+ 0x01,0x5e,0xba,0x00,0x00,0x00,0x00,0x00, /* 00000048 ".^......" */
+ 0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x00, /* 00000050 "..... .." */
+ 0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x00, /* 00000058 "..... .." */
0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00, /* 00000060 "...... ." */
- 0x55,0x55,0xCD,0xAB,0x01,0x00,0x00,0x00, /* 00000068 "UU......" */
- 0x00,0x00,0x00,0x00,0x00,0x21,0x43,0xB5, /* 00000070 ".....!C." */
- 0x00,0x00,0x00,0x00,0x45,0x23,0xB1,0x00, /* 00000078 "....E#.." */
- 0x00,0x00,0x00,0x00 /* 00000080 "...." */
+ 0x02,0x5e,0xba,0x00,0x00,0x00,0x00,0x00, /* 00000068 ".^......" */
+ 0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x00, /* 00000070 ".....0.." */
+ 0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x00, /* 00000078 "..... .." */
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x20,0x00, /* 00000080 "...... ." */
+ 0x03,0x5e,0xba,0x00,0x00,0x00,0x00,0x00, /* 00000088 ".^......" */
+ 0x00,0x00,0x00,0x00,0x00,0x40,0x00,0x00, /* 00000090 ".....@.." */
+ 0x00,0x00,0x00,0x00,0x00,0x20,0x00,0x00, /* 00000098 "..... .." */
+ 0x00,0x00,0x00,0x00,0x01,0x00,0x28,0x00, /* 000000a0 "......(." */
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 000000a8 "........" */
+ 0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00, /* 000000b0 "........" */
+ 0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00, /* 000000b8 "........" */
+ 0x03,0x00,0x00,0x00,0x06,0x00,0x01,0x00, /* 000000c0 "........" */
+ 0x00,0x5e,0xba,0x00,0x01,0x00,0x28,0x00, /* 000000c8 ".^....(." */
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 000000d0 "........" */
+ 0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00, /* 000000d8 "........" */
+ 0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00, /* 000000e0 "........" */
+ 0x03,0x00,0x00,0x00,0x06,0x00,0x01,0x00, /* 000000e8 "........" */
+ 0x01,0x5e,0xba,0x00,0x01,0x00,0x28,0x00, /* 000000f0 ".^....(." */
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 000000f8 "........" */
+ 0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000100 "........" */
+ 0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000108 "........" */
+ 0x03,0x00,0x00,0x00,0x06,0x00,0x01,0x00, /* 00000110 "........" */
+ 0x02,0x5e,0xba,0x00,0x01,0x00,0x28,0x00, /* 00000118 ".^....(." */
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000120 "........" */
+ 0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000128 "........" */
+ 0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000130 "........" */
+ 0x03,0x00,0x00,0x00,0x06,0x00,0x01,0x00, /* 00000138 "........" */
+ 0x03,0x5e,0xba,0x00,0x01,0x00,0x2c,0x00, /* 00000140 ".^....,." */
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000148 "........" */
+ 0x00,0x03,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000150 "........" */
+ 0x00,0x01,0x00,0x00,0x01,0x00,0x00,0x00, /* 00000158 "........" */
+ 0x03,0x00,0x00,0x00,0x06,0x00,0x01,0x00, /* 00000160 "........" */
+ 0x00,0x5e,0xba,0x00,0x01,0x5e,0xba,0x00, /* 00000160 ".^...^.." */
+ 0x01,0x00,0x2c,0x00,0x00,0x00,0x00,0x00, /* 00000170 "..,....." */
+ 0x00,0x00,0x00,0x00,0x00,0x03,0x00,0x00, /* 00000178 "........" */
+ 0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00, /* 00000180 "........" */
+ 0x01,0x00,0x00,0x00,0x03,0x00,0x00,0x00, /* 00000188 "........" */
+ 0x0a,0x00,0x01,0x00,0x02,0x5e,0xba,0x00, /* 00000190 ".....^.." */
+ 0x03,0x5e,0xba,0x00 /* 00000198 ".^.." */
};
const unsigned char TemplateCpep[] =
@@ -426,11 +494,11 @@ const unsigned char TemplateDbgp[] =
const unsigned char TemplateDmar[] =
{
- 0x44,0x4D,0x41,0x52,0x8C,0x00,0x00,0x00, /* 00000000 "DMAR...." */
- 0x01,0x03,0x49,0x4E,0x54,0x45,0x4C,0x20, /* 00000008 "..INTEL " */
+ 0x44,0x4D,0x41,0x52,0x9C,0x00,0x00,0x00, /* 00000000 "DMAR...." */
+ 0x01,0xB8,0x49,0x4E,0x54,0x45,0x4C,0x20, /* 00000008 "..INTEL " */
0x54,0x45,0x4D,0x50,0x4C,0x41,0x54,0x45, /* 00000010 "TEMPLATE" */
0x01,0x00,0x00,0x00,0x49,0x4E,0x54,0x4C, /* 00000018 "....INTL" */
- 0x17,0x05,0x13,0x20,0x2F,0x01,0x00,0x00, /* 00000020 "... /..." */
+ 0x17,0x12,0x21,0x20,0x2F,0x01,0x00,0x00, /* 00000020 "..! /..." */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000028 "........" */
0x00,0x00,0x18,0x00,0x01,0x00,0x00,0x00, /* 00000030 "........" */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000038 "........" */
@@ -443,7 +511,9 @@ const unsigned char TemplateDmar[] =
0x02,0x08,0x00,0x00,0x00,0x00,0x00,0x03, /* 00000070 "........" */
0x03,0x00,0x14,0x00,0x00,0x00,0x00,0x00, /* 00000078 "........" */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000080 "........" */
- 0x00,0x00,0x00,0x00 /* 00000088 "...." */
+ 0x00,0x00,0x00,0x00,0x05,0x00,0x10,0x00, /* 00000088 "........" */
+ 0x00,0x00,0x00,0x00,0x01,0x08,0x00,0x00, /* 00000090 "........" */
+ 0x00,0x00,0x00,0x02 /* 00000098 "...." */
};
const unsigned char TemplateDrtm[] =
@@ -823,10 +893,10 @@ const unsigned char TemplateHpet[] =
const unsigned char TemplateIort[] =
{
0x49,0x4F,0x52,0x54,0x3C,0x02,0x00,0x00, /* 00000000 "IORT<..." */
- 0x03,0xF1,0x49,0x4E,0x54,0x45,0x4C,0x20, /* 00000008 "..INTEL " */
+ 0x05,0xCB,0x49,0x4E,0x54,0x45,0x4C,0x20, /* 00000008 "..INTEL " */
0x54,0x65,0x6D,0x70,0x6C,0x61,0x74,0x65, /* 00000010 "Template" */
0x00,0x00,0x00,0x00,0x49,0x4E,0x54,0x4C, /* 00000018 "....INTL" */
- 0x05,0x01,0x21,0x20,0x07,0x00,0x00,0x00, /* 00000020 "..! ...." */
+ 0x17,0x12,0x21,0x20,0x07,0x00,0x00,0x00, /* 00000020 "..! ...." */
0x34,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000028 "4......." */
0x49,0x4F,0x52,0x54,0x00,0x18,0x00,0x01, /* 00000030 "IORT...." */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000038 "........" */
@@ -838,7 +908,7 @@ const unsigned char TemplateIort[] =
0x00,0x5C,0x5F,0x53,0x42,0x2E,0x50,0x43, /* 00000068 ".\_SB.PC" */
0x49,0x30,0x2E,0x44,0x45,0x56,0x30,0x00, /* 00000070 "I0.DEV0." */
0x49,0x4F,0x52,0x54,0x3C,0x02,0x00,0x00, /* 00000078 "IORT<..." */
- 0x03,0xF2,0x49,0x4E,0x54,0x45,0x4C,0x20, /* 00000080 "..INTEL " */
+ 0x03,0xF1,0x49,0x4E,0x54,0x45,0x4C,0x20, /* 00000080 "..INTEL " */
0x54,0x65,0x6D,0x70,0x6C,0x61,0x74,0x65, /* 00000088 "Template" */
0x00,0x00,0x00,0x00,0x49,0x4E,0x54,0x4C, /* 00000090 "....INTL" */
0x05,0x01,0x21,0x20,0x07,0x00,0x00,0x00, /* 00000098 "..! ...." */
@@ -847,7 +917,7 @@ const unsigned char TemplateIort[] =
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 000000B0 "........" */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 000000B8 "........" */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 000000C0 "........" */
- 0x00,0x00,0x00,0x00,0x02,0x38,0x00,0x03, /* 000000C8 ".....8.." */
+ 0x00,0x00,0x00,0x00,0x02,0x38,0x00,0x04, /* 000000C8 ".....8.." */
0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00, /* 000000D0 "........" */
0x24,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 000000D8 "$......." */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 000000E0 "........" */
@@ -885,7 +955,7 @@ const unsigned char TemplateIort[] =
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 000001E0 "........" */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 000001E8 "........" */
0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00, /* 000001F0 "........" */
- 0x06,0x44,0x00,0x01,0x00,0x00,0x00,0x00, /* 000001F8 ".D......" */
+ 0x06,0x44,0x00,0x03,0x00,0x00,0x00,0x00, /* 000001F8 ".D......" */
0x01,0x00,0x00,0x00,0x30,0x00,0x00,0x00, /* 00000200 "....0..." */
0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00, /* 00000208 "........" */
0x1C,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000210 "........" */
@@ -893,7 +963,7 @@ const unsigned char TemplateIort[] =
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000220 "........" */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000228 "........" */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000230 "........" */
- 0x01,0x00,0x00,0x00 /* 00000238 "...." */
+ 0x00,0x00,0x00,0x00 /* 00000238 "...." */
};
const unsigned char TemplateIvrs[] =
@@ -1185,6 +1255,78 @@ const unsigned char TemplateNfit[] =
0x05,0x00,0x00,0x00,0x00,0x00,0x00,0x00 /* 00000180 "........" */
};
+const unsigned char TemplateNhlt[] =
+{
+ 0x4E,0x48,0x4C,0x54,0x1E,0x02,0x00,0x00, /* 00000000 "NHLT...." */
+ 0x01,0xF7,0x49,0x4E,0x54,0x45,0x4C,0x20, /* 00000008 "..INTEL " */
+ 0x54,0x45,0x4D,0x50,0x4C,0x41,0x54,0x45, /* 00000010 "TEMPLATE" */
+ 0x01,0x00,0x00,0x00,0x49,0x4E,0x54,0x4C, /* 00000018 "....INTL" */
+ 0x30,0x09,0x21,0x20,0x04,0xAD,0x00,0x00, /* 00000020 "0.! ...." */
+ 0x00,0x02,0x06,0x07,0x00,0x30,0xAE,0x09, /* 00000028 ".....0.." */
+ 0x00,0x0A,0x00,0x00,0x00,0x02,0x03,0x0D, /* 00000030 "........" */
+ 0x38,0x00,0x00,0x00,0xCC,0x01,0x1F,0x02, /* 00000038 "8......." */
+ 0x04,0x00,0x13,0x00,0x09,0x00,0x11,0x00, /* 00000040 "........" */
+ 0x04,0x20,0x07,0x00,0x09,0x00,0x18,0x00, /* 00000048 ". ......" */
+ 0x22,0x00,0x11,0x00,0x15,0x00,0x05,0x03, /* 00000050 ""......." */
+ 0x13,0x00,0x09,0x00,0x11,0x00,0x04,0x20, /* 00000058 "....... " */
+ 0x07,0x00,0x09,0x00,0x18,0x00,0x22,0x00, /* 00000060 "......"." */
+ 0x11,0x00,0x15,0x00,0xAA,0xAA,0x99,0x99, /* 00000068 "........" */
+ 0x78,0x56,0x34,0x12,0x02,0xFE,0xFF,0x78, /* 00000070 "xV4....x" */
+ 0x56,0x44,0x33,0x00,0x00,0x66,0x55,0x00, /* 00000078 "VD3..fU." */
+ 0x00,0x00,0x80,0x16,0x00,0x32,0x00,0x04, /* 00000080 ".....2.." */
+ 0x00,0x99,0x99,0x88,0x88,0x6E,0x88,0x9F, /* 00000088 ".....n.." */
+ 0xA6,0xEB,0x6C,0x94,0x45,0xA4,0x1F,0x7B, /* 00000090 "..l.E..{" */
+ 0x5D,0xCE,0x24,0xC5,0x53,0x02,0x00,0x00, /* 00000098 "].$.S..." */
+ 0x00,0x30,0x40,0xFE,0xFF,0x78,0x56,0x44, /* 000000A0 ".0@..xVD" */
+ 0x33,0x00,0x00,0x66,0x55,0x00,0x00,0x00, /* 000000A8 "3..fU..." */
+ 0x80,0x16,0x00,0x32,0x00,0x04,0x00,0x99, /* 000000B0 "...2...." */
+ 0x99,0x88,0x88,0x6E,0x88,0x9F,0xA6,0xEB, /* 000000B8 "...n...." */
+ 0x6C,0x94,0x45,0xA4,0x1F,0x7B,0x5D,0xCE, /* 000000C0 "l.E..{]." */
+ 0x24,0xC5,0x53,0x03,0x00,0x00,0x00,0x50, /* 000000C8 "$.S....P" */
+ 0x60,0x70,0x48,0x00,0x00,0x00,0x05,0x06, /* 000000D0 "`pH....." */
+ 0x07,0x00,0x34,0xAE,0x09,0x00,0x0A,0x00, /* 000000D8 "..4....." */
+ 0x00,0x00,0x02,0x00,0x0D,0x02,0x00,0x00, /* 000000E0 "........" */
+ 0x00,0xCC,0x00,0x01,0xFE,0xFF,0x78,0x56, /* 000000E8 "......xV" */
+ 0x44,0x33,0x00,0x00,0x66,0x55,0x00,0x00, /* 000000F0 "D3..fU.." */
+ 0x00,0x80,0x16,0x00,0x32,0x00,0x04,0x00, /* 000000F8 "....2..." */
+ 0x99,0x99,0x88,0x88,0x6E,0x88,0x9F,0xA6, /* 00000100 "....n..." */
+ 0xEB,0x6C,0x94,0x45,0xA4,0x1F,0x7B,0x5D, /* 00000108 ".l.E..{]" */
+ 0xCE,0x24,0xC5,0x53,0x02,0x00,0x00,0x00, /* 00000110 ".$.S...." */
+ 0x70,0x80,0x80,0x00,0x00,0x00,0x02,0x06, /* 00000118 "p......." */
+ 0x07,0x00,0x30,0xAE,0x09,0x00,0x0A,0x00, /* 00000120 "..0....." */
+ 0x00,0x00,0x02,0x03,0x0D,0x07,0x00,0x00, /* 00000128 "........" */
+ 0x00,0xCC,0x03,0x09,0x34,0x12,0x28,0x01, /* 00000130 "....4.(." */
+ 0x02,0xFE,0xFF,0x78,0x56,0x44,0x33,0x00, /* 00000138 "...xVD3." */
+ 0x00,0x66,0x55,0x00,0x00,0x00,0x80,0x16, /* 00000140 ".fU....." */
+ 0x00,0x32,0x00,0x04,0x00,0x99,0x99,0x88, /* 00000148 ".2......" */
+ 0x88,0x6E,0x88,0x9F,0xA6,0xEB,0x6C,0x94, /* 00000150 ".n....l." */
+ 0x45,0xA4,0x1F,0x7B,0x5D,0xCE,0x24,0xC5, /* 00000158 "E..{].$." */
+ 0x53,0x04,0x00,0x00,0x00,0x70,0x80,0x90, /* 00000160 "S....p.." */
+ 0xA0,0xFE,0xFF,0x78,0x56,0x44,0x33,0x00, /* 00000168 "...xVD3." */
+ 0x00,0x66,0x55,0x00,0x00,0x00,0x80,0x16, /* 00000170 ".fU....." */
+ 0x00,0x32,0x00,0x04,0x00,0x99,0x99,0x88, /* 00000178 ".2......" */
+ 0x88,0x6E,0x88,0x9F,0xA6,0xEB,0x6C,0x94, /* 00000180 ".n....l." */
+ 0x45,0xA4,0x1F,0x7B,0x5D,0xCE,0x24,0xC5, /* 00000188 "E..{].$." */
+ 0x53,0x05,0x00,0x00,0x00,0x70,0x80,0x90, /* 00000190 "S....p.." */
+ 0xA0,0xB0,0x7C,0x00,0x00,0x00,0x05,0x06, /* 00000198 "..|....." */
+ 0x07,0x00,0x34,0xAE,0x09,0x00,0x0A,0x00, /* 000001A0 "..4....." */
+ 0x00,0x00,0x02,0x00,0x0D,0x02,0x00,0x00, /* 000001A8 "........" */
+ 0x00,0xCC,0x00,0x01,0xFE,0xFF,0x78,0x56, /* 000001B0 "......xV" */
+ 0x44,0x33,0x00,0x00,0x66,0x55,0x00,0x00, /* 000001B8 "D3..fU.." */
+ 0x00,0x80,0x16,0x00,0x32,0x00,0x04,0x00, /* 000001C0 "....2..." */
+ 0x99,0x99,0x88,0x88,0x6E,0x88,0x9F,0xA6, /* 000001C8 "....n..." */
+ 0xEB,0x6C,0x94,0x45,0xA4,0x1F,0x7B,0x5D, /* 000001D0 ".l.E..{]" */
+ 0xCE,0x24,0xC5,0x53,0x11,0x00,0x00,0x00, /* 000001D8 ".$.S...." */
+ 0x00,0x01,0x32,0x03,0x04,0x05,0x06,0x37, /* 000001E0 "..2....7" */
+ 0x08,0x09,0x0A,0x0B,0x0C,0x0D,0x0E,0x3F, /* 000001E8 ".......?" */
+ 0x0A,0x01,0x00,0x01,0x32,0x03,0x04,0x05, /* 000001F0 "....2..." */
+ 0x06,0x37,0x08,0x09,0x0A,0x0B,0x0C,0x0D, /* 000001F8 ".7......" */
+ 0x0E,0x3F,0x44,0x9A,0x00,0x01,0x32,0x03, /* 00000200 ".?D...2." */
+ 0x04,0x05,0x06,0x37,0x08,0x09,0x0A,0x0B, /* 00000208 "...7...." */
+ 0x0C,0x0D,0x0E,0x3F,0x0A,0x0B,0x04,0x00, /* 00000210 "...?...." */
+ 0x00,0x00,0xEF,0xBE,0xAD,0xDE /* 00000218 "......" */
+};
+
const unsigned char TemplatePcct[] =
{
0x50,0x43,0x43,0x54,0xAE,0x02,0x00,0x00, /* 00000000 "PCCT...." */
@@ -1756,6 +1898,17 @@ const unsigned char TemplateTcpa[] =
0x01,0x01,0x01,0x01 /* 00000060 "...." */
};
+const unsigned char TemplateTdel[] =
+{
+ 0x54,0x44,0x45,0x4C,0x38,0x00,0x00,0x00, /* 00000000 "TDEL8..." */
+ 0x04,0x1C,0x49,0x4E,0x54,0x45,0x4C,0x20, /* 00000008 "..INTEL " */
+ 0x54,0x65,0x6D,0x70,0x6C,0x61,0x74,0x65, /* 00000010 "Template" */
+ 0x00,0x00,0x00,0x00,0x49,0x4E,0x54,0x4C, /* 00000018 "....INTL" */
+ 0x30,0x09,0x21,0x20,0x00,0x00,0x00,0x00, /* 00000020 "0.! ...." */
+ 0xEF,0xCD,0xAB,0x78,0x56,0x34,0x12,0x00, /* 00000028 "...xV4.." */
+ 0x78,0x56,0x34,0x12,0xEF,0xCD,0xAB,0x00 /* 00000030 "xV4....." */
+};
+
const unsigned char TemplateTpm2[] =
{
0x54,0x50,0x4D,0x32,0x4C,0x00,0x00,0x00, /* 00000000 "TPM2L..." */
diff --git a/source/compiler/dtutils.c b/source/compiler/dtutils.c
index 52180fb3fd10..e950763e7d1c 100644
--- a/source/compiler/dtutils.c
+++ b/source/compiler/dtutils.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -411,6 +411,7 @@ DtGetFieldType (
case ACPI_DMT_FLAGS0:
case ACPI_DMT_FLAGS1:
case ACPI_DMT_FLAGS2:
+ case ACPI_DMT_FLAGS8_2:
case ACPI_DMT_FLAGS4:
case ACPI_DMT_FLAGS4_0:
case ACPI_DMT_FLAGS4_4:
@@ -437,6 +438,7 @@ DtGetFieldType (
case ACPI_DMT_BUF10:
case ACPI_DMT_BUF12:
case ACPI_DMT_BUF16:
+ case ACPI_DMT_BUF18:
case ACPI_DMT_BUF128:
case ACPI_DMT_PCI_PATH:
case ACPI_DMT_PMTT_VENDOR:
@@ -560,6 +562,7 @@ DtGetFieldLength (
case ACPI_DMT_FLAGS0:
case ACPI_DMT_FLAGS1:
case ACPI_DMT_FLAGS2:
+ case ACPI_DMT_FLAGS8_2:
case ACPI_DMT_FLAGS4:
case ACPI_DMT_FLAGS4_0:
case ACPI_DMT_FLAGS4_4:
@@ -583,6 +586,10 @@ DtGetFieldLength (
case ACPI_DMT_MADT:
case ACPI_DMT_NHLT1:
case ACPI_DMT_NHLT1a:
+ case ACPI_DMT_NHLT1b:
+ case ACPI_DMT_NHLT1c:
+ case ACPI_DMT_NHLT1d:
+ case ACPI_DMT_NHLT1f:
case ACPI_DMT_PCCT:
case ACPI_DMT_PMTT:
case ACPI_DMT_PPTT:
@@ -611,6 +618,7 @@ DtGetFieldLength (
case ACPI_DMT_HEST:
case ACPI_DMT_HMAT:
case ACPI_DMT_NFIT:
+ case ACPI_DMT_NHLT1e:
case ACPI_DMT_PCI_PATH:
case ACPI_DMT_PHAT:
@@ -737,6 +745,11 @@ DtGetFieldLength (
ByteLength = 16;
break;
+ case ACPI_DMT_BUF18:
+
+ ByteLength = 18;
+ break;
+
case ACPI_DMT_BUF128:
ByteLength = 128;
diff --git a/source/compiler/preprocess.h b/source/compiler/preprocess.h
index f4c8c30966a2..9c25dd132a74 100644
--- a/source/compiler/preprocess.h
+++ b/source/compiler/preprocess.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/prexpress.c b/source/compiler/prexpress.c
index db2e76ec87f9..8ac1fd88767e 100644
--- a/source/compiler/prexpress.c
+++ b/source/compiler/prexpress.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/prmacros.c b/source/compiler/prmacros.c
index ab1255f665eb..5b3669784204 100644
--- a/source/compiler/prmacros.c
+++ b/source/compiler/prmacros.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/prparser.l b/source/compiler/prparser.l
index febcc3192541..828d81b263f2 100644
--- a/source/compiler/prparser.l
+++ b/source/compiler/prparser.l
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/prparser.y b/source/compiler/prparser.y
index f7e052d910ee..3854d989126f 100644
--- a/source/compiler/prparser.y
+++ b/source/compiler/prparser.y
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/prscan.c b/source/compiler/prscan.c
index 7672ef895ef2..0d9af86ea475 100644
--- a/source/compiler/prscan.c
+++ b/source/compiler/prscan.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/prutils.c b/source/compiler/prutils.c
index e793b4c470e7..eea42f890b00 100644
--- a/source/compiler/prutils.c
+++ b/source/compiler/prutils.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/debugger/dbcmds.c b/source/components/debugger/dbcmds.c
index 1b10f161ac0b..6f55147633b5 100644
--- a/source/components/debugger/dbcmds.c
+++ b/source/components/debugger/dbcmds.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/debugger/dbconvert.c b/source/components/debugger/dbconvert.c
index 55307d0871d9..9d1e1dddc9c6 100644
--- a/source/components/debugger/dbconvert.c
+++ b/source/components/debugger/dbconvert.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/debugger/dbdisply.c b/source/components/debugger/dbdisply.c
index b434cdc6b834..276217f58ef3 100644
--- a/source/components/debugger/dbdisply.c
+++ b/source/components/debugger/dbdisply.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/debugger/dbexec.c b/source/components/debugger/dbexec.c
index 26cc73f98e32..eed0aa35cd4c 100644
--- a/source/components/debugger/dbexec.c
+++ b/source/components/debugger/dbexec.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/debugger/dbfileio.c b/source/components/debugger/dbfileio.c
index 70b9650ac9ba..09f8f2271d39 100644
--- a/source/components/debugger/dbfileio.c
+++ b/source/components/debugger/dbfileio.c
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/debugger/dbhistry.c b/source/components/debugger/dbhistry.c
index d5ae07f9edac..31bfc3c56a37 100644
--- a/source/components/debugger/dbhistry.c
+++ b/source/components/debugger/dbhistry.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/debugger/dbinput.c b/source/components/debugger/dbinput.c
index d0b77e7729a2..0f21b731c67b 100644
--- a/source/components/debugger/dbinput.c
+++ b/source/components/debugger/dbinput.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/debugger/dbmethod.c b/source/components/debugger/dbmethod.c
index 4e9a8b53c924..82202e8e2cbe 100644
--- a/source/components/debugger/dbmethod.c
+++ b/source/components/debugger/dbmethod.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/debugger/dbnames.c b/source/components/debugger/dbnames.c
index b7b45ecf37f1..963f81251e8d 100644
--- a/source/components/debugger/dbnames.c
+++ b/source/components/debugger/dbnames.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/debugger/dbobject.c b/source/components/debugger/dbobject.c
index 5b98319a505a..b8bade432f62 100644
--- a/source/components/debugger/dbobject.c
+++ b/source/components/debugger/dbobject.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/debugger/dbstats.c b/source/components/debugger/dbstats.c
index 7cca32f76f0f..30a686dc6d42 100644
--- a/source/components/debugger/dbstats.c
+++ b/source/components/debugger/dbstats.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/debugger/dbtest.c b/source/components/debugger/dbtest.c
index cb9c721419e6..23690ed67bc7 100644
--- a/source/components/debugger/dbtest.c
+++ b/source/components/debugger/dbtest.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/debugger/dbutils.c b/source/components/debugger/dbutils.c
index 338d1fc28b5a..ef649b2c12d1 100644
--- a/source/components/debugger/dbutils.c
+++ b/source/components/debugger/dbutils.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/debugger/dbxface.c b/source/components/debugger/dbxface.c
index 472e30df0285..c44e1d0d5e49 100644
--- a/source/components/debugger/dbxface.c
+++ b/source/components/debugger/dbxface.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/disassembler/dmbuffer.c b/source/components/disassembler/dmbuffer.c
index 208fb84f84ae..d5d813c83bc8 100644
--- a/source/components/disassembler/dmbuffer.c
+++ b/source/components/disassembler/dmbuffer.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/disassembler/dmcstyle.c b/source/components/disassembler/dmcstyle.c
index 991b87141435..f0bef68ef982 100644
--- a/source/components/disassembler/dmcstyle.c
+++ b/source/components/disassembler/dmcstyle.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/disassembler/dmdeferred.c b/source/components/disassembler/dmdeferred.c
index 23e1c58fa3d9..82ce2bec3bf8 100644
--- a/source/components/disassembler/dmdeferred.c
+++ b/source/components/disassembler/dmdeferred.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/disassembler/dmnames.c b/source/components/disassembler/dmnames.c
index 85da99645186..8852921f9478 100644
--- a/source/components/disassembler/dmnames.c
+++ b/source/components/disassembler/dmnames.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/disassembler/dmopcode.c b/source/components/disassembler/dmopcode.c
index 80cf72f904d4..1cfe710d7c05 100644
--- a/source/components/disassembler/dmopcode.c
+++ b/source/components/disassembler/dmopcode.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/disassembler/dmresrc.c b/source/components/disassembler/dmresrc.c
index 12cf5e6bcb01..0a183e9c5b87 100644
--- a/source/components/disassembler/dmresrc.c
+++ b/source/components/disassembler/dmresrc.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/disassembler/dmresrcl.c b/source/components/disassembler/dmresrcl.c
index b30316b8b603..9aa6ac1fbe5f 100644
--- a/source/components/disassembler/dmresrcl.c
+++ b/source/components/disassembler/dmresrcl.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/disassembler/dmresrcl2.c b/source/components/disassembler/dmresrcl2.c
index ae15e3d8aa7f..59d00f6c3967 100644
--- a/source/components/disassembler/dmresrcl2.c
+++ b/source/components/disassembler/dmresrcl2.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/disassembler/dmresrcs.c b/source/components/disassembler/dmresrcs.c
index f323329f4dd9..db5ce5db984f 100644
--- a/source/components/disassembler/dmresrcs.c
+++ b/source/components/disassembler/dmresrcs.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/disassembler/dmutils.c b/source/components/disassembler/dmutils.c
index 1c1e400e32c8..2a7b7b330e55 100644
--- a/source/components/disassembler/dmutils.c
+++ b/source/components/disassembler/dmutils.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/disassembler/dmwalk.c b/source/components/disassembler/dmwalk.c
index 75d75eab3d75..7d2429b721e6 100644
--- a/source/components/disassembler/dmwalk.c
+++ b/source/components/disassembler/dmwalk.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -959,7 +959,15 @@ AcpiDmDescendingOp (
NextOp->Common.DisasmFlags |= ACPI_PARSEOP_IGNORE;
ASL_CV_CLOSE_PAREN (Op, Level);
- /* Emit description comment for Name() with a predefined ACPI name */
+ if (Op->Asl.Parent->Common.AmlOpcode == AML_NAME_OP)
+ {
+ /*
+ * Emit description comment showing the full ACPI name
+ * of the ResourceTemplate only if it was defined using a
+ * Name statement.
+ */
+ AcpiDmPredefinedDescription (Op->Asl.Parent);
+ }
AcpiDmPredefinedDescription (Op->Asl.Parent);
diff --git a/source/components/dispatcher/dsargs.c b/source/components/dispatcher/dsargs.c
index 4a24160c596a..52246693997d 100644
--- a/source/components/dispatcher/dsargs.c
+++ b/source/components/dispatcher/dsargs.c
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/dispatcher/dscontrol.c b/source/components/dispatcher/dscontrol.c
index 8b860a553fe2..1d7d676c2c30 100644
--- a/source/components/dispatcher/dscontrol.c
+++ b/source/components/dispatcher/dscontrol.c
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/dispatcher/dsdebug.c b/source/components/dispatcher/dsdebug.c
index 26504c5a9cf5..9111a215696e 100644
--- a/source/components/dispatcher/dsdebug.c
+++ b/source/components/dispatcher/dsdebug.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/dispatcher/dsfield.c b/source/components/dispatcher/dsfield.c
index bd2755aec29b..2d3851ff9d7d 100644
--- a/source/components/dispatcher/dsfield.c
+++ b/source/components/dispatcher/dsfield.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/dispatcher/dsinit.c b/source/components/dispatcher/dsinit.c
index 82857cb68ecb..5f941f0c94cc 100644
--- a/source/components/dispatcher/dsinit.c
+++ b/source/components/dispatcher/dsinit.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/dispatcher/dsmethod.c b/source/components/dispatcher/dsmethod.c
index fd56bd509ef7..d5fc3038f643 100644
--- a/source/components/dispatcher/dsmethod.c
+++ b/source/components/dispatcher/dsmethod.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/dispatcher/dsmthdat.c b/source/components/dispatcher/dsmthdat.c
index ab0a9d118fc0..af156790166d 100644
--- a/source/components/dispatcher/dsmthdat.c
+++ b/source/components/dispatcher/dsmthdat.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/dispatcher/dsobject.c b/source/components/dispatcher/dsobject.c
index 20dd20c11a12..5ffd198ba0bd 100644
--- a/source/components/dispatcher/dsobject.c
+++ b/source/components/dispatcher/dsobject.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/dispatcher/dsopcode.c b/source/components/dispatcher/dsopcode.c
index 153cd89adfd1..190be1b3f7d1 100644
--- a/source/components/dispatcher/dsopcode.c
+++ b/source/components/dispatcher/dsopcode.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -707,6 +707,7 @@ AcpiDsEvalTableRegionOperands (
ObjDesc->Region.Address = ACPI_PTR_TO_PHYSADDR (Table);
ObjDesc->Region.Length = Table->Length;
+ ObjDesc->Region.Pointer = Table;
ACPI_DEBUG_PRINT ((ACPI_DB_EXEC, "RgnObj %p Addr %8.8X%8.8X Len %X\n",
ObjDesc, ACPI_FORMAT_UINT64 (ObjDesc->Region.Address),
diff --git a/source/components/dispatcher/dspkginit.c b/source/components/dispatcher/dspkginit.c
index 06c0341458f1..bd2bf2e32a63 100644
--- a/source/components/dispatcher/dspkginit.c
+++ b/source/components/dispatcher/dspkginit.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/dispatcher/dsutils.c b/source/components/dispatcher/dsutils.c
index 0bb4fb2d330d..b159b34c3fa4 100644
--- a/source/components/dispatcher/dsutils.c
+++ b/source/components/dispatcher/dsutils.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/dispatcher/dswexec.c b/source/components/dispatcher/dswexec.c
index 636067bfe75e..686f03c8cc59 100644
--- a/source/components/dispatcher/dswexec.c
+++ b/source/components/dispatcher/dswexec.c
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -173,7 +173,7 @@ static ACPI_EXECUTE_OP AcpiGbl_OpTypeDispatch [] =
AcpiExOpcode_0A_0T_1R,
AcpiExOpcode_1A_0T_0R,
AcpiExOpcode_1A_0T_1R,
- AcpiExOpcode_1A_1T_0R,
+ NULL, /* Was: AcpiExOpcode_1A_0T_0R (Was for Load operator) */
AcpiExOpcode_1A_1T_1R,
AcpiExOpcode_2A_0T_0R,
AcpiExOpcode_2A_0T_1R,
diff --git a/source/components/dispatcher/dswload.c b/source/components/dispatcher/dswload.c
index a9b22dd15acc..4fdf955a5a61 100644
--- a/source/components/dispatcher/dswload.c
+++ b/source/components/dispatcher/dswload.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/dispatcher/dswload2.c b/source/components/dispatcher/dswload2.c
index 0311d0d991f8..496ee91fbc06 100644
--- a/source/components/dispatcher/dswload2.c
+++ b/source/components/dispatcher/dswload2.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/dispatcher/dswscope.c b/source/components/dispatcher/dswscope.c
index bc360b66ec6e..dad0c4974a48 100644
--- a/source/components/dispatcher/dswscope.c
+++ b/source/components/dispatcher/dswscope.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/dispatcher/dswstate.c b/source/components/dispatcher/dswstate.c
index 9f79601fa1ae..68b7f3d10378 100644
--- a/source/components/dispatcher/dswstate.c
+++ b/source/components/dispatcher/dswstate.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/events/evevent.c b/source/components/events/evevent.c
index b935960835f6..8b08338a21b7 100644
--- a/source/components/events/evevent.c
+++ b/source/components/events/evevent.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/events/evglock.c b/source/components/events/evglock.c
index 1eb740d94fb3..79b519a0f75d 100644
--- a/source/components/events/evglock.c
+++ b/source/components/events/evglock.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/events/evgpe.c b/source/components/events/evgpe.c
index 45c506ab7560..b246567d34c5 100644
--- a/source/components/events/evgpe.c
+++ b/source/components/events/evgpe.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/events/evgpeblk.c b/source/components/events/evgpeblk.c
index 03bb0b053f9f..4dac205ee1c4 100644
--- a/source/components/events/evgpeblk.c
+++ b/source/components/events/evgpeblk.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/events/evgpeinit.c b/source/components/events/evgpeinit.c
index 7a41fae0e969..6f0472cf1963 100644
--- a/source/components/events/evgpeinit.c
+++ b/source/components/events/evgpeinit.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/events/evgpeutil.c b/source/components/events/evgpeutil.c
index 679ca6986291..1f66717df278 100644
--- a/source/components/events/evgpeutil.c
+++ b/source/components/events/evgpeutil.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/events/evhandler.c b/source/components/events/evhandler.c
index 39171014ee54..e0859c30a599 100644
--- a/source/components/events/evhandler.c
+++ b/source/components/events/evhandler.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -563,7 +563,7 @@ AcpiEvInstallSpaceHandler (
case ACPI_ADR_SPACE_DATA_TABLE:
Handler = AcpiExDataTableSpaceHandler;
- Setup = NULL;
+ Setup = AcpiEvDataTableRegionSetup;
break;
default:
diff --git a/source/components/events/evmisc.c b/source/components/events/evmisc.c
index 5052a1fdce65..b6c6eb6ad33e 100644
--- a/source/components/events/evmisc.c
+++ b/source/components/events/evmisc.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/events/evregion.c b/source/components/events/evregion.c
index 2624cd65d38a..6cf77791f105 100644
--- a/source/components/events/evregion.c
+++ b/source/components/events/evregion.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -320,6 +320,15 @@ AcpiEvAddressSpaceDispatch (
return_ACPI_STATUS (AE_NOT_EXIST);
}
+ if (RegionObj->Region.SpaceId == ACPI_ADR_SPACE_PLATFORM_COMM)
+ {
+ ACPI_PCC_INFO *Ctx = HandlerDesc->AddressSpace.Context;
+
+ Ctx->InternalBuffer = FieldObj->Field.InternalPccBuffer;
+ Ctx->Length = (UINT16) RegionObj->Region.Length;
+ Ctx->SubspaceId = (UINT8) RegionObj->Region.Address;
+ }
+
/*
* We must exit the interpreter because the region setup will
* potentially execute control methods (for example, the _REG method
diff --git a/source/components/events/evrgnini.c b/source/components/events/evrgnini.c
index 9327d8f7ff81..7cbbe30c069b 100644
--- a/source/components/events/evrgnini.c
+++ b/source/components/events/evrgnini.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -601,6 +601,64 @@ AcpiEvCmosRegionSetup (
/*******************************************************************************
*
+ * FUNCTION: AcpiEvDataTableRegionSetup
+ *
+ * PARAMETERS: Handle - Region we are interested in
+ * Function - Start or stop
+ * HandlerContext - Address space handler context
+ * RegionContext - Region specific context
+ *
+ * RETURN: Status
+ *
+ * DESCRIPTION: Setup a DataTableRegion
+ *
+ * MUTEX: Assumes namespace is not locked
+ *
+ ******************************************************************************/
+
+ACPI_STATUS
+AcpiEvDataTableRegionSetup (
+ ACPI_HANDLE Handle,
+ UINT32 Function,
+ void *HandlerContext,
+ void **RegionContext)
+{
+ ACPI_OPERAND_OBJECT *RegionDesc = (ACPI_OPERAND_OBJECT *) Handle;
+ ACPI_DATA_TABLE_MAPPING *LocalRegionContext;
+
+
+ ACPI_FUNCTION_TRACE (EvDataTableRegionSetup);
+
+
+ if (Function == ACPI_REGION_DEACTIVATE)
+ {
+ if (*RegionContext)
+ {
+ ACPI_FREE (*RegionContext);
+ *RegionContext = NULL;
+ }
+ return_ACPI_STATUS (AE_OK);
+ }
+
+ /* Create a new context */
+
+ LocalRegionContext = ACPI_ALLOCATE_ZEROED (sizeof (ACPI_DATA_TABLE_MAPPING));
+ if (!(LocalRegionContext))
+ {
+ return_ACPI_STATUS (AE_NO_MEMORY);
+ }
+
+ /* Save the data table pointer for use in the handler */
+
+ LocalRegionContext->Pointer = RegionDesc->Region.Pointer;
+
+ *RegionContext = LocalRegionContext;
+ return_ACPI_STATUS (AE_OK);
+}
+
+
+/*******************************************************************************
+ *
* FUNCTION: AcpiEvDefaultRegionSetup
*
* PARAMETERS: Handle - Region we are interested in
diff --git a/source/components/events/evsci.c b/source/components/events/evsci.c
index 47ac23f81608..26891925293c 100644
--- a/source/components/events/evsci.c
+++ b/source/components/events/evsci.c
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/events/evxface.c b/source/components/events/evxface.c
index 01d5f00fbe72..245ca8a41fb5 100644
--- a/source/components/events/evxface.c
+++ b/source/components/events/evxface.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/events/evxfevnt.c b/source/components/events/evxfevnt.c
index a34547117092..3384e0982e82 100644
--- a/source/components/events/evxfevnt.c
+++ b/source/components/events/evxfevnt.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/events/evxfgpe.c b/source/components/events/evxfgpe.c
index 1fe27e759322..87dab0f8119f 100644
--- a/source/components/events/evxfgpe.c
+++ b/source/components/events/evxfgpe.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/events/evxfregn.c b/source/components/events/evxfregn.c
index 3febc81c216c..ee44e10d5784 100644
--- a/source/components/events/evxfregn.c
+++ b/source/components/events/evxfregn.c
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exconcat.c b/source/components/executer/exconcat.c
index bd7374e88769..335d78f19671 100644
--- a/source/components/executer/exconcat.c
+++ b/source/components/executer/exconcat.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exconfig.c b/source/components/executer/exconfig.c
index 301e883072e6..a87316ba866a 100644
--- a/source/components/executer/exconfig.c
+++ b/source/components/executer/exconfig.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -244,6 +244,7 @@ AcpiExLoadTableOp (
ACPI_NAMESPACE_NODE *ParentNode;
ACPI_NAMESPACE_NODE *StartNode;
ACPI_NAMESPACE_NODE *ParameterNode = NULL;
+ ACPI_OPERAND_OBJECT *ReturnObj;
ACPI_OPERAND_OBJECT *DdbHandle;
UINT32 TableIndex;
@@ -251,6 +252,16 @@ AcpiExLoadTableOp (
ACPI_FUNCTION_TRACE (ExLoadTableOp);
+ /* Create the return object */
+
+ ReturnObj = AcpiUtCreateIntegerObject ((UINT64) 0);
+ if (!ReturnObj)
+ {
+ return_ACPI_STATUS (AE_NO_MEMORY);
+ }
+
+ *ReturnDesc = ReturnObj;
+
/* Find the ACPI table in the RSDT/XSDT */
AcpiExExitInterpreter ();
@@ -268,13 +279,6 @@ AcpiExLoadTableOp (
/* Table not found, return an Integer=0 and AE_OK */
- DdbHandle = AcpiUtCreateIntegerObject ((UINT64) 0);
- if (!DdbHandle)
- {
- return_ACPI_STATUS (AE_NO_MEMORY);
- }
-
- *ReturnDesc = DdbHandle;
return_ACPI_STATUS (AE_OK);
}
@@ -365,7 +369,13 @@ AcpiExLoadTableOp (
}
}
- *ReturnDesc = DdbHandle;
+ /* Remove the reference to DdbHandle created by AcpiExAddTable above */
+
+ AcpiUtRemoveReference (DdbHandle);
+
+ /* Return -1 (non-zero) indicates success */
+
+ ReturnObj->Integer.Value = 0xFFFFFFFFFFFFFFFF;
return_ACPI_STATUS (Status);
}
@@ -423,7 +433,7 @@ AcpiExRegionRead (
*
* PARAMETERS: ObjDesc - Region or Buffer/Field where the table will be
* obtained
- * Target - Where a handle to the table will be stored
+ * Target - Where the status of the load will be stored
* WalkState - Current state
*
* RETURN: Status
@@ -455,6 +465,18 @@ AcpiExLoadOp (
ACPI_FUNCTION_TRACE (ExLoadOp);
+ if (Target->Common.DescriptorType == ACPI_DESC_TYPE_NAMED)
+ {
+ Target = AcpiNsGetAttachedObject (ACPI_CAST_PTR (ACPI_NAMESPACE_NODE, Target));
+ }
+ if (Target->Common.Type != ACPI_TYPE_INTEGER)
+ {
+ fprintf (stderr, "Type not integer: %X\n", Target->Common.Type);
+ return_ACPI_STATUS (AE_AML_OPERAND_TYPE);
+ }
+
+ Target->Integer.Value = 0;
+
/* Source Object can be either an OpRegion or a Buffer/Field */
switch (ObjDesc->Common.Type)
@@ -596,7 +618,7 @@ AcpiExLoadOp (
ACPI_INFO (("Dynamic OEM Table Load:"));
AcpiExExitInterpreter ();
Status = AcpiTbInstallAndLoadTable (ACPI_PTR_TO_PHYSADDR (Table),
- ACPI_TABLE_ORIGIN_INTERNAL_VIRTUAL, TRUE, &TableIndex);
+ ACPI_TABLE_ORIGIN_INTERNAL_VIRTUAL, Table, TRUE, &TableIndex);
AcpiExEnterInterpreter ();
if (ACPI_FAILURE (Status))
{
@@ -616,8 +638,6 @@ AcpiExLoadOp (
Status = AcpiExAddTable (TableIndex, &DdbHandle);
if (ACPI_FAILURE (Status))
{
- /* On error, TablePtr was deallocated above */
-
return_ACPI_STATUS (Status);
}
@@ -627,22 +647,13 @@ AcpiExLoadOp (
AcpiNsInitializeObjects ();
AcpiExEnterInterpreter ();
- /* Store the DdbHandle into the Target operand */
+ /* Remove the reference to DdbHandle created by AcpiExAddTable above */
- Status = AcpiExStore (DdbHandle, Target, WalkState);
- if (ACPI_FAILURE (Status))
- {
- (void) AcpiExUnloadTable (DdbHandle);
-
- /* TablePtr was deallocated above */
-
- AcpiUtRemoveReference (DdbHandle);
- return_ACPI_STATUS (Status);
- }
+ AcpiUtRemoveReference (DdbHandle);
- /* Remove the reference by added by AcpiExStore above */
+ /* Return -1 (non-zero) indicates success */
- AcpiUtRemoveReference (DdbHandle);
+ Target->Integer.Value = 0xFFFFFFFFFFFFFFFF;
return_ACPI_STATUS (Status);
}
diff --git a/source/components/executer/exconvrt.c b/source/components/executer/exconvrt.c
index 4f6077ff0665..c9572e90bbb7 100644
--- a/source/components/executer/exconvrt.c
+++ b/source/components/executer/exconvrt.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/excreate.c b/source/components/executer/excreate.c
index 8afae43c7cd7..e83810810e36 100644
--- a/source/components/executer/excreate.c
+++ b/source/components/executer/excreate.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -451,6 +451,7 @@ AcpiExCreateRegion (
ObjDesc->Region.SpaceId = SpaceId;
ObjDesc->Region.Address = 0;
ObjDesc->Region.Length = 0;
+ ObjDesc->Region.Pointer = NULL;
ObjDesc->Region.Node = Node;
ObjDesc->Region.Handler = NULL;
ObjDesc->Common.Flags &=
diff --git a/source/components/executer/exdebug.c b/source/components/executer/exdebug.c
index 39fc73521c12..88f75966d848 100644
--- a/source/components/executer/exdebug.c
+++ b/source/components/executer/exdebug.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exdump.c b/source/components/executer/exdump.c
index b14cfe8443f6..e72ac01fc0a5 100644
--- a/source/components/executer/exdump.c
+++ b/source/components/executer/exdump.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exfield.c b/source/components/executer/exfield.c
index 7871e3502bee..2834e7b3800a 100644
--- a/source/components/executer/exfield.c
+++ b/source/components/executer/exfield.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -492,9 +492,7 @@ AcpiExWriteDataToField (
ObjDesc->Field.BaseByteOffset,
SourceDesc->Buffer.Pointer, DataLength);
- if ((ObjDesc->Field.RegionObj->Region.Address == PCC_MASTER_SUBSPACE &&
- MASTER_SUBSPACE_COMMAND (ObjDesc->Field.BaseByteOffset)) ||
- GENERIC_SUBSPACE_COMMAND (ObjDesc->Field.BaseByteOffset))
+ if (MASTER_SUBSPACE_COMMAND (ObjDesc->Field.BaseByteOffset))
{
/* Perform the write */
diff --git a/source/components/executer/exfldio.c b/source/components/executer/exfldio.c
index 6a5a5fe1b8b3..30d17c196be4 100644
--- a/source/components/executer/exfldio.c
+++ b/source/components/executer/exfldio.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -262,7 +262,7 @@ AcpiExSetupRegion (
#ifdef ACPI_UNDER_DEVELOPMENT
/*
* If the Field access is AnyAcc, we can now compute the optimal
- * access (because we know know the length of the parent region)
+ * access (because we know the length of the parent region)
*/
if (!(ObjDesc->Common.Flags & AOPOBJ_DATA_VALID))
{
diff --git a/source/components/executer/exmisc.c b/source/components/executer/exmisc.c
index 220417b99348..4a1e2ff25239 100644
--- a/source/components/executer/exmisc.c
+++ b/source/components/executer/exmisc.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exmutex.c b/source/components/executer/exmutex.c
index 010f5bdd66d3..8b335680dc30 100644
--- a/source/components/executer/exmutex.c
+++ b/source/components/executer/exmutex.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exnames.c b/source/components/executer/exnames.c
index 025907281978..6045bc6b3176 100644
--- a/source/components/executer/exnames.c
+++ b/source/components/executer/exnames.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exoparg1.c b/source/components/executer/exoparg1.c
index bf40b69770c6..2d9bbddf271f 100644
--- a/source/components/executer/exoparg1.c
+++ b/source/components/executer/exoparg1.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -323,6 +323,7 @@ AcpiExOpcode_1A_0T_0R (
}
+#ifdef _OBSOLETE_CODE /* Was originally used for Load() operator */
/*******************************************************************************
*
* FUNCTION: AcpiExOpcode_1A_1T_0R
@@ -352,10 +353,12 @@ AcpiExOpcode_1A_1T_0R (
switch (WalkState->Opcode)
{
+#ifdef _OBSOLETE_CODE
case AML_LOAD_OP:
Status = AcpiExLoadOp (Operand[0], Operand[1], WalkState);
break;
+#endif
default: /* Unknown opcode */
@@ -370,7 +373,7 @@ Cleanup:
return_ACPI_STATUS (Status);
}
-
+#endif
/*******************************************************************************
*
@@ -382,6 +385,8 @@ Cleanup:
*
* DESCRIPTION: Execute opcode with one argument, one target, and a
* return value.
+ * January 2022: Added Load operator, with new ACPI 6.4
+ * semantics.
*
******************************************************************************/
@@ -411,6 +416,7 @@ AcpiExOpcode_1A_1T_1R (
case AML_FIND_SET_LEFT_BIT_OP:
case AML_FIND_SET_RIGHT_BIT_OP:
case AML_FROM_BCD_OP:
+ case AML_LOAD_OP:
case AML_TO_BCD_OP:
case AML_CONDITIONAL_REF_OF_OP:
@@ -512,6 +518,18 @@ AcpiExOpcode_1A_1T_1R (
}
break;
+ case AML_LOAD_OP: /* Result1 = Load (Operand[0], Result1) */
+
+ ReturnDesc->Integer.Value = 0;
+ Status = AcpiExLoadOp (Operand[0], ReturnDesc, WalkState);
+ if (ACPI_SUCCESS (Status))
+ {
+ /* Return -1 (non-zero) indicates success */
+
+ ReturnDesc->Integer.Value = 0xFFFFFFFFFFFFFFFF;
+ }
+ break;
+
case AML_TO_BCD_OP: /* ToBcd (Operand, Result) */
ReturnDesc->Integer.Value = 0;
@@ -1193,7 +1211,7 @@ AcpiExOpcode_1A_0T_1R (
WalkState, ReturnDesc, &TempDesc);
if (ACPI_FAILURE (Status))
{
- goto Cleanup;
+ return_ACPI_STATUS (Status);
}
ReturnDesc = TempDesc;
diff --git a/source/components/executer/exoparg2.c b/source/components/executer/exoparg2.c
index d1fc7c1160eb..8b63d615fa51 100644
--- a/source/components/executer/exoparg2.c
+++ b/source/components/executer/exoparg2.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exoparg3.c b/source/components/executer/exoparg3.c
index 02e73bd4de0e..7b74d32ef374 100644
--- a/source/components/executer/exoparg3.c
+++ b/source/components/executer/exoparg3.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exoparg6.c b/source/components/executer/exoparg6.c
index 23f8e2956045..5506b2c1a75b 100644
--- a/source/components/executer/exoparg6.c
+++ b/source/components/executer/exoparg6.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exprep.c b/source/components/executer/exprep.c
index c7b55c547b70..6d239d7a78f6 100644
--- a/source/components/executer/exprep.c
+++ b/source/components/executer/exprep.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exregion.c b/source/components/executer/exregion.c
index 2f49eb0a2bc5..01d49065ddd4 100644
--- a/source/components/executer/exregion.c
+++ b/source/components/executer/exregion.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -692,9 +692,17 @@ AcpiExDataTableSpaceHandler (
void *HandlerContext,
void *RegionContext)
{
+ ACPI_DATA_TABLE_MAPPING *Mapping;
+ char *Pointer;
+
+
ACPI_FUNCTION_TRACE (ExDataTableSpaceHandler);
+ Mapping = (ACPI_DATA_TABLE_MAPPING *) RegionContext;
+ Pointer = ACPI_CAST_PTR (char, Mapping->Pointer) +
+ (Address - ACPI_PTR_TO_PHYSADDR (Mapping->Pointer));
+
/*
* Perform the memory read or write. The BitWidth was already
* validated.
@@ -703,14 +711,12 @@ AcpiExDataTableSpaceHandler (
{
case ACPI_READ:
- memcpy (ACPI_CAST_PTR (char, Value), ACPI_PHYSADDR_TO_PTR (Address),
- ACPI_DIV_8 (BitWidth));
+ memcpy (ACPI_CAST_PTR (char, Value), Pointer, ACPI_DIV_8 (BitWidth));
break;
case ACPI_WRITE:
- memcpy (ACPI_PHYSADDR_TO_PTR (Address), ACPI_CAST_PTR (char, Value),
- ACPI_DIV_8 (BitWidth));
+ memcpy (Pointer, ACPI_CAST_PTR (char, Value), ACPI_DIV_8 (BitWidth));
break;
default:
diff --git a/source/components/executer/exresnte.c b/source/components/executer/exresnte.c
index 445a1b5e085b..6801b25beef9 100644
--- a/source/components/executer/exresnte.c
+++ b/source/components/executer/exresnte.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exresolv.c b/source/components/executer/exresolv.c
index 78b26041948d..af5202ab8e05 100644
--- a/source/components/executer/exresolv.c
+++ b/source/components/executer/exresolv.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exresop.c b/source/components/executer/exresop.c
index 619da90fb6f7..4abe93766ae7 100644
--- a/source/components/executer/exresop.c
+++ b/source/components/executer/exresop.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exserial.c b/source/components/executer/exserial.c
index 776409db718d..4dfd65992ab2 100644
--- a/source/components/executer/exserial.c
+++ b/source/components/executer/exserial.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exstore.c b/source/components/executer/exstore.c
index 79564db35379..ba1a05d94561 100644
--- a/source/components/executer/exstore.c
+++ b/source/components/executer/exstore.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exstoren.c b/source/components/executer/exstoren.c
index f43e67cdb31b..df4a6f405cea 100644
--- a/source/components/executer/exstoren.c
+++ b/source/components/executer/exstoren.c
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exstorob.c b/source/components/executer/exstorob.c
index 1ed937340c0e..56d048a7e5c6 100644
--- a/source/components/executer/exstorob.c
+++ b/source/components/executer/exstorob.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exsystem.c b/source/components/executer/exsystem.c
index cf10a5e7bdab..62768bcf010f 100644
--- a/source/components/executer/exsystem.c
+++ b/source/components/executer/exsystem.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -265,7 +265,7 @@ AcpiExSystemWaitMutex (
*
* FUNCTION: AcpiExSystemDoStall
*
- * PARAMETERS: HowLong - The amount of time to stall,
+ * PARAMETERS: HowLongUs - The amount of time to stall,
* in microseconds
*
* RETURN: Status
@@ -280,7 +280,7 @@ AcpiExSystemWaitMutex (
ACPI_STATUS
AcpiExSystemDoStall (
- UINT32 HowLong)
+ UINT32 HowLongUs)
{
ACPI_STATUS Status = AE_OK;
@@ -288,21 +288,26 @@ AcpiExSystemDoStall (
ACPI_FUNCTION_ENTRY ();
- if (HowLong > 255) /* 255 microseconds */
+ if (HowLongUs > 255)
{
/*
- * Longer than 255 usec, this is an error
+ * Longer than 255 microseconds, this is an error
*
* (ACPI specifies 100 usec as max, but this gives some slack in
* order to support existing BIOSs)
*/
ACPI_ERROR ((AE_INFO,
- "Time parameter is too large (%u)", HowLong));
+ "Time parameter is too large (%u)", HowLongUs));
Status = AE_AML_OPERAND_VALUE;
}
else
{
- AcpiOsStall (HowLong);
+ if (HowLongUs > 100)
+ {
+ ACPI_WARNING ((AE_INFO,
+ "Time parameter %u us > 100 us violating ACPI spec, please fix the firmware.", HowLongUs));
+ }
+ AcpiOsStall (HowLongUs);
}
return (Status);
@@ -313,7 +318,7 @@ AcpiExSystemDoStall (
*
* FUNCTION: AcpiExSystemDoSleep
*
- * PARAMETERS: HowLong - The amount of time to sleep,
+ * PARAMETERS: HowLongMs - The amount of time to sleep,
* in milliseconds
*
* RETURN: None
@@ -324,7 +329,7 @@ AcpiExSystemDoStall (
ACPI_STATUS
AcpiExSystemDoSleep (
- UINT64 HowLong)
+ UINT64 HowLongMs)
{
ACPI_FUNCTION_ENTRY ();
@@ -334,15 +339,27 @@ AcpiExSystemDoSleep (
AcpiExExitInterpreter ();
/*
+ * Warn users about excessive sleep times, so ASL code can be improved to
+ * use polling or similar techniques.
+ */
+ if (HowLongMs > 10)
+ {
+ ACPI_WARNING ((AE_INFO,
+ "Firmware issue: Excessive sleep time (0x%8.8X%8.8X ms > 10 ms)"
+ " in ACPI Control Method",
+ ACPI_FORMAT_UINT64 (HowLongMs)));
+ }
+
+ /*
* For compatibility with other ACPI implementations and to prevent
* accidental deep sleeps, limit the sleep time to something reasonable.
*/
- if (HowLong > ACPI_MAX_SLEEP)
+ if (HowLongMs > ACPI_MAX_SLEEP)
{
- HowLong = ACPI_MAX_SLEEP;
+ HowLongMs = ACPI_MAX_SLEEP;
}
- AcpiOsSleep (HowLong);
+ AcpiOsSleep (HowLongMs);
/* And now we must get the interpreter again */
diff --git a/source/components/executer/extrace.c b/source/components/executer/extrace.c
index 22c2b8bb8639..a677393f18a7 100644
--- a/source/components/executer/extrace.c
+++ b/source/components/executer/extrace.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exutils.c b/source/components/executer/exutils.c
index 86114c8ec831..e27f567b6e39 100644
--- a/source/components/executer/exutils.c
+++ b/source/components/executer/exutils.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/hardware/hwacpi.c b/source/components/hardware/hwacpi.c
index 71b71cbc64bf..8b3222099db4 100644
--- a/source/components/hardware/hwacpi.c
+++ b/source/components/hardware/hwacpi.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/hardware/hwesleep.c b/source/components/hardware/hwesleep.c
index e8db4d26dc9e..85e4cb950192 100644
--- a/source/components/hardware/hwesleep.c
+++ b/source/components/hardware/hwesleep.c
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -261,7 +261,10 @@ AcpiHwExtendedSleep (
/* Flush caches, as per ACPI specification */
- ACPI_FLUSH_CPU_CACHE ();
+ if (SleepState < ACPI_STATE_S4)
+ {
+ ACPI_FLUSH_CPU_CACHE ();
+ }
Status = AcpiOsEnterSleep (SleepState, SleepControl, 0);
if (Status == AE_CTRL_TERMINATE)
diff --git a/source/components/hardware/hwgpe.c b/source/components/hardware/hwgpe.c
index bf333a3fee32..7f9a5f052fa3 100644
--- a/source/components/hardware/hwgpe.c
+++ b/source/components/hardware/hwgpe.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/hardware/hwpci.c b/source/components/hardware/hwpci.c
index 1b0721e3a69c..b8e8aa9f3b2b 100644
--- a/source/components/hardware/hwpci.c
+++ b/source/components/hardware/hwpci.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/hardware/hwregs.c b/source/components/hardware/hwregs.c
index 712a0887b48f..7b4ae88af8dd 100644
--- a/source/components/hardware/hwregs.c
+++ b/source/components/hardware/hwregs.c
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -633,7 +633,7 @@ AcpiHwGetBitRegisterInfo (
* RETURN: Status
*
* DESCRIPTION: Write the PM1 A/B control registers. These registers are
- * different than than the PM1 A/B status and enable registers
+ * different than the PM1 A/B status and enable registers
* in that different values can be written to the A/B registers.
* Most notably, the SLP_TYP bits can be different, as per the
* values returned from the _Sx predefined methods.
diff --git a/source/components/hardware/hwsleep.c b/source/components/hardware/hwsleep.c
index 2b857d970e9f..45ff336a1860 100644
--- a/source/components/hardware/hwsleep.c
+++ b/source/components/hardware/hwsleep.c
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -262,7 +262,10 @@ AcpiHwLegacySleep (
/* Flush caches, as per ACPI specification */
- ACPI_FLUSH_CPU_CACHE ();
+ if (SleepState < ACPI_STATE_S4)
+ {
+ ACPI_FLUSH_CPU_CACHE ();
+ }
Status = AcpiOsEnterSleep (SleepState, Pm1aControl, Pm1bControl);
if (Status == AE_CTRL_TERMINATE)
@@ -376,7 +379,7 @@ AcpiHwLegacyWakePrep (
Pm1aControl |= (AcpiGbl_SleepTypeAS0 <<
SleepTypeRegInfo->BitPosition);
- Pm1aControl |= (AcpiGbl_SleepTypeBS0 <<
+ Pm1bControl |= (AcpiGbl_SleepTypeBS0 <<
SleepTypeRegInfo->BitPosition);
/* Write the control registers and ignore any errors */
diff --git a/source/components/hardware/hwtimer.c b/source/components/hardware/hwtimer.c
index 0e4102db4c76..829e2a35340e 100644
--- a/source/components/hardware/hwtimer.c
+++ b/source/components/hardware/hwtimer.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/hardware/hwvalid.c b/source/components/hardware/hwvalid.c
index 96b5ac7e6e81..d297905b79a0 100644
--- a/source/components/hardware/hwvalid.c
+++ b/source/components/hardware/hwvalid.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/hardware/hwxface.c b/source/components/hardware/hwxface.c
index 5daed99ad72e..8fd3561a05ff 100644
--- a/source/components/hardware/hwxface.c
+++ b/source/components/hardware/hwxface.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/hardware/hwxfsleep.c b/source/components/hardware/hwxfsleep.c
index f1a1344c744a..5f8b7db0a2fa 100644
--- a/source/components/hardware/hwxfsleep.c
+++ b/source/components/hardware/hwxfsleep.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -353,8 +353,6 @@ AcpiEnterSleepStateS4bios (
return_ACPI_STATUS (Status);
}
- ACPI_FLUSH_CPU_CACHE ();
-
Status = AcpiHwWritePort (AcpiGbl_FADT.SmiCommand,
(UINT32) AcpiGbl_FADT.S4BiosRequest, 8);
if (ACPI_FAILURE (Status))
diff --git a/source/components/namespace/nsaccess.c b/source/components/namespace/nsaccess.c
index 4286223efe4e..2b810facb035 100644
--- a/source/components/namespace/nsaccess.c
+++ b/source/components/namespace/nsaccess.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsalloc.c b/source/components/namespace/nsalloc.c
index 1deb87c6b2e3..560f6f3635d9 100644
--- a/source/components/namespace/nsalloc.c
+++ b/source/components/namespace/nsalloc.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsarguments.c b/source/components/namespace/nsarguments.c
index fe51156578aa..2da06f2f6103 100644
--- a/source/components/namespace/nsarguments.c
+++ b/source/components/namespace/nsarguments.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsconvert.c b/source/components/namespace/nsconvert.c
index 7d68386d5f40..2971f08ecd6b 100644
--- a/source/components/namespace/nsconvert.c
+++ b/source/components/namespace/nsconvert.c
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsdump.c b/source/components/namespace/nsdump.c
index 63a449ab6f5a..36cfbdf6b172 100644
--- a/source/components/namespace/nsdump.c
+++ b/source/components/namespace/nsdump.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsdumpdv.c b/source/components/namespace/nsdumpdv.c
index 55ab899d2867..0cc9b5a5e09c 100644
--- a/source/components/namespace/nsdumpdv.c
+++ b/source/components/namespace/nsdumpdv.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nseval.c b/source/components/namespace/nseval.c
index 1b80202bae86..1cb07615d52f 100644
--- a/source/components/namespace/nseval.c
+++ b/source/components/namespace/nseval.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsinit.c b/source/components/namespace/nsinit.c
index cc15644fc4a5..c523035f1d0a 100644
--- a/source/components/namespace/nsinit.c
+++ b/source/components/namespace/nsinit.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsload.c b/source/components/namespace/nsload.c
index 0a368ab3e603..c3423e55ba01 100644
--- a/source/components/namespace/nsload.c
+++ b/source/components/namespace/nsload.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsnames.c b/source/components/namespace/nsnames.c
index 4c0f6991fe1e..c8412c2edf29 100644
--- a/source/components/namespace/nsnames.c
+++ b/source/components/namespace/nsnames.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsobject.c b/source/components/namespace/nsobject.c
index 529d816f4334..82d735eb186e 100644
--- a/source/components/namespace/nsobject.c
+++ b/source/components/namespace/nsobject.c
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsparse.c b/source/components/namespace/nsparse.c
index 5f7973aa1a20..0ac5efb428b5 100644
--- a/source/components/namespace/nsparse.c
+++ b/source/components/namespace/nsparse.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nspredef.c b/source/components/namespace/nspredef.c
index 410eaeb0fc9c..e28d689670b9 100644
--- a/source/components/namespace/nspredef.c
+++ b/source/components/namespace/nspredef.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsprepkg.c b/source/components/namespace/nsprepkg.c
index e56bcb5d16ca..e6959dacaaf2 100644
--- a/source/components/namespace/nsprepkg.c
+++ b/source/components/namespace/nsprepkg.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsrepair.c b/source/components/namespace/nsrepair.c
index 24094714b56d..59f7aa33f32a 100644
--- a/source/components/namespace/nsrepair.c
+++ b/source/components/namespace/nsrepair.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsrepair2.c b/source/components/namespace/nsrepair2.c
index 40f0634de8c0..bf76b7dd7ba3 100644
--- a/source/components/namespace/nsrepair2.c
+++ b/source/components/namespace/nsrepair2.c
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nssearch.c b/source/components/namespace/nssearch.c
index 408a38e68866..706963c49633 100644
--- a/source/components/namespace/nssearch.c
+++ b/source/components/namespace/nssearch.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsutils.c b/source/components/namespace/nsutils.c
index 1ce7fe407e1a..f4208179bc41 100644
--- a/source/components/namespace/nsutils.c
+++ b/source/components/namespace/nsutils.c
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nswalk.c b/source/components/namespace/nswalk.c
index 50c5ed5bae55..3d0fc639f65b 100644
--- a/source/components/namespace/nswalk.c
+++ b/source/components/namespace/nswalk.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -322,6 +322,10 @@ AcpiNsWalkNamespace (
if (StartNode == ACPI_ROOT_OBJECT)
{
StartNode = AcpiGbl_RootNode;
+ if (!StartNode)
+ {
+ return_ACPI_STATUS (AE_NO_NAMESPACE);
+ }
}
/* Null child means "get first node" */
diff --git a/source/components/namespace/nsxfeval.c b/source/components/namespace/nsxfeval.c
index b067f6e81936..9724d02427be 100644
--- a/source/components/namespace/nsxfeval.c
+++ b/source/components/namespace/nsxfeval.c
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsxfname.c b/source/components/namespace/nsxfname.c
index 7a7393b61a7b..7d52330f6629 100644
--- a/source/components/namespace/nsxfname.c
+++ b/source/components/namespace/nsxfname.c
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsxfobj.c b/source/components/namespace/nsxfobj.c
index fb08e76f6247..2aa1fc17b9cc 100644
--- a/source/components/namespace/nsxfobj.c
+++ b/source/components/namespace/nsxfobj.c
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/parser/psargs.c b/source/components/parser/psargs.c
index 895feba0ace6..f510623ebbb7 100644
--- a/source/components/parser/psargs.c
+++ b/source/components/parser/psargs.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/parser/psloop.c b/source/components/parser/psloop.c
index 478256f29bc5..2b4c1f2a8d78 100644
--- a/source/components/parser/psloop.c
+++ b/source/components/parser/psloop.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/parser/psobject.c b/source/components/parser/psobject.c
index c0c3e9654c03..18a32ef36d3f 100644
--- a/source/components/parser/psobject.c
+++ b/source/components/parser/psobject.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/parser/psopcode.c b/source/components/parser/psopcode.c
index 4f153303fbcd..540716af5b08 100644
--- a/source/components/parser/psopcode.c
+++ b/source/components/parser/psopcode.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -375,7 +375,7 @@ const ACPI_OPCODE_INFO AcpiGbl_AmlOpInfo[AML_NUM_OPCODES] =
/* 47 */ ACPI_OP ("Event", ARGP_EVENT_OP, ARGI_EVENT_OP, ACPI_TYPE_EVENT, AML_CLASS_NAMED_OBJECT, AML_TYPE_NAMED_SIMPLE, AML_NSOBJECT | AML_NSOPCODE | AML_NSNODE | AML_NAMED ),
/* 48 */ ACPI_OP ("CondRefOf", ARGP_COND_REF_OF_OP, ARGI_COND_REF_OF_OP, ACPI_TYPE_ANY, AML_CLASS_EXECUTE, AML_TYPE_EXEC_1A_1T_1R, AML_FLAGS_EXEC_1A_1T_1R),
/* 49 */ ACPI_OP ("CreateField", ARGP_CREATE_FIELD_OP, ARGI_CREATE_FIELD_OP, ACPI_TYPE_BUFFER_FIELD, AML_CLASS_CREATE, AML_TYPE_CREATE_FIELD, AML_HAS_ARGS | AML_NSOBJECT | AML_NSNODE | AML_DEFER | AML_FIELD | AML_CREATE),
-/* 4A */ ACPI_OP ("Load", ARGP_LOAD_OP, ARGI_LOAD_OP, ACPI_TYPE_ANY, AML_CLASS_EXECUTE, AML_TYPE_EXEC_1A_1T_0R, AML_FLAGS_EXEC_1A_1T_0R),
+/* 4A */ ACPI_OP ("Load", ARGP_LOAD_OP, ARGI_LOAD_OP, ACPI_TYPE_ANY, AML_CLASS_EXECUTE, AML_TYPE_EXEC_1A_1T_1R, AML_FLAGS_EXEC_1A_1T_1R),
/* 4B */ ACPI_OP ("Stall", ARGP_STALL_OP, ARGI_STALL_OP, ACPI_TYPE_ANY, AML_CLASS_EXECUTE, AML_TYPE_EXEC_1A_0T_0R, AML_FLAGS_EXEC_1A_0T_0R),
/* 4C */ ACPI_OP ("Sleep", ARGP_SLEEP_OP, ARGI_SLEEP_OP, ACPI_TYPE_ANY, AML_CLASS_EXECUTE, AML_TYPE_EXEC_1A_0T_0R, AML_FLAGS_EXEC_1A_0T_0R),
/* 4D */ ACPI_OP ("Acquire", ARGP_ACQUIRE_OP, ARGI_ACQUIRE_OP, ACPI_TYPE_ANY, AML_CLASS_EXECUTE, AML_TYPE_EXEC_2A_0T_1R, AML_FLAGS_EXEC_2A_0T_1R),
diff --git a/source/components/parser/psopinfo.c b/source/components/parser/psopinfo.c
index 30447c78b182..fcb080cacab2 100644
--- a/source/components/parser/psopinfo.c
+++ b/source/components/parser/psopinfo.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/parser/psparse.c b/source/components/parser/psparse.c
index 3b2a3c4c18b3..e0cd5915b6ad 100644
--- a/source/components/parser/psparse.c
+++ b/source/components/parser/psparse.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/parser/psscope.c b/source/components/parser/psscope.c
index cbe575dc523e..269410a6acf7 100644
--- a/source/components/parser/psscope.c
+++ b/source/components/parser/psscope.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/parser/pstree.c b/source/components/parser/pstree.c
index 7f92b773aca6..92f623046cf0 100644
--- a/source/components/parser/pstree.c
+++ b/source/components/parser/pstree.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/parser/psutils.c b/source/components/parser/psutils.c
index 223f68db6dc8..a9ea353641d9 100644
--- a/source/components/parser/psutils.c
+++ b/source/components/parser/psutils.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/parser/pswalk.c b/source/components/parser/pswalk.c
index 0d5b78ddb211..31232fd46a7b 100644
--- a/source/components/parser/pswalk.c
+++ b/source/components/parser/pswalk.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/parser/psxface.c b/source/components/parser/psxface.c
index 102033fee81e..295da1af6988 100644
--- a/source/components/parser/psxface.c
+++ b/source/components/parser/psxface.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/resources/rsaddr.c b/source/components/resources/rsaddr.c
index 06f8c44ae6c9..93d45ca35718 100644
--- a/source/components/resources/rsaddr.c
+++ b/source/components/resources/rsaddr.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/resources/rscalc.c b/source/components/resources/rscalc.c
index 2e878e80f057..c966636b6afe 100644
--- a/source/components/resources/rscalc.c
+++ b/source/components/resources/rscalc.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/resources/rscreate.c b/source/components/resources/rscreate.c
index 8443d7522e28..6c230bce0ee5 100644
--- a/source/components/resources/rscreate.c
+++ b/source/components/resources/rscreate.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/resources/rsdump.c b/source/components/resources/rsdump.c
index 44b552ada5b4..e8f13724c90c 100644
--- a/source/components/resources/rsdump.c
+++ b/source/components/resources/rsdump.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/resources/rsdumpinfo.c b/source/components/resources/rsdumpinfo.c
index 26f4993d5a54..83b22caa62f9 100644
--- a/source/components/resources/rsdumpinfo.c
+++ b/source/components/resources/rsdumpinfo.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/resources/rsinfo.c b/source/components/resources/rsinfo.c
index 9687bfb44648..b9d4df46b432 100644
--- a/source/components/resources/rsinfo.c
+++ b/source/components/resources/rsinfo.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/resources/rsio.c b/source/components/resources/rsio.c
index 4be6a7d16a90..299326232bec 100644
--- a/source/components/resources/rsio.c
+++ b/source/components/resources/rsio.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/resources/rsirq.c b/source/components/resources/rsirq.c
index 1a44bdbe9f91..9a8fc18fc568 100644
--- a/source/components/resources/rsirq.c
+++ b/source/components/resources/rsirq.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/resources/rslist.c b/source/components/resources/rslist.c
index 1867c0a95479..fdd24688c2d5 100644
--- a/source/components/resources/rslist.c
+++ b/source/components/resources/rslist.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/resources/rsmemory.c b/source/components/resources/rsmemory.c
index e5562a046685..e527bad7bf0c 100644
--- a/source/components/resources/rsmemory.c
+++ b/source/components/resources/rsmemory.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/resources/rsmisc.c b/source/components/resources/rsmisc.c
index f0f186b83583..16c52134ed8c 100644
--- a/source/components/resources/rsmisc.c
+++ b/source/components/resources/rsmisc.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/resources/rsserial.c b/source/components/resources/rsserial.c
index d505ea949441..3075b4c47dcc 100644
--- a/source/components/resources/rsserial.c
+++ b/source/components/resources/rsserial.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/resources/rsutils.c b/source/components/resources/rsutils.c
index 6aa2833797c1..7110406f4e9e 100644
--- a/source/components/resources/rsutils.c
+++ b/source/components/resources/rsutils.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/resources/rsxface.c b/source/components/resources/rsxface.c
index 3f055af4a349..d3aaf1d0fd88 100644
--- a/source/components/resources/rsxface.c
+++ b/source/components/resources/rsxface.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/tables/tbdata.c b/source/components/tables/tbdata.c
index 522234d96d3b..5e4f7ca7402e 100644
--- a/source/components/tables/tbdata.c
+++ b/source/components/tables/tbdata.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -243,14 +243,28 @@ AcpiTbInitTableDescriptor (
{
/*
- * Initialize the table descriptor. Set the pointer to NULL, since the
- * table is not fully mapped at this time.
+ * Initialize the table descriptor. Set the pointer to NULL for external
+ * tables, since the table is not fully mapped at this time.
*/
memset (TableDesc, 0, sizeof (ACPI_TABLE_DESC));
TableDesc->Address = Address;
TableDesc->Length = Table->Length;
TableDesc->Flags = Flags;
ACPI_MOVE_32_TO_32 (TableDesc->Signature.Ascii, Table->Signature);
+
+ switch (TableDesc->Flags & ACPI_TABLE_ORIGIN_MASK)
+ {
+ case ACPI_TABLE_ORIGIN_INTERNAL_VIRTUAL:
+ case ACPI_TABLE_ORIGIN_EXTERNAL_VIRTUAL:
+
+ TableDesc->Pointer = Table;
+ break;
+
+ case ACPI_TABLE_ORIGIN_INTERNAL_PHYSICAL:
+ default:
+
+ break;
+ }
}
@@ -290,8 +304,7 @@ AcpiTbAcquireTable (
case ACPI_TABLE_ORIGIN_INTERNAL_VIRTUAL:
case ACPI_TABLE_ORIGIN_EXTERNAL_VIRTUAL:
- Table = ACPI_CAST_PTR (ACPI_TABLE_HEADER,
- ACPI_PHYSADDR_TO_PTR (TableDesc->Address));
+ Table = TableDesc->Pointer;
break;
default:
@@ -359,6 +372,8 @@ AcpiTbReleaseTable (
* PARAMETERS: TableDesc - Table descriptor to be acquired
* Address - Address of the table
* Flags - Allocation flags of the table
+ * Table - Pointer to the table (required for virtual
+ * origins, optional for physical)
*
* RETURN: Status
*
@@ -373,9 +388,10 @@ ACPI_STATUS
AcpiTbAcquireTempTable (
ACPI_TABLE_DESC *TableDesc,
ACPI_PHYSICAL_ADDRESS Address,
- UINT8 Flags)
+ UINT8 Flags,
+ ACPI_TABLE_HEADER *Table)
{
- ACPI_TABLE_HEADER *TableHeader;
+ BOOLEAN MappedTable = FALSE;
switch (Flags & ACPI_TABLE_ORIGIN_MASK)
@@ -384,37 +400,43 @@ AcpiTbAcquireTempTable (
/* Get the length of the full table from the header */
- TableHeader = AcpiOsMapMemory (Address, sizeof (ACPI_TABLE_HEADER));
- if (!TableHeader)
+ if (!Table)
{
- return (AE_NO_MEMORY);
+ Table = AcpiOsMapMemory (Address, sizeof (ACPI_TABLE_HEADER));
+ if (!Table)
+ {
+ return (AE_NO_MEMORY);
+ }
+
+ MappedTable = TRUE;
}
- AcpiTbInitTableDescriptor (TableDesc, Address, Flags, TableHeader);
- AcpiOsUnmapMemory (TableHeader, sizeof (ACPI_TABLE_HEADER));
- return (AE_OK);
+ break;
case ACPI_TABLE_ORIGIN_INTERNAL_VIRTUAL:
case ACPI_TABLE_ORIGIN_EXTERNAL_VIRTUAL:
- TableHeader = ACPI_CAST_PTR (ACPI_TABLE_HEADER,
- ACPI_PHYSADDR_TO_PTR (Address));
- if (!TableHeader)
+ if (!Table)
{
- return (AE_NO_MEMORY);
+ return (AE_BAD_PARAMETER);
}
- AcpiTbInitTableDescriptor (TableDesc, Address, Flags, TableHeader);
- return (AE_OK);
+ break;
default:
- break;
+ /* Table is not valid yet */
+
+ return (AE_NO_MEMORY);
}
- /* Table is not valid yet */
+ AcpiTbInitTableDescriptor (TableDesc, Address, Flags, Table);
+ if (MappedTable)
+ {
+ AcpiOsUnmapMemory (Table, sizeof (ACPI_TABLE_HEADER));
+ }
- return (AE_NO_MEMORY);
+ return (AE_OK);
}
@@ -513,7 +535,20 @@ AcpiTbInvalidateTable (
AcpiTbReleaseTable (TableDesc->Pointer, TableDesc->Length,
TableDesc->Flags);
- TableDesc->Pointer = NULL;
+
+ switch (TableDesc->Flags & ACPI_TABLE_ORIGIN_MASK)
+ {
+ case ACPI_TABLE_ORIGIN_INTERNAL_PHYSICAL:
+
+ TableDesc->Pointer = NULL;
+ break;
+
+ case ACPI_TABLE_ORIGIN_INTERNAL_VIRTUAL:
+ case ACPI_TABLE_ORIGIN_EXTERNAL_VIRTUAL:
+ default:
+
+ break;
+ }
return_VOID;
}
@@ -1219,6 +1254,9 @@ AcpiTbLoadTable (
*
* PARAMETERS: Address - Physical address of the table
* Flags - Allocation flags of the table
+ * Table - Pointer to the table (required for
+ * virtual origins, optional for
+ * physical)
* Override - Whether override should be performed
* TableIndex - Where table index is returned
*
@@ -1232,6 +1270,7 @@ ACPI_STATUS
AcpiTbInstallAndLoadTable (
ACPI_PHYSICAL_ADDRESS Address,
UINT8 Flags,
+ ACPI_TABLE_HEADER *Table,
BOOLEAN Override,
UINT32 *TableIndex)
{
@@ -1244,7 +1283,7 @@ AcpiTbInstallAndLoadTable (
/* Install the table and load it into the namespace */
- Status = AcpiTbInstallStandardTable (Address, Flags, TRUE,
+ Status = AcpiTbInstallStandardTable (Address, Flags, Table, TRUE,
Override, &i);
if (ACPI_FAILURE (Status))
{
diff --git a/source/components/tables/tbfadt.c b/source/components/tables/tbfadt.c
index 8196e7afbaa2..7ae35f19017a 100644
--- a/source/components/tables/tbfadt.c
+++ b/source/components/tables/tbfadt.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -486,7 +486,7 @@ AcpiTbParseFadt (
AcpiTbInstallStandardTable (
(ACPI_PHYSICAL_ADDRESS) AcpiGbl_FADT.XDsdt,
- ACPI_TABLE_ORIGIN_INTERNAL_PHYSICAL, FALSE, TRUE,
+ ACPI_TABLE_ORIGIN_INTERNAL_PHYSICAL, NULL, FALSE, TRUE,
&AcpiGbl_DsdtIndex);
/* If Hardware Reduced flag is set, there is no FACS */
@@ -497,14 +497,14 @@ AcpiTbParseFadt (
{
AcpiTbInstallStandardTable (
(ACPI_PHYSICAL_ADDRESS) AcpiGbl_FADT.Facs,
- ACPI_TABLE_ORIGIN_INTERNAL_PHYSICAL, FALSE, TRUE,
+ ACPI_TABLE_ORIGIN_INTERNAL_PHYSICAL, NULL, FALSE, TRUE,
&AcpiGbl_FacsIndex);
}
if (AcpiGbl_FADT.XFacs)
{
AcpiTbInstallStandardTable (
(ACPI_PHYSICAL_ADDRESS) AcpiGbl_FADT.XFacs,
- ACPI_TABLE_ORIGIN_INTERNAL_PHYSICAL, FALSE, TRUE,
+ ACPI_TABLE_ORIGIN_INTERNAL_PHYSICAL, NULL, FALSE, TRUE,
&AcpiGbl_XFacsIndex);
}
}
diff --git a/source/components/tables/tbfind.c b/source/components/tables/tbfind.c
index 1bc21b3e0164..81ed2d97a66e 100644
--- a/source/components/tables/tbfind.c
+++ b/source/components/tables/tbfind.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/tables/tbinstal.c b/source/components/tables/tbinstal.c
index dcbb2a745b45..9253bd1db0a3 100644
--- a/source/components/tables/tbinstal.c
+++ b/source/components/tables/tbinstal.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -227,6 +227,8 @@ AcpiTbInstallTableWithOverride (
* PARAMETERS: Address - Address of the table (might be a virtual
* address depending on the TableFlags)
* Flags - Flags for the table
+ * Table - Pointer to the table (required for virtual
+ * origins, optional for physical)
* Reload - Whether reload should be performed
* Override - Whether override should be performed
* TableIndex - Where the table index is returned
@@ -245,6 +247,7 @@ ACPI_STATUS
AcpiTbInstallStandardTable (
ACPI_PHYSICAL_ADDRESS Address,
UINT8 Flags,
+ ACPI_TABLE_HEADER *Table,
BOOLEAN Reload,
BOOLEAN Override,
UINT32 *TableIndex)
@@ -259,7 +262,7 @@ AcpiTbInstallStandardTable (
/* Acquire a temporary table descriptor for validation */
- Status = AcpiTbAcquireTempTable (&NewTableDesc, Address, Flags);
+ Status = AcpiTbAcquireTempTable (&NewTableDesc, Address, Flags, Table);
if (ACPI_FAILURE (Status))
{
ACPI_ERROR ((AE_INFO,
@@ -369,7 +372,7 @@ AcpiTbOverrideTable (
if (ACPI_SUCCESS (Status) && Table)
{
AcpiTbAcquireTempTable (&NewTableDesc, ACPI_PTR_TO_PHYSADDR (Table),
- ACPI_TABLE_ORIGIN_EXTERNAL_VIRTUAL);
+ ACPI_TABLE_ORIGIN_EXTERNAL_VIRTUAL, Table);
ACPI_ERROR_ONLY (OverrideType = "Logical");
goto FinishOverride;
}
@@ -381,7 +384,7 @@ AcpiTbOverrideTable (
if (ACPI_SUCCESS (Status) && Address && Length)
{
AcpiTbAcquireTempTable (&NewTableDesc, Address,
- ACPI_TABLE_ORIGIN_INTERNAL_PHYSICAL);
+ ACPI_TABLE_ORIGIN_INTERNAL_PHYSICAL, NULL);
ACPI_ERROR_ONLY (OverrideType = "Physical");
goto FinishOverride;
}
@@ -457,7 +460,8 @@ AcpiTbUninstallTable (
if ((TableDesc->Flags & ACPI_TABLE_ORIGIN_MASK) ==
ACPI_TABLE_ORIGIN_INTERNAL_VIRTUAL)
{
- ACPI_FREE (ACPI_PHYSADDR_TO_PTR (TableDesc->Address));
+ ACPI_FREE (TableDesc->Pointer);
+ TableDesc->Pointer = NULL;
}
TableDesc->Address = ACPI_PTR_TO_PHYSADDR (NULL);
diff --git a/source/components/tables/tbprint.c b/source/components/tables/tbprint.c
index 392ff95a2e0f..0b53e73730a9 100644
--- a/source/components/tables/tbprint.c
+++ b/source/components/tables/tbprint.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -261,7 +261,8 @@ AcpiTbPrintTableHeader (
Header->Signature, ACPI_FORMAT_UINT64 (Address),
Header->Length));
}
- else if (ACPI_VALIDATE_RSDP_SIG (Header->Signature))
+ else if (ACPI_VALIDATE_RSDP_SIG (ACPI_CAST_PTR (ACPI_TABLE_RSDP,
+ Header)->Signature))
{
/* RSDP has no common fields */
diff --git a/source/components/tables/tbutils.c b/source/components/tables/tbutils.c
index 6316f258c3fa..d2a30dc383dc 100644
--- a/source/components/tables/tbutils.c
+++ b/source/components/tables/tbutils.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -500,7 +500,8 @@ AcpiTbParseRootTable (
}
Status = AcpiTbInstallStandardTable (Address,
- ACPI_TABLE_ORIGIN_INTERNAL_PHYSICAL, FALSE, TRUE, &TableIndex);
+ ACPI_TABLE_ORIGIN_INTERNAL_PHYSICAL, NULL, FALSE, TRUE,
+ &TableIndex);
if (ACPI_SUCCESS (Status) &&
ACPI_COMPARE_NAMESEG (
diff --git a/source/components/tables/tbxface.c b/source/components/tables/tbxface.c
index d861d9e6aa2e..919ad13813d6 100644
--- a/source/components/tables/tbxface.c
+++ b/source/components/tables/tbxface.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/tables/tbxfload.c b/source/components/tables/tbxfload.c
index 046487ba36ee..ddd9b795e50a 100644
--- a/source/components/tables/tbxfload.c
+++ b/source/components/tables/tbxfload.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -396,9 +396,7 @@ UnlockAndExit:
*
* FUNCTION: AcpiInstallTable
*
- * PARAMETERS: Address - Address of the ACPI table to be installed.
- * Physical - Whether the address is a physical table
- * address or not
+ * PARAMETERS: Table - Pointer to the ACPI table to be installed.
*
* RETURN: Status
*
@@ -410,28 +408,17 @@ UnlockAndExit:
ACPI_STATUS ACPI_INIT_FUNCTION
AcpiInstallTable (
- ACPI_PHYSICAL_ADDRESS Address,
- BOOLEAN Physical)
+ ACPI_TABLE_HEADER *Table)
{
ACPI_STATUS Status;
- UINT8 Flags;
UINT32 TableIndex;
ACPI_FUNCTION_TRACE (AcpiInstallTable);
- if (Physical)
- {
- Flags = ACPI_TABLE_ORIGIN_INTERNAL_PHYSICAL;
- }
- else
- {
- Flags = ACPI_TABLE_ORIGIN_EXTERNAL_VIRTUAL;
- }
-
- Status = AcpiTbInstallStandardTable (Address, Flags,
- FALSE, FALSE, &TableIndex);
+ Status = AcpiTbInstallStandardTable (ACPI_PTR_TO_PHYSADDR (Table),
+ ACPI_TABLE_ORIGIN_EXTERNAL_VIRTUAL, Table, FALSE, FALSE, &TableIndex);
return_ACPI_STATUS (Status);
}
@@ -441,6 +428,40 @@ ACPI_EXPORT_SYMBOL_INIT (AcpiInstallTable)
/*******************************************************************************
*
+ * FUNCTION: AcpiInstallPhysicalTable
+ *
+ * PARAMETERS: Address - Address of the ACPI table to be installed.
+ *
+ * RETURN: Status
+ *
+ * DESCRIPTION: Dynamically install an ACPI table.
+ * Note: This function should only be invoked after
+ * AcpiInitializeTables() and before AcpiLoadTables().
+ *
+ ******************************************************************************/
+
+ACPI_STATUS ACPI_INIT_FUNCTION
+AcpiInstallPhysicalTable (
+ ACPI_PHYSICAL_ADDRESS Address)
+{
+ ACPI_STATUS Status;
+ UINT32 TableIndex;
+
+
+ ACPI_FUNCTION_TRACE (AcpiInstallPhysicalTable);
+
+
+ Status = AcpiTbInstallStandardTable (Address,
+ ACPI_TABLE_ORIGIN_INTERNAL_PHYSICAL, NULL, FALSE, FALSE, &TableIndex);
+
+ return_ACPI_STATUS (Status);
+}
+
+ACPI_EXPORT_SYMBOL_INIT (AcpiInstallPhysicalTable)
+
+
+/*******************************************************************************
+ *
* FUNCTION: AcpiLoadTable
*
* PARAMETERS: Table - Pointer to a buffer containing the ACPI
@@ -481,7 +502,7 @@ AcpiLoadTable (
ACPI_INFO (("Host-directed Dynamic ACPI Table Load:"));
Status = AcpiTbInstallAndLoadTable (ACPI_PTR_TO_PHYSADDR (Table),
- ACPI_TABLE_ORIGIN_EXTERNAL_VIRTUAL, FALSE, &TableIndex);
+ ACPI_TABLE_ORIGIN_EXTERNAL_VIRTUAL, Table, FALSE, &TableIndex);
if (TableIdx)
{
*TableIdx = TableIndex;
diff --git a/source/components/tables/tbxfroot.c b/source/components/tables/tbxfroot.c
index ed33c9b67acf..bb90f6059647 100644
--- a/source/components/tables/tbxfroot.c
+++ b/source/components/tables/tbxfroot.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utaddress.c b/source/components/utilities/utaddress.c
index 92039cfa0f64..5aa12832bd41 100644
--- a/source/components/utilities/utaddress.c
+++ b/source/components/utilities/utaddress.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utalloc.c b/source/components/utilities/utalloc.c
index 276a531917b1..aa06339cb8c7 100644
--- a/source/components/utilities/utalloc.c
+++ b/source/components/utilities/utalloc.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utascii.c b/source/components/utilities/utascii.c
index a375e44d058d..db2389024d02 100644
--- a/source/components/utilities/utascii.c
+++ b/source/components/utilities/utascii.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utbuffer.c b/source/components/utilities/utbuffer.c
index 214ff20bfb72..2cf097bf5ceb 100644
--- a/source/components/utilities/utbuffer.c
+++ b/source/components/utilities/utbuffer.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utcache.c b/source/components/utilities/utcache.c
index 4e5de96f27b1..2ff1540c1662 100644
--- a/source/components/utilities/utcache.c
+++ b/source/components/utilities/utcache.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utclib.c b/source/components/utilities/utclib.c
index 1c19a11d3a85..42f8d171401c 100644
--- a/source/components/utilities/utclib.c
+++ b/source/components/utilities/utclib.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utcopy.c b/source/components/utilities/utcopy.c
index 329416480a38..e725d55b5ef2 100644
--- a/source/components/utilities/utcopy.c
+++ b/source/components/utilities/utcopy.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utdebug.c b/source/components/utilities/utdebug.c
index 6d8ab27baa4d..f789e686da20 100644
--- a/source/components/utilities/utdebug.c
+++ b/source/components/utilities/utdebug.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utdecode.c b/source/components/utilities/utdecode.c
index 11818b4f8c36..2a49cbd8d83c 100644
--- a/source/components/utilities/utdecode.c
+++ b/source/components/utilities/utdecode.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utdelete.c b/source/components/utilities/utdelete.c
index 624aa6870809..b36c4bb3a77a 100644
--- a/source/components/utilities/utdelete.c
+++ b/source/components/utilities/utdelete.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -594,6 +594,7 @@ AcpiUtUpdateRefCount (
ACPI_WARNING ((AE_INFO,
"Obj %p, Reference Count is already zero, cannot decrement\n",
Object));
+ return;
}
ACPI_DEBUG_PRINT_RAW ((ACPI_DB_ALLOCATIONS,
diff --git a/source/components/utilities/uterror.c b/source/components/utilities/uterror.c
index 51ce8d59090a..2aee4d54f9c4 100644
--- a/source/components/utilities/uterror.c
+++ b/source/components/utilities/uterror.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/uteval.c b/source/components/utilities/uteval.c
index 9e30ee8d9ef4..f4ccea68bd9c 100644
--- a/source/components/utilities/uteval.c
+++ b/source/components/utilities/uteval.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utexcep.c b/source/components/utilities/utexcep.c
index 4e7e3f55443a..279d33fcde5d 100644
--- a/source/components/utilities/utexcep.c
+++ b/source/components/utilities/utexcep.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utglobal.c b/source/components/utilities/utglobal.c
index 65189ff2de12..7de4a9c31bc7 100644
--- a/source/components/utilities/utglobal.c
+++ b/source/components/utilities/utglobal.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/uthex.c b/source/components/utilities/uthex.c
index 5cbc8fa6d6b0..c64d3def8839 100644
--- a/source/components/utilities/uthex.c
+++ b/source/components/utilities/uthex.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utids.c b/source/components/utilities/utids.c
index 4ef4fccaaca8..498338a10b68 100644
--- a/source/components/utilities/utids.c
+++ b/source/components/utilities/utids.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utinit.c b/source/components/utilities/utinit.c
index 27f1e37b835d..0f2cf48907a9 100644
--- a/source/components/utilities/utinit.c
+++ b/source/components/utilities/utinit.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utlock.c b/source/components/utilities/utlock.c
index a1501189d070..9357279b3653 100644
--- a/source/components/utilities/utlock.c
+++ b/source/components/utilities/utlock.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utmath.c b/source/components/utilities/utmath.c
index 2580cb6e931d..b534bb3e070b 100644
--- a/source/components/utilities/utmath.c
+++ b/source/components/utilities/utmath.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utmisc.c b/source/components/utilities/utmisc.c
index f2db74e8f361..1efe0afc99bf 100644
--- a/source/components/utilities/utmisc.c
+++ b/source/components/utilities/utmisc.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utmutex.c b/source/components/utilities/utmutex.c
index b723f5b27de6..1f1c1d82d055 100644
--- a/source/components/utilities/utmutex.c
+++ b/source/components/utilities/utmutex.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utnonansi.c b/source/components/utilities/utnonansi.c
index cf3763bc1d2e..e3c2f460d869 100644
--- a/source/components/utilities/utnonansi.c
+++ b/source/components/utilities/utnonansi.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utobject.c b/source/components/utilities/utobject.c
index 8b3dcd5f2129..52e02beb9596 100644
--- a/source/components/utilities/utobject.c
+++ b/source/components/utilities/utobject.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utosi.c b/source/components/utilities/utosi.c
index 756ca35c35b1..700f30a686d3 100644
--- a/source/components/utilities/utosi.c
+++ b/source/components/utilities/utosi.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -221,6 +221,7 @@ static ACPI_INTERFACE_INFO AcpiDefaultSupportedInterfaces[] =
{"Windows 2018.2", NULL, 0, ACPI_OSI_WIN_10_RS5}, /* Windows 10 version 1809 - Added 11/2018 */
{"Windows 2019", NULL, 0, ACPI_OSI_WIN_10_19H1}, /* Windows 10 version 1903 - Added 08/2019 */
{"Windows 2020", NULL, 0, ACPI_OSI_WIN_10_20H1}, /* Windows 10 version 2004 - Added 08/2021 */
+ {"Windows 2021", NULL, 0, ACPI_OSI_WIN_11}, /* Windows 11 - Added 01/2022 */
/* Feature Group Strings */
diff --git a/source/components/utilities/utownerid.c b/source/components/utilities/utownerid.c
index 2bea3e578862..30ba6b7500a7 100644
--- a/source/components/utilities/utownerid.c
+++ b/source/components/utilities/utownerid.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utpredef.c b/source/components/utilities/utpredef.c
index c9a830c2c5dd..7f97ee7c4e10 100644
--- a/source/components/utilities/utpredef.c
+++ b/source/components/utilities/utpredef.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utprint.c b/source/components/utilities/utprint.c
index 96a9ea5d7c28..4d9252ac5a87 100644
--- a/source/components/utilities/utprint.c
+++ b/source/components/utilities/utprint.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utresdecode.c b/source/components/utilities/utresdecode.c
index 561240f06724..12ab687588cc 100644
--- a/source/components/utilities/utresdecode.c
+++ b/source/components/utilities/utresdecode.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utresrc.c b/source/components/utilities/utresrc.c
index 70e5119e807f..26c382d879a9 100644
--- a/source/components/utilities/utresrc.c
+++ b/source/components/utilities/utresrc.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utstate.c b/source/components/utilities/utstate.c
index ac85c00203b8..f089ffeaa66b 100644
--- a/source/components/utilities/utstate.c
+++ b/source/components/utilities/utstate.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utstring.c b/source/components/utilities/utstring.c
index 5218ebab207b..5af4c4d3624d 100644
--- a/source/components/utilities/utstring.c
+++ b/source/components/utilities/utstring.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utstrsuppt.c b/source/components/utilities/utstrsuppt.c
index f2a02eabb2ab..0487a4f63fdc 100644
--- a/source/components/utilities/utstrsuppt.c
+++ b/source/components/utilities/utstrsuppt.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utstrtoul64.c b/source/components/utilities/utstrtoul64.c
index 6a121c730256..1ef50eac07cf 100644
--- a/source/components/utilities/utstrtoul64.c
+++ b/source/components/utilities/utstrtoul64.c
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/uttrack.c b/source/components/utilities/uttrack.c
index b7928b155c75..7791fe9b7f73 100644
--- a/source/components/utilities/uttrack.c
+++ b/source/components/utilities/uttrack.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utuuid.c b/source/components/utilities/utuuid.c
index 299353ccea87..8fd85d62960e 100644
--- a/source/components/utilities/utuuid.c
+++ b/source/components/utilities/utuuid.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utxface.c b/source/components/utilities/utxface.c
index 227d18cae9a1..74a8ff485bc5 100644
--- a/source/components/utilities/utxface.c
+++ b/source/components/utilities/utxface.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utxferror.c b/source/components/utilities/utxferror.c
index 0c6b1c769661..77701dfec99a 100644
--- a/source/components/utilities/utxferror.c
+++ b/source/components/utilities/utxferror.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utxfinit.c b/source/components/utilities/utxfinit.c
index 15756cb76655..865fe9d2dee8 100644
--- a/source/components/utilities/utxfinit.c
+++ b/source/components/utilities/utxfinit.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utxfmutex.c b/source/components/utilities/utxfmutex.c
index 68472b7fb376..2e77fc95ab65 100644
--- a/source/components/utilities/utxfmutex.c
+++ b/source/components/utilities/utxfmutex.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acapps.h b/source/include/acapps.h
index 3f1833c5f996..382ab1700b34 100644
--- a/source/include/acapps.h
+++ b/source/include/acapps.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -159,7 +159,7 @@
/* Common info for tool signons */
#define ACPICA_NAME "Intel ACPI Component Architecture"
-#define ACPICA_COPYRIGHT "Copyright (c) 2000 - 2021 Intel Corporation"
+#define ACPICA_COPYRIGHT "Copyright (c) 2000 - 2022 Intel Corporation"
#if ACPI_MACHINE_WIDTH == 64
#define ACPI_WIDTH " (64-bit version)"
diff --git a/source/include/acbuffer.h b/source/include/acbuffer.h
index 1576afa6ff95..0739feb52817 100644
--- a/source/include/acbuffer.h
+++ b/source/include/acbuffer.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acclib.h b/source/include/acclib.h
index c91b1edf1af5..75c48119cab7 100644
--- a/source/include/acclib.h
+++ b/source/include/acclib.h
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/accommon.h b/source/include/accommon.h
index 4ef3f5bc1604..210035cd4961 100644
--- a/source/include/accommon.h
+++ b/source/include/accommon.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acconfig.h b/source/include/acconfig.h
index a580852698ab..8ba7dc28473a 100644
--- a/source/include/acconfig.h
+++ b/source/include/acconfig.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acconvert.h b/source/include/acconvert.h
index b654b18b4dc5..048fd53e4de2 100644
--- a/source/include/acconvert.h
+++ b/source/include/acconvert.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acdebug.h b/source/include/acdebug.h
index 434745d1458c..6716a094d4ad 100644
--- a/source/include/acdebug.h
+++ b/source/include/acdebug.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acdisasm.h b/source/include/acdisasm.h
index 6e162d6a4c86..352417cbb69a 100644
--- a/source/include/acdisasm.h
+++ b/source/include/acdisasm.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -206,6 +206,7 @@ typedef enum
ACPI_DMT_FLAGS0,
ACPI_DMT_FLAGS1,
ACPI_DMT_FLAGS2,
+ ACPI_DMT_FLAGS8_2,
ACPI_DMT_FLAGS4,
ACPI_DMT_FLAGS4_0,
ACPI_DMT_FLAGS4_4,
@@ -257,6 +258,7 @@ typedef enum
ACPI_DMT_AEST_RES,
ACPI_DMT_AEST_XFACE,
ACPI_DMT_AEST_XRUPT,
+ ACPI_DMT_AGDI,
ACPI_DMT_ASF,
ACPI_DMT_CEDT,
ACPI_DMT_DMAR,
@@ -280,6 +282,11 @@ typedef enum
ACPI_DMT_NFIT,
ACPI_DMT_NHLT1,
ACPI_DMT_NHLT1a,
+ ACPI_DMT_NHLT1b,
+ ACPI_DMT_NHLT1c,
+ ACPI_DMT_NHLT1d,
+ ACPI_DMT_NHLT1e,
+ ACPI_DMT_NHLT1f,
ACPI_DMT_PCCT,
ACPI_DMT_PHAT,
ACPI_DMT_PMTT,
@@ -381,6 +388,8 @@ extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestVendorError[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestGicError[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestXface[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoAestXrupt[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoAgdi[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoApmtNode[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoAsf0[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoAsf1[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoAsf1a[];
@@ -395,6 +404,8 @@ extern ACPI_DMTABLE_INFO AcpiDmTableInfoBert[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoBgrt[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoCedtHdr[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoCedt0[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoCedt1[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoCedt1_te[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoCpep[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoCpep0[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoCsrt0[];
@@ -416,6 +427,7 @@ extern ACPI_DMTABLE_INFO AcpiDmTableInfoDmar1[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoDmar2[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoDmar3[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoDmar4[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoDmar5[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoDrtm[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoDrtm0[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoDrtm0a[];
@@ -522,6 +534,7 @@ extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt13[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt14[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt15[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt16[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadt17[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoMadtHdr[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoMcfg[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoMcfg0[];
@@ -559,9 +572,12 @@ extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt5a[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt5b[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt5c[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt6[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt6a[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt6b[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt7[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt7a[];
-extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt8[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt7b[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoNhlt9[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoPhatHdr[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoPhat0[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoPhat0a[];
@@ -635,6 +651,7 @@ extern ACPI_DMTABLE_INFO AcpiDmTableInfoSvkl0[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoTcpaHdr[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoTcpaClient[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoTcpaServer[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoTdel[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoTpm2[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoTpm2a[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoTpm211[];
@@ -723,6 +740,10 @@ AcpiDmDumpAest (
ACPI_TABLE_HEADER *Table);
void
+AcpiDmDumpApmt (
+ ACPI_TABLE_HEADER *Table);
+
+void
AcpiDmDumpAsf (
ACPI_TABLE_HEADER *Table);
@@ -883,6 +904,10 @@ AcpiDmDumpTcpa (
ACPI_TABLE_HEADER *Table);
void
+AcpiDmDumpTdel (
+ ACPI_TABLE_HEADER *Table);
+
+void
AcpiDmDumpTpm2 (
ACPI_TABLE_HEADER *Table);
diff --git a/source/include/acdispat.h b/source/include/acdispat.h
index 2047779ff4d8..2c44c9f19613 100644
--- a/source/include/acdispat.h
+++ b/source/include/acdispat.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acevents.h b/source/include/acevents.h
index 77475ac98a20..f8c5d77699a0 100644
--- a/source/include/acevents.h
+++ b/source/include/acevents.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -458,6 +458,13 @@ AcpiEvPciBarRegionSetup (
void **RegionContext);
ACPI_STATUS
+AcpiEvDataTableRegionSetup (
+ ACPI_HANDLE Handle,
+ UINT32 Function,
+ void *HandlerContext,
+ void **RegionContext);
+
+ACPI_STATUS
AcpiEvDefaultRegionSetup (
ACPI_HANDLE Handle,
UINT32 Function,
diff --git a/source/include/acexcep.h b/source/include/acexcep.h
index 6312602e9251..92e949722940 100644
--- a/source/include/acexcep.h
+++ b/source/include/acexcep.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acglobal.h b/source/include/acglobal.h
index 354268655220..b8831b467232 100644
--- a/source/include/acglobal.h
+++ b/source/include/acglobal.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/achware.h b/source/include/achware.h
index 994e9767a2ee..256008c74c7a 100644
--- a/source/include/achware.h
+++ b/source/include/achware.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acinterp.h b/source/include/acinterp.h
index c6e27cc21e3c..d9cec3455d7b 100644
--- a/source/include/acinterp.h
+++ b/source/include/acinterp.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/aclocal.h b/source/include/aclocal.h
index e4f46b8877b3..74eb6e27f08c 100644
--- a/source/include/aclocal.h
+++ b/source/include/aclocal.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acmacros.h b/source/include/acmacros.h
index a7a79fc80e31..11fd47cc3cab 100644
--- a/source/include/acmacros.h
+++ b/source/include/acmacros.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acnames.h b/source/include/acnames.h
index 9075ca740116..846d192b229d 100644
--- a/source/include/acnames.h
+++ b/source/include/acnames.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acnamesp.h b/source/include/acnamesp.h
index 2edd99d79e11..7b8d069d6b26 100644
--- a/source/include/acnamesp.h
+++ b/source/include/acnamesp.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acobject.h b/source/include/acobject.h
index e7d9f1c9bb61..b2c9dd9b7a0f 100644
--- a/source/include/acobject.h
+++ b/source/include/acobject.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -313,6 +313,7 @@ typedef struct acpi_object_region
union acpi_operand_object *Next;
ACPI_PHYSICAL_ADDRESS Address;
UINT32 Length;
+ void *Pointer; /* Only for data table regions */
} ACPI_OBJECT_REGION;
diff --git a/source/include/acopcode.h b/source/include/acopcode.h
index 91cce057b1ea..7e54a47f7063 100644
--- a/source/include/acopcode.h
+++ b/source/include/acopcode.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acoutput.h b/source/include/acoutput.h
index b72c9a949620..cd3d26d52a22 100644
--- a/source/include/acoutput.h
+++ b/source/include/acoutput.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acparser.h b/source/include/acparser.h
index 94674d8cbe68..4437d612ea63 100644
--- a/source/include/acparser.h
+++ b/source/include/acparser.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acpi.h b/source/include/acpi.h
index 0a50a44340ff..081e3b7d2ea7 100644
--- a/source/include/acpi.h
+++ b/source/include/acpi.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acpiosxf.h b/source/include/acpiosxf.h
index af90cb9ce49f..67c110136a54 100644
--- a/source/include/acpiosxf.h
+++ b/source/include/acpiosxf.h
@@ -10,7 +10,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acpixf.h b/source/include/acpixf.h
index 7f4b31ee45a8..f62c16cbd40e 100644
--- a/source/include/acpixf.h
+++ b/source/include/acpixf.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -154,7 +154,7 @@
/* Current ACPICA subsystem version in YYYYMMDD format */
-#define ACPI_CA_VERSION 0x20210930
+#define ACPI_CA_VERSION 0x20220331
#include "acconfig.h"
#include "actypes.h"
@@ -658,8 +658,12 @@ AcpiDecodePldBuffer (
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS ACPI_INIT_FUNCTION
AcpiInstallTable (
- ACPI_PHYSICAL_ADDRESS Address,
- BOOLEAN Physical))
+ ACPI_TABLE_HEADER *Table))
+
+ACPI_EXTERNAL_RETURN_STATUS (
+ACPI_STATUS ACPI_INIT_FUNCTION
+AcpiInstallPhysicalTable (
+ ACPI_PHYSICAL_ADDRESS Address))
ACPI_EXTERNAL_RETURN_STATUS (
ACPI_STATUS
diff --git a/source/include/acpredef.h b/source/include/acpredef.h
index bc55155cfa99..9ad8c0ffcc38 100644
--- a/source/include/acpredef.h
+++ b/source/include/acpredef.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acresrc.h b/source/include/acresrc.h
index 816d4fa4383f..8214ed835c5b 100644
--- a/source/include/acresrc.h
+++ b/source/include/acresrc.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acrestyp.h b/source/include/acrestyp.h
index 3c258de9de32..f045c2000b71 100644
--- a/source/include/acrestyp.h
+++ b/source/include/acrestyp.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acstruct.h b/source/include/acstruct.h
index c07a319d4027..d50c7a1b6468 100644
--- a/source/include/acstruct.h
+++ b/source/include/acstruct.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/actables.h b/source/include/actables.h
index 038085c8761f..40b79a47c219 100644
--- a/source/include/actables.h
+++ b/source/include/actables.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -193,7 +193,8 @@ ACPI_STATUS
AcpiTbAcquireTempTable (
ACPI_TABLE_DESC *TableDesc,
ACPI_PHYSICAL_ADDRESS Address,
- UINT8 Flags);
+ UINT8 Flags,
+ ACPI_TABLE_HEADER *Table);
void
AcpiTbReleaseTempTable (
@@ -279,6 +280,7 @@ ACPI_STATUS
AcpiTbInstallStandardTable (
ACPI_PHYSICAL_ADDRESS Address,
UINT8 Flags,
+ ACPI_TABLE_HEADER *Table,
BOOLEAN Reload,
BOOLEAN Override,
UINT32 *TableIndex);
@@ -296,6 +298,7 @@ ACPI_STATUS
AcpiTbInstallAndLoadTable (
ACPI_PHYSICAL_ADDRESS Address,
UINT8 Flags,
+ ACPI_TABLE_HEADER *Table,
BOOLEAN Override,
UINT32 *TableIndex);
diff --git a/source/include/actbinfo.h b/source/include/actbinfo.h
index 8a9ff736c9da..633f7349b390 100644
--- a/source/include/actbinfo.h
+++ b/source/include/actbinfo.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -152,6 +152,7 @@
/*
* Macros used to generate offsets to specific table fields
*/
+#define ACPI_AGDI_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_AGDI,f)
#define ACPI_FACS_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_FACS,f)
#define ACPI_GAS_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_GENERIC_ADDRESS,f)
#define ACPI_HDR_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_HEADER,f)
@@ -197,6 +198,7 @@
#define ACPI_STAO_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_STAO,f)
#define ACPI_SVKL_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_SVKL,f)
#define ACPI_TCPA_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_TCPA_HDR,f)
+#define ACPI_TDEL_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_TDEL,f)
#define ACPI_TPM2_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_TPM2,f)
#define ACPI_TPM23_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_TPM23,f)
#define ACPI_UEFI_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_UEFI,f)
@@ -223,6 +225,7 @@
#define ACPI_AEST4_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_AEST_GIC,f)
#define ACPI_AEST0D_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_AEST_NODE_INTERFACE,f)
#define ACPI_AEST0E_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_AEST_NODE_INTERRUPT,f)
+#define ACPI_APMTN_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_APMT_NODE,f)
#define ACPI_ASF0_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_ASF_INFO,f)
#define ACPI_ASF1_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_ASF_ALERT,f)
#define ACPI_ASF1a_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_ASF_ALERT_DATA,f)
@@ -232,6 +235,8 @@
#define ACPI_ASF4_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_ASF_ADDRESS,f)
#define ACPI_CEDT_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_CEDT_HEADER, f)
#define ACPI_CEDT0_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_CEDT_CHBS, f)
+#define ACPI_CEDT1_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_CEDT_CFMWS, f)
+#define ACPI_CEDT1_TE_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_CEDT_CFMWS_TARGET_ELEMENT, f)
#define ACPI_CPEP0_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_CPEP_POLLING,f)
#define ACPI_CSRT0_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_CSRT_GROUP,f)
#define ACPI_CSRT1_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_CSRT_SHARED_INFO,f)
@@ -243,6 +248,7 @@
#define ACPI_DMAR2_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_DMAR_ATSR,f)
#define ACPI_DMAR3_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_DMAR_RHSA,f)
#define ACPI_DMAR4_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_DMAR_ANDD,f)
+#define ACPI_DMAR5_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_DMAR_SATC,f)
#define ACPI_DRTM0_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_DRTM_VTABLE_LIST,f)
#define ACPI_DRTM1_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_DRTM_RESOURCE_LIST,f)
#define ACPI_DRTM1a_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_DRTM_RESOURCE,f)
@@ -312,6 +318,7 @@
#define ACPI_MADT14_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_MADT_GENERIC_REDISTRIBUTOR,f)
#define ACPI_MADT15_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_MADT_GENERIC_TRANSLATOR,f)
#define ACPI_MADT16_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_MADT_MULTIPROC_WAKEUP,f)
+#define ACPI_MADT17_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_MADT_OEM_DATA,f)
#define ACPI_MADTH_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_SUBTABLE_HEADER,f)
#define ACPI_MCFG0_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_MCFG_ALLOCATION,f)
#define ACPI_MPST0_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_MPST_POWER_NODE,f)
@@ -339,9 +346,11 @@
#define ACPI_NHLT5B_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_B,f)
#define ACPI_NHLT5C_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_C,f)
#define ACPI_NHLT6_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_NHLT_VENDOR_MIC_CONFIG,f)
-#define ACPI_NHLT7_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_NHLT_LINUX_SPECIFIC_COUNT,f)
-#define ACPI_NHLT7A_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_NHLT_LINUX_SPECIFIC_DATA,f)
-#define ACPI_NHLT8_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_NHLT_TABLE_TERMINATOR,f)
+#define ACPI_NHLT6A_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_NHLT_VENDOR_MIC_COUNT,f)
+#define ACPI_NHLT6B_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_NHLT_RENDER_FEEDBACK_DEVICE_SPECIFIC_CONFIG,f)
+#define ACPI_NHLT7_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_NHLT_DEVICE_INFO_COUNT,f)
+#define ACPI_NHLT7A_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_NHLT_DEVICE_INFO,f)
+#define ACPI_NHLT9_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_NHLT_MIC_SNR_SENSITIVITY_EXTENSION,f)
#define ACPI_PCCT0_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_PCCT_SUBSPACE,f)
#define ACPI_PCCT1_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_PCCT_HW_REDUCED,f)
#define ACPI_PCCT2_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_PCCT_HW_REDUCED_TYPE2,f)
@@ -408,6 +417,8 @@
#define ACPI_AEST0_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_AEST_PROCESSOR,f,o)
#define ACPI_AEST0D_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_AEST_NODE_INTERFACE,f,o)
#define ACPI_AEST0E_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_AEST_NODE_INTERRUPT,f,o)
+#define ACPI_AGDI_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_TABLE_AGDI,f,o)
+#define ACPI_APMTN_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_APMT_NODE,f,o)
#define ACPI_BGRT_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_TABLE_BGRT,f,o)
#define ACPI_DRTM_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_TABLE_DRTM,f,o)
#define ACPI_DRTM1a_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_DRTM_RESOURCE,f,o)
diff --git a/source/include/actbl.h b/source/include/actbl.h
index f70f1b5909ed..f23080fb4f80 100644
--- a/source/include/actbl.h
+++ b/source/include/actbl.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/actbl1.h b/source/include/actbl1.h
index 09e68293ada2..3de78b0d8f01 100644
--- a/source/include/actbl1.h
+++ b/source/include/actbl1.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -574,17 +574,23 @@ typedef struct acpi_cedt_cfmws
} ACPI_CEDT_CFMWS;
+typedef struct acpi_cedt_cfmws_target_element
+{
+ UINT32 InterleaveTarget;
+
+} ACPI_CEDT_CFMWS_TARGET_ELEMENT;
+
/* Values for Interleave Arithmetic field above */
-#define ACPI_CEDT_CFMWS_ARITHMETIC_MODULO (0)
+#define ACPI_CEDT_CFMWS_ARITHMETIC_MODULO (0)
/* Values for Restrictions field above */
-#define ACPI_CEDT_CFMWS_RESTRICT_TYPE2 (1)
-#define ACPI_CEDT_CFMWS_RESTRICT_TYPE3 (1<<1)
-#define ACPI_CEDT_CFMWS_RESTRICT_VOLATILE (1<<2)
-#define ACPI_CEDT_CFMWS_RESTRICT_PMEM (1<<3)
-#define ACPI_CEDT_CFMWS_RESTRICT_FIXED (1<<4)
+#define ACPI_CEDT_CFMWS_RESTRICT_TYPE2 (1)
+#define ACPI_CEDT_CFMWS_RESTRICT_TYPE3 (1<<1)
+#define ACPI_CEDT_CFMWS_RESTRICT_VOLATILE (1<<2)
+#define ACPI_CEDT_CFMWS_RESTRICT_PMEM (1<<3)
+#define ACPI_CEDT_CFMWS_RESTRICT_FIXED (1<<4)
/*******************************************************************************
@@ -847,7 +853,8 @@ enum AcpiDmarType
ACPI_DMAR_TYPE_ROOT_ATS = 2,
ACPI_DMAR_TYPE_HARDWARE_AFFINITY = 3,
ACPI_DMAR_TYPE_NAMESPACE = 4,
- ACPI_DMAR_TYPE_RESERVED = 5 /* 5 and greater are reserved */
+ ACPI_DMAR_TYPE_SATC = 5,
+ ACPI_DMAR_TYPE_RESERVED = 6 /* 6 and greater are reserved */
};
@@ -962,6 +969,18 @@ typedef struct acpi_dmar_andd
} ACPI_DMAR_ANDD;
+/* 5: SoC Integrated Address Translation Cache (SATC) */
+
+typedef struct acpi_dmar_satc
+{
+ ACPI_DMAR_HEADER Header;
+ UINT8 Flags;
+ UINT8 Reserved;
+ UINT16 Segment;
+
+} ACPI_DMAR_SATC
+
+;
/*******************************************************************************
*
* DRTM - Dynamic Root of Trust for Measurement table
diff --git a/source/include/actbl2.h b/source/include/actbl2.h
index 0c80aae24f99..3032c5e25003 100644
--- a/source/include/actbl2.h
+++ b/source/include/actbl2.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -168,6 +168,8 @@
* file. Useful because they make it more difficult to inadvertently type in
* the wrong signature.
*/
+#define ACPI_SIG_AGDI "AGDI" /* Arm Generic Diagnostic Dump and Reset Device Interface */
+#define ACPI_SIG_APMT "APMT" /* Arm Performance Monitoring Unit table */
#define ACPI_SIG_BDAT "BDAT" /* BIOS Data ACPI Table */
#define ACPI_SIG_IORT "IORT" /* IO Remapping Table */
#define ACPI_SIG_IVRS "IVRS" /* I/O Virtualization Reporting Structure */
@@ -192,6 +194,7 @@
#define ACPI_SIG_SDEI "SDEI" /* Software Delegated Exception Interface Table */
#define ACPI_SIG_SDEV "SDEV" /* Secure Devices table */
#define ACPI_SIG_SVKL "SVKL" /* Storage Volume Key Location Table */
+#define ACPI_SIG_TDEL "TDEL" /* TD Event Log Table */
/*
@@ -309,7 +312,7 @@ typedef struct acpi_aest_processor_tlb
typedef struct acpi_aest_processor_generic
{
- UINT8 *Resource;
+ UINT32 Resource;
} ACPI_AEST_PROCESSOR_GENERIC;
@@ -401,6 +404,108 @@ typedef struct acpi_aest_node_interrupt
/*******************************************************************************
+ * AGDI - Arm Generic Diagnostic Dump and Reset Device Interface
+ *
+ * Conforms to "ACPI for Arm Components 1.1, Platform Design Document"
+ * ARM DEN0093 v1.1
+ *
+ ******************************************************************************/
+typedef struct acpi_table_agdi
+{
+ ACPI_TABLE_HEADER Header; /* Common ACPI table header */
+ UINT8 Flags;
+ UINT8 Reserved[3];
+ UINT32 SdeiEvent;
+ UINT32 Gsiv;
+
+} ACPI_TABLE_AGDI;
+
+/* Mask for Flags field above */
+
+#define ACPI_AGDI_SIGNALING_MODE (1)
+
+
+/*******************************************************************************
+ *
+ * APMT - ARM Performance Monitoring Unit Table
+ *
+ * Conforms to:
+ * ARM Performance Monitoring Unit Architecture 1.0 Platform Design Document
+ * ARM DEN0117 v1.0 November 25, 2021
+ *
+ ******************************************************************************/
+
+typedef struct acpi_table_apmt {
+ ACPI_TABLE_HEADER Header; /* Common ACPI table header */
+} ACPI_TABLE_APMT;
+
+#define ACPI_APMT_NODE_ID_LENGTH 4
+
+/*
+ * APMT subtables
+ */
+typedef struct acpi_apmt_node {
+ UINT16 Length;
+ UINT8 Flags;
+ UINT8 Type;
+ UINT32 Id;
+ UINT64 InstPrimary;
+ UINT32 InstSecondary;
+ UINT64 BaseAddress0;
+ UINT64 BaseAddress1;
+ UINT32 OvflwIrq;
+ UINT32 Reserved;
+ UINT32 OvflwIrqFlags;
+ UINT32 ProcAffinity;
+ UINT32 ImplId;
+} ACPI_APMT_NODE;
+
+/* Masks for Flags field above */
+
+#define ACPI_APMT_FLAGS_DUAL_PAGE (1<<0)
+#define ACPI_APMT_FLAGS_AFFINITY (1<<1)
+#define ACPI_APMT_FLAGS_ATOMIC (1<<2)
+
+/* Values for Flags dual page field above */
+
+#define ACPI_APMT_FLAGS_DUAL_PAGE_NSUPP (0<<0)
+#define ACPI_APMT_FLAGS_DUAL_PAGE_SUPP (1<<0)
+
+/* Values for Flags processor affinity field above */
+#define ACPI_APMT_FLAGS_AFFINITY_PROC (0<<1)
+#define ACPI_APMT_FLAGS_AFFINITY_PROC_CONTAINER (1<<1)
+
+/* Values for Flags 64-bit atomic field above */
+#define ACPI_APMT_FLAGS_ATOMIC_NSUPP (0<<2)
+#define ACPI_APMT_FLAGS_ATOMIC_SUPP (1<<2)
+
+/* Values for Type field above */
+
+enum acpi_apmt_node_type {
+ ACPI_APMT_NODE_TYPE_MC = 0x00,
+ ACPI_APMT_NODE_TYPE_SMMU = 0x01,
+ ACPI_APMT_NODE_TYPE_PCIE_ROOT = 0x02,
+ ACPI_APMT_NODE_TYPE_ACPI = 0x03,
+ ACPI_APMT_NODE_TYPE_CACHE = 0x04,
+ ACPI_APMT_NODE_TYPE_COUNT
+};
+
+/* Masks for ovflw_irq_flags field above */
+
+#define ACPI_APMT_OVFLW_IRQ_FLAGS_MODE (1<<0)
+#define ACPI_APMT_OVFLW_IRQ_FLAGS_TYPE (1<<1)
+
+/* Values for ovflw_irq_flags mode field above */
+
+#define ACPI_APMT_OVFLW_IRQ_FLAGS_MODE_LEVEL (0<<0)
+#define ACPI_APMT_OVFLW_IRQ_FLAGS_MODE_EDGE (1<<0)
+
+/* Values for ovflw_irq_flags type field above */
+
+#define ACPI_APMT_OVFLW_IRQ_FLAGS_TYPE_WIRED (0<<1)
+
+
+/*******************************************************************************
*
* BDAT - BIOS Data ACPI Table
*
@@ -422,7 +527,7 @@ typedef struct acpi_table_bdat
* IORT - IO Remapping Table
*
* Conforms to "IO Remapping Table System Software on ARM Platforms",
- * Document number: ARM DEN 0049E.b, Feb 2021
+ * Document number: ARM DEN 0049E.d, Feb 2022
*
******************************************************************************/
@@ -538,7 +643,8 @@ typedef struct acpi_iort_root_complex
UINT32 AtsAttribute;
UINT32 PciSegmentNumber;
UINT8 MemoryAddressLimit; /* Memory address size limit */
- UINT8 Reserved[3]; /* Reserved, must be zero */
+ UINT16 PasidCapabilities; /* PASID Capabilities */
+ UINT8 Reserved[1]; /* Reserved, must be zero */
} ACPI_IORT_ROOT_COMPLEX;
@@ -548,6 +654,8 @@ typedef struct acpi_iort_root_complex
#define ACPI_IORT_PRI_SUPPORTED (1<<1) /* The root complex PRI support */
#define ACPI_IORT_PASID_FWD_SUPPORTED (1<<2) /* The root complex PASID forward support */
+/* Masks for PasidCapabilities field above */
+#define ACPI_IORT_PASID_MAX_WIDTH (0x1F) /* Bits 0-4 */
typedef struct acpi_iort_smmu
{
@@ -634,6 +742,25 @@ typedef struct acpi_iort_rmr {
} ACPI_IORT_RMR;
+/* Masks for Flags field above */
+#define ACPI_IORT_RMR_REMAP_PERMITTED (1)
+#define ACPI_IORT_RMR_ACCESS_PRIVILEGE (1<<1)
+
+/*
+ * Macro to access the Access Attributes in flags field above:
+ * Access Attributes is encoded in bits 9:2
+ */
+#define ACPI_IORT_RMR_ACCESS_ATTRIBUTES(flags) (((flags) >> 2) & 0xFF)
+
+/* Values for above Access Attributes */
+
+#define ACPI_IORT_RMR_ATTR_DEVICE_NGNRNE 0x00
+#define ACPI_IORT_RMR_ATTR_DEVICE_NGNRE 0x01
+#define ACPI_IORT_RMR_ATTR_DEVICE_NGRE 0x02
+#define ACPI_IORT_RMR_ATTR_DEVICE_GRE 0x03
+#define ACPI_IORT_RMR_ATTR_NORMAL_NC 0x04
+#define ACPI_IORT_RMR_ATTR_NORMAL_IWB_OWB 0x05
+
typedef struct acpi_iort_rmr_desc {
UINT64 BaseAddress;
UINT64 Length;
@@ -980,7 +1107,8 @@ enum AcpiMadtType
ACPI_MADT_TYPE_GENERIC_REDISTRIBUTOR = 14,
ACPI_MADT_TYPE_GENERIC_TRANSLATOR = 15,
ACPI_MADT_TYPE_MULTIPROC_WAKEUP = 16,
- ACPI_MADT_TYPE_RESERVED = 17 /* 17 and greater are reserved */
+ ACPI_MADT_TYPE_RESERVED = 17, /* 17 to 0x7F are reserved */
+ ACPI_MADT_TYPE_OEM_RESERVED = 0x80 /* 0x80 to 0xFF are reserved for OEM use */
};
@@ -1247,8 +1375,8 @@ typedef struct acpi_madt_multiproc_wakeup
} ACPI_MADT_MULTIPROC_WAKEUP;
-#define ACPI_MULTIPROC_WAKEUP_MB_OS_SIZE 2032
-#define ACPI_MULTIPROC_WAKEUP_MB_FIRMWARE_SIZE 2048
+#define ACPI_MULTIPROC_WAKEUP_MB_OS_SIZE 2032
+#define ACPI_MULTIPROC_WAKEUP_MB_FIRMWARE_SIZE 2048
typedef struct acpi_madt_multiproc_wakeup_mailbox
{
@@ -1263,6 +1391,13 @@ typedef struct acpi_madt_multiproc_wakeup_mailbox
#define ACPI_MP_WAKE_COMMAND_WAKEUP 1
+/* 17: OEM data */
+
+typedef struct acpi_madt_oem_data
+{
+ UINT8 OemData[0];
+} ACPI_MADT_OEM_DATA;
+
/*
* Common flags fields for MADT subtables
@@ -1796,6 +1931,12 @@ typedef struct acpi_table_nhlt
} ACPI_TABLE_NHLT;
+typedef struct acpi_table_nhlt_endpoint_count
+{
+ UINT8 EndpointCount;
+
+} ACPI_TABLE_NHLT_ENDPOINT_COUNT;
+
typedef struct acpi_nhlt_endpoint
{
UINT32 DescriptorLength;
@@ -1852,6 +1993,8 @@ typedef struct acpi_nhlt_endpoint
#define ACPI_NHLT_DIR_RENDER_FEEDBACK 3
#define ACPI_NHLT_DIR_RESERVED 4 /* 4 and above are reserved */
+/* Capabilities = 2 */
+
typedef struct acpi_nhlt_device_specific_config
{
UINT32 CapabilitiesSize;
@@ -1860,6 +2003,8 @@ typedef struct acpi_nhlt_device_specific_config
} ACPI_NHLT_DEVICE_SPECIFIC_CONFIG;
+/* Capabilities = 3 */
+
typedef struct acpi_nhlt_device_specific_config_a
{
UINT32 CapabilitiesSize;
@@ -1869,14 +2014,24 @@ typedef struct acpi_nhlt_device_specific_config_a
} ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_A;
-/* Values for Config Type above */
+/* Capabilities = 3 */
-#define ACPI_NHLT_TYPE_MIC_ARRAY 0x01
-#define ACPI_NHLT_TYPE_GENERIC 0x00
+typedef struct acpi_nhlt_device_specific_config_d
+{
+ UINT8 VirtualSlot;
+ UINT8 ConfigType;
+ UINT8 ArrayType;
-/* Mask for Extension field of ArrayType */
+} ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_D;
-#define ACPI_NHLT_ARRAY_TYPE_MASK 0x10
+/* Values for Config Type above */
+
+#define ACPI_NHLT_CONFIG_TYPE_GENERIC 0x00
+#define ACPI_NHLT_CONFIG_TYPE_MIC_ARRAY 0x01
+#define ACPI_NHLT_CONFIG_TYPE_RENDER_FEEDBACK 0x03
+#define ACPI_NHLT_CONFIG_TYPE_RESERVED 0x04 /* 4 and above are reserved */
+
+/* Capabilities = 0 */
typedef struct acpi_nhlt_device_specific_config_b
{
@@ -1884,6 +2039,8 @@ typedef struct acpi_nhlt_device_specific_config_b
} ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_B;
+/* Capabilities = 1 */
+
typedef struct acpi_nhlt_device_specific_config_c
{
UINT32 CapabilitiesSize;
@@ -1891,6 +2048,13 @@ typedef struct acpi_nhlt_device_specific_config_c
} ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_C;
+typedef struct acpi_nhlt_render_device_specific_config
+{
+ UINT32 CapabilitiesSize;
+ UINT8 VirtualSlot;
+
+} ACPI_NHLT_RENDER_DEVICE_SPECIFIC_CONFIG;
+
typedef struct acpi_nhlt_wave_extensible
{
UINT16 FormatTag;
@@ -1963,61 +2127,70 @@ typedef struct acpi_nhlt_mic_device_specific_config
/* Values for ArrayTypeExt above */
-#define SMALL_LINEAR_2ELEMENT 0x0A
-#define BIG_LINEAR_2ELEMENT 0x0B
-#define FIRST_GEOMETRY_LINEAR_4ELEMENT 0x0C
-#define PLANAR_LSHAPED_4ELEMENT 0x0D
-#define SECOND_GEOMETRY_LINEAR_4ELEMENT 0x0E
-#define VENDOR_DEFINED 0x0F
-#define ARRAY_TYPE_MASK 0x0F
-#define ARRAY_TYPE_EXT_MASK 0x10
+#define ACPI_NHLT_ARRAY_TYPE_RESERVED 0x09 /* 9 and below are reserved */
+#define ACPI_NHLT_SMALL_LINEAR_2ELEMENT 0x0A
+#define ACPI_NHLT_BIG_LINEAR_2ELEMENT 0x0B
+#define ACPI_NHLT_FIRST_GEOMETRY_LINEAR_4ELEMENT 0x0C
+#define ACPI_NHLT_PLANAR_LSHAPED_4ELEMENT 0x0D
+#define ACPI_NHLT_SECOND_GEOMETRY_LINEAR_4ELEMENT 0x0E
+#define ACPI_NHLT_VENDOR_DEFINED 0x0F
+#define ACPI_NHLT_ARRAY_TYPE_MASK 0x0F
+#define ACPI_NHLT_ARRAY_TYPE_EXT_MASK 0x10
-#define NO_EXTENSION 0x0
-#define MIC_SNR_SENSITIVITY_EXT 0x1
+#define ACPI_NHLT_NO_EXTENSION 0x0
+#define ACPI_NHLT_MIC_SNR_SENSITIVITY_EXT (1<<4)
+typedef struct acpi_nhlt_vendor_mic_count
+{
+ UINT8 MicrophoneCount;
+
+} ACPI_NHLT_VENDOR_MIC_COUNT;
typedef struct acpi_nhlt_vendor_mic_config
{
UINT8 Type;
UINT8 Panel;
- UINT16 SpeakerPositionDistance; // mm
- UINT16 HorizontalOffset; // mm
- UINT16 VerticalOffset; // mm
- UINT8 FrequencyLowBand; // 5*Hz
- UINT8 FrequencyHighBand; // 500*Hz
- UINT16 DirectionAngle; // -180 - + 180
- UINT16 ElevationAngle; // -180 - + 180
- UINT16 WorkVerticalAngleBegin; // -180 - + 180 with 2 deg step
- UINT16 WorkVerticalAngleEnd; // -180 - + 180 with 2 deg step
- UINT16 WorkHorizontalAngleBegin; // -180 - + 180 with 2 deg step
- UINT16 WorkHorizontalAngleEnd; // -180 - + 180 with 2 deg step
+ UINT16 SpeakerPositionDistance; /* mm */
+ UINT16 HorizontalOffset; /* mm */
+ UINT16 VerticalOffset; /* mm */
+ UINT8 FrequencyLowBand; /* 5*Hz */
+ UINT8 FrequencyHighBand; /* 500*Hz */
+ UINT16 DirectionAngle; /* -180 - + 180 */
+ UINT16 ElevationAngle; /* -180 - + 180 */
+ UINT16 WorkVerticalAngleBegin; /* -180 - + 180 with 2 deg step */
+ UINT16 WorkVerticalAngleEnd; /* -180 - + 180 with 2 deg step */
+ UINT16 WorkHorizontalAngleBegin; /* -180 - + 180 with 2 deg step */
+ UINT16 WorkHorizontalAngleEnd; /* -180 - + 180 with 2 deg step */
} ACPI_NHLT_VENDOR_MIC_CONFIG;
/* Values for Type field above */
-#define MIC_OMNIDIRECTIONAL 0
-#define MIC_SUBCARDIOID 1
-#define MIC_CARDIOID 2
-#define MIC_SUPER_CARDIOID 3
-#define MIC_HYPER_CARDIOID 4
-#define MIC_8_SHAPED 5
-#define MIC_VENDOR_DEFINED 7
+#define ACPI_NHLT_MIC_OMNIDIRECTIONAL 0
+#define ACPI_NHLT_MIC_SUBCARDIOID 1
+#define ACPI_NHLT_MIC_CARDIOID 2
+#define ACPI_NHLT_MIC_SUPER_CARDIOID 3
+#define ACPI_NHLT_MIC_HYPER_CARDIOID 4
+#define ACPI_NHLT_MIC_8_SHAPED 5
+#define ACPI_NHLT_MIC_RESERVED6 6 /* 6 is reserved */
+#define ACPI_NHLT_MIC_VENDOR_DEFINED 7
+#define ACPI_NHLT_MIC_RESERVED 8 /* 8 and above are reserved */
/* Values for Panel field above */
-#define MIC_TOP 0
-#define MIC_BOTTOM 1
-#define MIC_LEFT 2
-#define MIC_RIGHT 3
-#define MIC_FRONT 4
-#define MIC_REAR 5
+#define ACPI_NHLT_MIC_POSITION_TOP 0
+#define ACPI_NHLT_MIC_POSITION_BOTTOM 1
+#define ACPI_NHLT_MIC_POSITION_LEFT 2
+#define ACPI_NHLT_MIC_POSITION_RIGHT 3
+#define ACPI_NHLT_MIC_POSITION_FRONT 4
+#define ACPI_NHLT_MIC_POSITION_BACK 5
+#define ACPI_NHLT_MIC_POSITION_RESERVED 6 /* 6 and above are reserved */
typedef struct acpi_nhlt_vendor_mic_device_specific_config
{
ACPI_NHLT_MIC_DEVICE_SPECIFIC_CONFIG MicArrayDeviceConfig;
UINT8 NumberOfMicrophones;
- ACPI_NHLT_VENDOR_MIC_CONFIG MicConfig[]; // Indexed by NumberOfMicrophones
+ ACPI_NHLT_VENDOR_MIC_CONFIG MicConfig[]; /* Indexed by NumberOfMicrophones */
} ACPI_NHLT_VENDOR_MIC_DEVICE_SPECIFIC_CONFIG;
@@ -2030,38 +2203,31 @@ typedef struct acpi_nhlt_mic_snr_sensitivity_extension
} ACPI_NHLT_MIC_SNR_SENSITIVITY_EXTENSION;
+/* Render device with feedback */
+
typedef struct acpi_nhlt_render_feedback_device_specific_config
{
- ACPI_NHLT_DEVICE_SPECIFIC_CONFIG DeviceConfig;
- UINT8 FeedbackVirtualSlot; // Render slot in case of capture
- UINT16 FeedbackChannels; // Informative only
+ UINT8 FeedbackVirtualSlot; /* Render slot in case of capture */
+ UINT16 FeedbackChannels; /* Informative only */
UINT16 FeedbackValidBitsPerSample;
} ACPI_NHLT_RENDER_FEEDBACK_DEVICE_SPECIFIC_CONFIG;
-/* Linux-specific structures */
+/* Non documented structures */
-typedef struct acpi_nhlt_linux_specific_count
+typedef struct acpi_nhlt_device_info_count
{
UINT8 StructureCount;
-} ACPI_NHLT_LINUX_SPECIFIC_COUNT;
+} ACPI_NHLT_DEVICE_INFO_COUNT;
-typedef struct acpi_nhlt_linux_specific_data
+typedef struct acpi_nhlt_device_info
{
UINT8 DeviceId[16];
UINT8 DeviceInstanceId;
UINT8 DevicePortId;
- UINT8 Filler[18];
-} ACPI_NHLT_LINUX_SPECIFIC_DATA;
-
-typedef struct acpi_nhlt_table_terminator
-{
- UINT32 TerminatorValue;
- UINT32 TerminatorSignature;
-
-} ACPI_NHLT_TABLE_TERMINATOR;
+} ACPI_NHLT_DEVICE_INFO;
/*******************************************************************************
@@ -2639,8 +2805,8 @@ typedef struct acpi_table_prmt_header
typedef struct acpi_prmt_module_header
{
- UINT16 Revision;
- UINT16 Length;
+ UINT16 Revision;
+ UINT16 Length;
} ACPI_PRMT_MODULE_HEADER;
@@ -2794,7 +2960,7 @@ typedef struct acpi_table_rgrt
UINT16 Version;
UINT8 ImageType;
UINT8 Reserved;
- UINT8 Image[0];
+ UINT8 Image[];
} ACPI_TABLE_RGRT;
@@ -3008,6 +3174,24 @@ enum acpi_svkl_format
};
+/*******************************************************************************
+ *
+ * TDEL - TD-Event Log
+ * From: "Guest-Host-Communication Interface (GHCI) for Intel
+ * Trust Domain Extensions (Intel TDX)".
+ * September 2020
+ *
+ ******************************************************************************/
+
+typedef struct acpi_table_tdel
+{
+ ACPI_TABLE_HEADER Header; /* Common ACPI table header */
+ UINT32 Reserved;
+ UINT64 LogAreaMinimumLength;
+ UINT64 LogAreaStartAddress;
+
+} ACPI_TABLE_TDEL;
+
/* Reset to default packing */
#pragma pack()
diff --git a/source/include/actbl3.h b/source/include/actbl3.h
index 40cf71306af4..7cc633a27b7c 100644
--- a/source/include/actbl3.h
+++ b/source/include/actbl3.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/actypes.h b/source/include/actypes.h
index 5138342c990a..99588f6717a0 100644
--- a/source/include/actypes.h
+++ b/source/include/actypes.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -658,9 +658,12 @@ typedef UINT64 ACPI_INTEGER;
/* Pointer/Integer type conversions */
#define ACPI_TO_POINTER(i) ACPI_CAST_PTR (void, (ACPI_SIZE) (i))
+#ifndef ACPI_TO_INTEGER
#define ACPI_TO_INTEGER(p) ACPI_PTR_DIFF (p, (void *) 0)
+#endif
+#ifndef ACPI_OFFSET
#define ACPI_OFFSET(d, f) ACPI_PTR_DIFF (&(((d *) 0)->f), (void *) 0)
-#define ACPI_PHYSADDR_TO_PTR(i) ACPI_TO_POINTER(i)
+#endif
#define ACPI_PTR_TO_PHYSADDR(i) ACPI_TO_INTEGER(i)
/* Optimizations for 4-character (32-bit) ACPI_NAME manipulation */
@@ -687,9 +690,14 @@ typedef UINT64 ACPI_INTEGER;
* Can be used with AccessSize field of ACPI_GENERIC_ADDRESS and
* ACPI_RESOURCE_GENERIC_REGISTER.
*/
-#define ACPI_ACCESS_BIT_WIDTH(AccessSize) (1 << ((AccessSize) + 2))
-#define ACPI_ACCESS_BYTE_WIDTH(AccessSize) (1 << ((AccessSize) - 1))
-
+#define ACPI_ACCESS_BIT_SHIFT 2
+#define ACPI_ACCESS_BYTE_SHIFT -1
+#define ACPI_ACCESS_BIT_MAX (31 - ACPI_ACCESS_BIT_SHIFT)
+#define ACPI_ACCESS_BYTE_MAX (31 - ACPI_ACCESS_BYTE_SHIFT)
+#define ACPI_ACCESS_BIT_DEFAULT (8 - ACPI_ACCESS_BIT_SHIFT)
+#define ACPI_ACCESS_BYTE_DEFAULT (8 - ACPI_ACCESS_BYTE_SHIFT)
+#define ACPI_ACCESS_BIT_WIDTH(size) (1 << ((size) + ACPI_ACCESS_BIT_SHIFT))
+#define ACPI_ACCESS_BYTE_WIDTH(size) (1 << ((size) + ACPI_ACCESS_BYTE_SHIFT))
/*******************************************************************************
*
@@ -1319,6 +1327,14 @@ typedef struct acpi_connection_info
} ACPI_CONNECTION_INFO;
+/* Special Context data for PCC Opregion (ACPI 6.3) */
+
+typedef struct acpi_pcc_info {
+ UINT8 SubspaceId;
+ UINT16 Length;
+ UINT8 *InternalBuffer;
+} ACPI_PCC_INFO;
+
typedef
ACPI_STATUS (*ACPI_ADR_SPACE_SETUP) (
@@ -1458,6 +1474,12 @@ typedef struct acpi_mem_space_context
} ACPI_MEM_SPACE_CONTEXT;
+typedef struct acpi_data_table_space_context
+{
+ void *Pointer;
+
+} ACPI_DATA_TABLE_MAPPING;
+
/*
* ACPI_MEMORY_LIST is used only if the ACPICA local cache is enabled
@@ -1532,6 +1554,7 @@ typedef enum
#define ACPI_OSI_WIN_10_RS5 0x13
#define ACPI_OSI_WIN_10_19H1 0x14
#define ACPI_OSI_WIN_10_20H1 0x15
+#define ACPI_OSI_WIN_11 0x16
/* Definitions of getopt */
diff --git a/source/include/acutils.h b/source/include/acutils.h
index 791b7d9ce562..f23ee559b71b 100644
--- a/source/include/acutils.h
+++ b/source/include/acutils.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acuuid.h b/source/include/acuuid.h
index 48f4c9a1c346..bc41fa40bab9 100644
--- a/source/include/acuuid.h
+++ b/source/include/acuuid.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/amlcode.h b/source/include/amlcode.h
index f7ad22a18120..25d591e55d95 100644
--- a/source/include/amlcode.h
+++ b/source/include/amlcode.h
@@ -10,7 +10,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/amlresrc.h b/source/include/amlresrc.h
index a97a1c63259d..e89cd824d11d 100644
--- a/source/include/amlresrc.h
+++ b/source/include/amlresrc.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/accygwin.h b/source/include/platform/accygwin.h
index 1eec32ac34cb..217237d9ba82 100644
--- a/source/include/platform/accygwin.h
+++ b/source/include/platform/accygwin.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acdragonflyex.h b/source/include/platform/acdragonflyex.h
index 6c11c1773f05..ba3ef0168422 100644
--- a/source/include/platform/acdragonflyex.h
+++ b/source/include/platform/acdragonflyex.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acefi.h b/source/include/platform/acefi.h
index c61798fd4268..fefcca84311d 100644
--- a/source/include/platform/acefi.h
+++ b/source/include/platform/acefi.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acefiex.h b/source/include/platform/acefiex.h
index f0ae56cc8f62..83aa907b6013 100644
--- a/source/include/platform/acefiex.h
+++ b/source/include/platform/acefiex.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acenv.h b/source/include/platform/acenv.h
index 740d449556e8..674c4c7d02c3 100644
--- a/source/include/platform/acenv.h
+++ b/source/include/platform/acenv.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acenvex.h b/source/include/platform/acenvex.h
index 42bb49010bdf..32db36c6e86c 100644
--- a/source/include/platform/acenvex.h
+++ b/source/include/platform/acenvex.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acfreebsd.h b/source/include/platform/acfreebsd.h
index 91e468795cfd..fdf99082530d 100644
--- a/source/include/platform/acfreebsd.h
+++ b/source/include/platform/acfreebsd.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acgcc.h b/source/include/platform/acgcc.h
index 148190a3a6a5..3ad22a1f8ac1 100644
--- a/source/include/platform/acgcc.h
+++ b/source/include/platform/acgcc.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acgccex.h b/source/include/platform/acgccex.h
index 61d428524f8a..035b999d95c3 100644
--- a/source/include/platform/acgccex.h
+++ b/source/include/platform/acgccex.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/achaiku.h b/source/include/platform/achaiku.h
index b7ec29f47d5d..81c1927ccc7f 100644
--- a/source/include/platform/achaiku.h
+++ b/source/include/platform/achaiku.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acintel.h b/source/include/platform/acintel.h
index 352c628cd887..889c7594ef73 100644
--- a/source/include/platform/acintel.h
+++ b/source/include/platform/acintel.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/aclinux.h b/source/include/platform/aclinux.h
index 17fd5113112f..1c55c659f357 100644
--- a/source/include/platform/aclinux.h
+++ b/source/include/platform/aclinux.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -252,6 +252,11 @@
#define ACPI_SPINLOCK spinlock_t *
#define ACPI_CPU_FLAGS unsigned long
+#define ACPI_UINTPTR_T uintptr_t
+
+#define ACPI_TO_INTEGER(p) ((uintptr_t)(p))
+#define ACPI_OFFSET(d, f) offsetof(d, f)
+
/* Use native linux version of AcpiOsAllocateZeroed */
#define USE_NATIVE_ALLOCATE_ZEROED
diff --git a/source/include/platform/aclinuxex.h b/source/include/platform/aclinuxex.h
index f88559d2f1f4..4e84cd4b7e94 100644
--- a/source/include/platform/aclinuxex.h
+++ b/source/include/platform/aclinuxex.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acmacosx.h b/source/include/platform/acmacosx.h
index fd5f2b3f6b60..0335cc0ae5d6 100644
--- a/source/include/platform/acmacosx.h
+++ b/source/include/platform/acmacosx.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acmsvc.h b/source/include/platform/acmsvc.h
index a2b9e4ced77d..736706530d93 100644
--- a/source/include/platform/acmsvc.h
+++ b/source/include/platform/acmsvc.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acmsvcex.h b/source/include/platform/acmsvcex.h
index 8c837ec6ab03..2350d859641a 100644
--- a/source/include/platform/acmsvcex.h
+++ b/source/include/platform/acmsvcex.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acnetbsd.h b/source/include/platform/acnetbsd.h
index 138b9ba6b4f9..c0e3619d6597 100644
--- a/source/include/platform/acnetbsd.h
+++ b/source/include/platform/acnetbsd.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acos2.h b/source/include/platform/acos2.h
index e93aba114545..fe776095e3cd 100644
--- a/source/include/platform/acos2.h
+++ b/source/include/platform/acos2.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acqnx.h b/source/include/platform/acqnx.h
index 30c12e9ef33b..db1c103fa4cb 100644
--- a/source/include/platform/acqnx.h
+++ b/source/include/platform/acqnx.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acwin.h b/source/include/platform/acwin.h
index 84e800023b3e..dc2d1eb5b5d0 100644
--- a/source/include/platform/acwin.h
+++ b/source/include/platform/acwin.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acwin64.h b/source/include/platform/acwin64.h
index 49b330aa7829..e20454520a4e 100644
--- a/source/include/platform/acwin64.h
+++ b/source/include/platform/acwin64.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/os_specific/service_layers/osbsdtbl.c b/source/os_specific/service_layers/osbsdtbl.c
index 410a6f47a4e9..043dec46f0ca 100644
--- a/source/os_specific/service_layers/osbsdtbl.c
+++ b/source/os_specific/service_layers/osbsdtbl.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/os_specific/service_layers/oslinuxtbl.c b/source/os_specific/service_layers/oslinuxtbl.c
index c1438f8e9b30..ad5888f10859 100644
--- a/source/os_specific/service_layers/oslinuxtbl.c
+++ b/source/os_specific/service_layers/oslinuxtbl.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/os_specific/service_layers/osunixdir.c b/source/os_specific/service_layers/osunixdir.c
index a889c4b8d522..54f53ea2deb4 100644
--- a/source/os_specific/service_layers/osunixdir.c
+++ b/source/os_specific/service_layers/osunixdir.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/os_specific/service_layers/osunixmap.c b/source/os_specific/service_layers/osunixmap.c
index be8423f689f7..2f6e0b14b632 100644
--- a/source/os_specific/service_layers/osunixmap.c
+++ b/source/os_specific/service_layers/osunixmap.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/os_specific/service_layers/osunixxf.c b/source/os_specific/service_layers/osunixxf.c
index 33fbb0ceadaf..ef1651b67d9f 100644
--- a/source/os_specific/service_layers/osunixxf.c
+++ b/source/os_specific/service_layers/osunixxf.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/os_specific/service_layers/oswindir.c b/source/os_specific/service_layers/oswindir.c
index bbad99753c50..b523102a5546 100644
--- a/source/os_specific/service_layers/oswindir.c
+++ b/source/os_specific/service_layers/oswindir.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/os_specific/service_layers/oswintbl.c b/source/os_specific/service_layers/oswintbl.c
index 34176dd8ddf8..e053f056850a 100644
--- a/source/os_specific/service_layers/oswintbl.c
+++ b/source/os_specific/service_layers/oswintbl.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/os_specific/service_layers/oswinxf.c b/source/os_specific/service_layers/oswinxf.c
index b903f09aa499..dc85f9bcf13b 100644
--- a/source/os_specific/service_layers/oswinxf.c
+++ b/source/os_specific/service_layers/oswinxf.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpibin/abcompare.c b/source/tools/acpibin/abcompare.c
index cd9d833406ae..f974f129ac14 100644
--- a/source/tools/acpibin/abcompare.c
+++ b/source/tools/acpibin/abcompare.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpibin/abmain.c b/source/tools/acpibin/abmain.c
index b953e264f575..365b437d90aa 100644
--- a/source/tools/acpibin/abmain.c
+++ b/source/tools/acpibin/abmain.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpibin/acpibin.h b/source/tools/acpibin/acpibin.h
index 1c3c9d433b4b..510b3a855c99 100644
--- a/source/tools/acpibin/acpibin.h
+++ b/source/tools/acpibin/acpibin.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpidump/acpidump.h b/source/tools/acpidump/acpidump.h
index 78169682c5e9..87858875f2ae 100644
--- a/source/tools/acpidump/acpidump.h
+++ b/source/tools/acpidump/acpidump.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpidump/apdump.c b/source/tools/acpidump/apdump.c
index 90444084b5cb..d66832d1a4e9 100644
--- a/source/tools/acpidump/apdump.c
+++ b/source/tools/acpidump/apdump.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpidump/apfiles.c b/source/tools/acpidump/apfiles.c
index d9e4e5cfd6b7..16371088efa3 100644
--- a/source/tools/acpidump/apfiles.c
+++ b/source/tools/acpidump/apfiles.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpidump/apmain.c b/source/tools/acpidump/apmain.c
index 592d33a5120f..5fba99bb1627 100644
--- a/source/tools/acpidump/apmain.c
+++ b/source/tools/acpidump/apmain.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpiexec/aecommon.h b/source/tools/acpiexec/aecommon.h
index c325d8f3b641..7bfdd278c17d 100644
--- a/source/tools/acpiexec/aecommon.h
+++ b/source/tools/acpiexec/aecommon.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpiexec/aeexception.c b/source/tools/acpiexec/aeexception.c
index df35aa864f63..f0903c1f65fc 100644
--- a/source/tools/acpiexec/aeexception.c
+++ b/source/tools/acpiexec/aeexception.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -334,7 +334,7 @@ AeSignalHandler (
SigintCount++;
if (SigintCount >= ACPI_MAX_CONTROL_C)
{
- exit (0);
+ _exit (0);
}
/* Abort the application if there are no methods executing */
@@ -368,7 +368,7 @@ AeSignalHandler (
AcpiOsPrintf (AE_PREFIX "Terminating\n");
(void) AcpiOsTerminate ();
- exit (0);
+ _exit (0);
}
diff --git a/source/tools/acpiexec/aeexec.c b/source/tools/acpiexec/aeexec.c
index d8d93e6182c6..5bf1ebd33893 100644
--- a/source/tools/acpiexec/aeexec.c
+++ b/source/tools/acpiexec/aeexec.c
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpiexec/aehandlers.c b/source/tools/acpiexec/aehandlers.c
index a1abdddd0213..9b12aa65e0fb 100644
--- a/source/tools/acpiexec/aehandlers.c
+++ b/source/tools/acpiexec/aehandlers.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpiexec/aeinitfile.c b/source/tools/acpiexec/aeinitfile.c
index d568b50e9361..600f2c7d8044 100644
--- a/source/tools/acpiexec/aeinitfile.c
+++ b/source/tools/acpiexec/aeinitfile.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpiexec/aeinstall.c b/source/tools/acpiexec/aeinstall.c
index 1d32443b1568..28d08d8abf82 100644
--- a/source/tools/acpiexec/aeinstall.c
+++ b/source/tools/acpiexec/aeinstall.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpiexec/aemain.c b/source/tools/acpiexec/aemain.c
index 7db86f78409b..9c5a6e0db151 100644
--- a/source/tools/acpiexec/aemain.c
+++ b/source/tools/acpiexec/aemain.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpiexec/aeregion.c b/source/tools/acpiexec/aeregion.c
index decd17f7fcff..400fd66e3f07 100644
--- a/source/tools/acpiexec/aeregion.c
+++ b/source/tools/acpiexec/aeregion.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpiexec/aetables.c b/source/tools/acpiexec/aetables.c
index 510c7e2e63e0..97f4fb73a8ae 100644
--- a/source/tools/acpiexec/aetables.c
+++ b/source/tools/acpiexec/aetables.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpiexec/aetables.h b/source/tools/acpiexec/aetables.h
index 88cbfc5c55a8..446210ae325d 100644
--- a/source/tools/acpiexec/aetables.h
+++ b/source/tools/acpiexec/aetables.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpiexec/aetests.c b/source/tools/acpiexec/aetests.c
index 4491186e1d62..94e26686ae51 100644
--- a/source/tools/acpiexec/aetests.c
+++ b/source/tools/acpiexec/aetests.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpihelp/acpihelp.h b/source/tools/acpihelp/acpihelp.h
index e6c778f2f789..abc9480ef7cb 100644
--- a/source/tools/acpihelp/acpihelp.h
+++ b/source/tools/acpihelp/acpihelp.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpihelp/ahaml.c b/source/tools/acpihelp/ahaml.c
index a077caf2a51b..df8326908240 100644
--- a/source/tools/acpihelp/ahaml.c
+++ b/source/tools/acpihelp/ahaml.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpihelp/ahamlops.c b/source/tools/acpihelp/ahamlops.c
index 76ca2b3ed712..bd2b13fb7239 100644
--- a/source/tools/acpihelp/ahamlops.c
+++ b/source/tools/acpihelp/ahamlops.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpihelp/ahasl.c b/source/tools/acpihelp/ahasl.c
index b77c875dfd6c..0b046995f612 100644
--- a/source/tools/acpihelp/ahasl.c
+++ b/source/tools/acpihelp/ahasl.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpihelp/ahaslkey.c b/source/tools/acpihelp/ahaslkey.c
index 068ef4690c32..40da5b33d7c4 100644
--- a/source/tools/acpihelp/ahaslkey.c
+++ b/source/tools/acpihelp/ahaslkey.c
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpihelp/ahaslops.c b/source/tools/acpihelp/ahaslops.c
index df495032b07e..00c05de2cf0b 100644
--- a/source/tools/acpihelp/ahaslops.c
+++ b/source/tools/acpihelp/ahaslops.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpihelp/ahdecode.c b/source/tools/acpihelp/ahdecode.c
index 150ef6c05b43..0de81918f783 100644
--- a/source/tools/acpihelp/ahdecode.c
+++ b/source/tools/acpihelp/ahdecode.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpihelp/ahgrammar.c b/source/tools/acpihelp/ahgrammar.c
index e12cc6dbecd2..03838bd97c1c 100644
--- a/source/tools/acpihelp/ahgrammar.c
+++ b/source/tools/acpihelp/ahgrammar.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpihelp/ahmain.c b/source/tools/acpihelp/ahmain.c
index 5310d6010025..808a8edafbbc 100644
--- a/source/tools/acpihelp/ahmain.c
+++ b/source/tools/acpihelp/ahmain.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpisrc/acpisrc.h b/source/tools/acpisrc/acpisrc.h
index 4cc19c731d05..0ebfaef35f3f 100644
--- a/source/tools/acpisrc/acpisrc.h
+++ b/source/tools/acpisrc/acpisrc.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpisrc/ascase.c b/source/tools/acpisrc/ascase.c
index f3946a8fefb3..4f231704b0e6 100644
--- a/source/tools/acpisrc/ascase.c
+++ b/source/tools/acpisrc/ascase.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpisrc/asconvrt.c b/source/tools/acpisrc/asconvrt.c
index 24ff24cd0e8c..ab34a6fe17a2 100644
--- a/source/tools/acpisrc/asconvrt.c
+++ b/source/tools/acpisrc/asconvrt.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -185,7 +185,7 @@ AsCountLines (
#define MODULE_HEADER_BEGIN "/******************************************************************************\n *\n * Module Name:";
#define MODULE_HEADER_END " *****************************************************************************/\n\n"
-#define INTEL_COPYRIGHT " * Copyright (C) 2000 - 2021, Intel Corp.\n"
+#define INTEL_COPYRIGHT " * Copyright (C) 2000 - 2022, Intel Corp.\n"
/* Opening signature of the Intel legal header */
diff --git a/source/tools/acpisrc/asfile.c b/source/tools/acpisrc/asfile.c
index 41900a31fbbb..3f8f97c44b2a 100644
--- a/source/tools/acpisrc/asfile.c
+++ b/source/tools/acpisrc/asfile.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpisrc/asmain.c b/source/tools/acpisrc/asmain.c
index 206feb445650..aa382f0b2d0e 100644
--- a/source/tools/acpisrc/asmain.c
+++ b/source/tools/acpisrc/asmain.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpisrc/asremove.c b/source/tools/acpisrc/asremove.c
index 9ab6cb4b9992..7f230af15251 100644
--- a/source/tools/acpisrc/asremove.c
+++ b/source/tools/acpisrc/asremove.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpisrc/astable.c b/source/tools/acpisrc/astable.c
index 59f1ab8bd4dc..ec4344776c24 100644
--- a/source/tools/acpisrc/astable.c
+++ b/source/tools/acpisrc/astable.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -197,7 +197,7 @@ ACPI_STRING_TABLE StandardDataTypes[] = {
char EmptyHeader[] = "";
char DualLicenseHeader[] =
"/*\n"
-" * Copyright (C) 2000 - 2021, Intel Corp.\n"
+" * Copyright (C) 2000 - 2022, Intel Corp.\n"
" * All rights reserved.\n"
" *\n"
" * Redistribution and use in source and binary forms, with or without\n"
@@ -388,6 +388,7 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"ACPI_NATIVE_INT", SRC_TYPE_SIMPLE},
{"ACPI_NATIVE_UINT", SRC_TYPE_SIMPLE},
{"ACPI_NEW_TABLE_DESC", SRC_TYPE_STRUCT},
+
{"ACPI_NOTIFY_HANDLER", SRC_TYPE_SIMPLE},
{"ACPI_NOTIFY_INFO", SRC_TYPE_STRUCT},
{"ACPI_NS_SEARCH_DATA", SRC_TYPE_STRUCT},
@@ -442,6 +443,7 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"ACPI_PARSE_STATE", SRC_TYPE_STRUCT},
{"ACPI_PARSE_UPWARDS", SRC_TYPE_SIMPLE},
{"ACPI_PARSE_VALUE", SRC_TYPE_UNION},
+ {"ACPI_PCC_INFO", SRC_TYPE_STRUCT},
{"ACPI_PCI_DEVICE", SRC_TYPE_STRUCT},
{"ACPI_PCI_ID", SRC_TYPE_STRUCT},
{"ACPI_PCI_ROUTING_TABLE", SRC_TYPE_STRUCT},
@@ -640,6 +642,7 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
* Acpi table definition names.
*/
{"ACPI_TABLE_AEST", SRC_TYPE_STRUCT},
+ {"ACPI_TABLE_AGDI", SRC_TYPE_STRUCT},
{"ACPI_TABLE_ASF", SRC_TYPE_STRUCT},
{"ACPI_TABLE_BDAT", SRC_TYPE_STRUCT},
{"ACPI_TABLE_BERT", SRC_TYPE_STRUCT},
@@ -695,6 +698,7 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"ACPI_TABLE_SRAT", SRC_TYPE_STRUCT},
{"ACPI_TABLE_STAO", SRC_TYPE_STRUCT},
{"ACPI_TABLE_TCPA", SRC_TYPE_STRUCT},
+ {"ACPI_TABLE_TDEL", SRC_TYPE_STRUCT},
{"ACPI_TABLE_TPM2", SRC_TYPE_STRUCT},
{"ACPI_TABLE_TPM23", SRC_TYPE_STRUCT},
{"ACPI_TABLE_UEFI", SRC_TYPE_STRUCT},
@@ -846,19 +850,31 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_A", SRC_TYPE_STRUCT},
{"ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_B", SRC_TYPE_STRUCT},
{"ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_C", SRC_TYPE_STRUCT},
+ {"ACPI_NHLT_DEVICE_SPECIFIC_CONFIG_D", SRC_TYPE_STRUCT},
{"ACPI_NHLT_DEVICE_SPECIFIC_HDR", SRC_TYPE_STRUCT},
{"ACPI_NHLT_ENDPOINT", SRC_TYPE_STRUCT},
+ {"ACPI_NHLT_ENDPOINT_COUNT", SRC_TYPE_STRUCT},
{"ACPI_NHLT_FORMAT_CONFIG", SRC_TYPE_STRUCT},
{"ACPI_NHLT_FORMATS_CONFIG", SRC_TYPE_STRUCT},
- {"ACPI_NHLT_LINUX_SPECIFIC_COUNT", SRC_TYPE_STRUCT},
- {"ACPI_NHLT_LINUX_SPECIFIC_DATA", SRC_TYPE_STRUCT},
- {"ACPI_NHLT_MIC_DEVICE_SPECIFIC_CONFIG", SRC_TYPE_STRUCT},
+ {"ACPI_NHLT_DEVICE_INFO_COUNT", SRC_TYPE_STRUCT},
+ {"ACPI_NHLT_DEVICE_INFO", SRC_TYPE_STRUCT},
+ {"ACPI_NHLT_MIC_DEVICE_SPECIFIC_CONFIG", SRC_TYPE_STRUCT},
+ {"ACPI_NHLT_MIC_SNR_SENSITIVITY_EXTENSION",SRC_TYPE_STRUCT},
+ {"ACPI_NHLT_RENDER_DEVICE_SPECIFIC_CONFIG", SRC_TYPE_STRUCT},
+ {"ACPI_NHLT_RENDER_FEEDBACK_DEVICE_SPECIFIC_CONFIG", SRC_TYPE_STRUCT},
+ {"ACPI_NHLT_TABLE_TERMINATOR", SRC_TYPE_STRUCT},
+ {"ACPI_NHLT_WAVE_EXTENSIBLE", SRC_TYPE_STRUCT},
+ {"ACPI_TABLE_NHLT_ENDPOINT", SRC_TYPE_STRUCT},
+ {"ACPI_NHLT_VENDOR_MIC_DEVICE_SPECIFIC_CONFIG", SRC_TYPE_STRUCT},
+ {"ACPI_NHLT_MIC_DEVICE_SPECIFIC_CONFIG",SRC_TYPE_STRUCT},
{"ACPI_NHLT_MIC_SNR_SENSITIVITY_EXTENSION", SRC_TYPE_STRUCT},
{"ACPI_NHLT_RENDER_FEEDBACK_DEVICE_SPECIFIC_CONFIG",SRC_TYPE_STRUCT},
- {"ACPI_NHLT_TABLE_TERMINATOR", SRC_TYPE_STRUCT},
- {"ACPI_NHLT_VENDOR_MIC_CONFIG", SRC_TYPE_STRUCT},
+ {"ACPI_TABLE_NHLT_ENDPOINT_COUNT", SRC_TYPE_STRUCT},
+ {"ACPI_NHLT_TABLE_TERMINATOR", SRC_TYPE_STRUCT},
+ {"ACPI_NHLT_VENDOR_MIC_CONFIG", SRC_TYPE_STRUCT},
+ {"ACPI_NHLT_VENDOR_MIC_COUNT", SRC_TYPE_STRUCT},
{"ACPI_NHLT_VENDOR_MIC_DEVICE_SPECIFIC_CONFIG", SRC_TYPE_STRUCT},
- {"ACPI_NHLT_WAVE_EXTENSIBLE", SRC_TYPE_STRUCT},
+ {"ACPI_NHLT_WAVE_EXTENSIBLE", SRC_TYPE_STRUCT},
{"ACPI_PCCT_EXT_PCC_SHARED_MEMORY", SRC_TYPE_STRUCT},
{"ACPI_PCCT_HW_REDUCED", SRC_TYPE_STRUCT},
{"ACPI_PCCT_HW_REDUCED_TYPE2", SRC_TYPE_STRUCT},
@@ -1231,8 +1247,8 @@ ACPI_CONVERSION_TABLE LicenseConversionTable =
ACPI_STRING_TABLE CustomReplacements[] =
{
- {"(c) 1999 - 2020", "(c) 1999 - 2021", REPLACE_WHOLE_WORD}, /* Main ACPICA source */
- {"(c) 2006 - 2020", "(c) 2006 - 2021", REPLACE_WHOLE_WORD}, /* Test suites */
+ {"(c) 1999 - 2021", "(c) 1999 - 2022", REPLACE_WHOLE_WORD}, /* Main ACPICA source */
+ {"(c) 2006 - 2021", "(c) 2006 - 2022", REPLACE_WHOLE_WORD}, /* Test suites */
#if 0
{"SUPPORT, ASSISTANCE", "SUPPORT, ASSISTANCE", REPLACE_WHOLE_WORD}, /* Fix intel header */
diff --git a/source/tools/acpisrc/asutils.c b/source/tools/acpisrc/asutils.c
index b1cac273bd47..cc97cca6b2cd 100644
--- a/source/tools/acpisrc/asutils.c
+++ b/source/tools/acpisrc/asutils.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpixtract/acpixtract.c b/source/tools/acpixtract/acpixtract.c
index 27810124372f..480e20e808b4 100644
--- a/source/tools/acpixtract/acpixtract.c
+++ b/source/tools/acpixtract/acpixtract.c
@@ -9,7 +9,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpixtract/acpixtract.h b/source/tools/acpixtract/acpixtract.h
index c852a80dc1e9..2e7646bbd68e 100644
--- a/source/tools/acpixtract/acpixtract.h
+++ b/source/tools/acpixtract/acpixtract.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpixtract/axmain.c b/source/tools/acpixtract/axmain.c
index 2d41c8594329..30f3d68a9517 100644
--- a/source/tools/acpixtract/axmain.c
+++ b/source/tools/acpixtract/axmain.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpixtract/axutils.c b/source/tools/acpixtract/axutils.c
index cdb22b54d3ab..54021778f4d4 100644
--- a/source/tools/acpixtract/axutils.c
+++ b/source/tools/acpixtract/axutils.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/efihello/efihello.c b/source/tools/efihello/efihello.c
index a9b169a401ea..ed4c8b4ec6bb 100644
--- a/source/tools/efihello/efihello.c
+++ b/source/tools/efihello/efihello.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/examples/examples.c b/source/tools/examples/examples.c
index c27d90717391..0b4497508a5f 100644
--- a/source/tools/examples/examples.c
+++ b/source/tools/examples/examples.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/examples/examples.h b/source/tools/examples/examples.h
index fc61502f0dc7..66c28219b0e1 100644
--- a/source/tools/examples/examples.h
+++ b/source/tools/examples/examples.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/examples/exstubs.c b/source/tools/examples/exstubs.c
index cb3b0049ae99..2cc8636fb996 100644
--- a/source/tools/examples/exstubs.c
+++ b/source/tools/examples/exstubs.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/examples/extables.c b/source/tools/examples/extables.c
index 6571d16a5ae5..9f2bcc10838a 100644
--- a/source/tools/examples/extables.c
+++ b/source/tools/examples/extables.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2021, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2022, Intel Corp.
* All rights reserved.
*
* 2. License