git: ab71bbb75a92 - main - acpica: Import ACPICA 20220331
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 01 Apr 2022 02:00:01 UTC
The branch main has been updated by jkim: URL: https://cgit.FreeBSD.org/src/commit/?id=ab71bbb75a92412f6327ff152ebe638568e9021c commit ab71bbb75a92412f6327ff152ebe638568e9021c Author: Jung-uk Kim <jkim@FreeBSD.org> AuthorDate: 2022-03-31 22:06:25 +0000 Commit: Jung-uk Kim <jkim@FreeBSD.org> CommitDate: 2022-04-01 01:59:23 +0000 acpica: Import ACPICA 20220331 (cherry picked from commit ca1c95cc699a25d891e62ef863c8268c93b35cf8) --- sys/contrib/dev/acpica/changes.txt | 126 +++++++ sys/contrib/dev/acpica/common/acfileio.c | 13 +- sys/contrib/dev/acpica/common/acgetline.c | 2 +- sys/contrib/dev/acpica/common/adfile.c | 2 +- sys/contrib/dev/acpica/common/adisasm.c | 2 +- sys/contrib/dev/acpica/common/adwalk.c | 2 +- sys/contrib/dev/acpica/common/ahids.c | 2 +- sys/contrib/dev/acpica/common/ahpredef.c | 2 +- sys/contrib/dev/acpica/common/ahtable.c | 5 +- sys/contrib/dev/acpica/common/ahuuids.c | 2 +- sys/contrib/dev/acpica/common/cmfsize.c | 2 +- sys/contrib/dev/acpica/common/dmextern.c | 2 +- sys/contrib/dev/acpica/common/dmrestag.c | 2 +- sys/contrib/dev/acpica/common/dmswitch.c | 2 +- sys/contrib/dev/acpica/common/dmtable.c | 179 ++++++++- sys/contrib/dev/acpica/common/dmtables.c | 2 +- sys/contrib/dev/acpica/common/dmtbdump.c | 72 +++- sys/contrib/dev/acpica/common/dmtbdump1.c | 116 +++++- sys/contrib/dev/acpica/common/dmtbdump2.c | 330 ++++++++++++----- sys/contrib/dev/acpica/common/dmtbdump3.c | 2 +- sys/contrib/dev/acpica/common/dmtbinfo.c | 8 +- sys/contrib/dev/acpica/common/dmtbinfo1.c | 33 +- sys/contrib/dev/acpica/common/dmtbinfo2.c | 134 +++++-- sys/contrib/dev/acpica/common/dmtbinfo3.c | 16 +- sys/contrib/dev/acpica/common/getopt.c | 2 +- sys/contrib/dev/acpica/compiler/aslallocate.c | 2 +- sys/contrib/dev/acpica/compiler/aslanalyze.c | 2 +- sys/contrib/dev/acpica/compiler/aslascii.c | 2 +- sys/contrib/dev/acpica/compiler/aslbtypes.c | 2 +- sys/contrib/dev/acpica/compiler/aslcache.c | 7 +- sys/contrib/dev/acpica/compiler/aslcodegen.c | 2 +- sys/contrib/dev/acpica/compiler/aslcompile.c | 5 +- sys/contrib/dev/acpica/compiler/aslcompiler.h | 2 +- sys/contrib/dev/acpica/compiler/aslcompiler.l | 2 +- sys/contrib/dev/acpica/compiler/aslcstyle.y | 2 +- sys/contrib/dev/acpica/compiler/asldebug.c | 2 +- sys/contrib/dev/acpica/compiler/asldefine.h | 2 +- sys/contrib/dev/acpica/compiler/aslerror.c | 5 +- sys/contrib/dev/acpica/compiler/aslexternal.c | 2 +- sys/contrib/dev/acpica/compiler/aslfileio.c | 2 +- sys/contrib/dev/acpica/compiler/aslfiles.c | 6 +- sys/contrib/dev/acpica/compiler/aslfold.c | 2 +- sys/contrib/dev/acpica/compiler/aslglobal.h | 2 +- sys/contrib/dev/acpica/compiler/aslhelp.c | 2 +- sys/contrib/dev/acpica/compiler/aslhelpers.y | 2 +- sys/contrib/dev/acpica/compiler/aslhex.c | 2 +- sys/contrib/dev/acpica/compiler/aslkeywords.y | 2 +- sys/contrib/dev/acpica/compiler/asllength.c | 2 +- sys/contrib/dev/acpica/compiler/asllisting.c | 2 +- sys/contrib/dev/acpica/compiler/asllistsup.c | 2 +- sys/contrib/dev/acpica/compiler/aslload.c | 2 +- sys/contrib/dev/acpica/compiler/asllookup.c | 2 +- sys/contrib/dev/acpica/compiler/aslmain.c | 4 +- sys/contrib/dev/acpica/compiler/aslmap.c | 6 +- sys/contrib/dev/acpica/compiler/aslmapenter.c | 2 +- sys/contrib/dev/acpica/compiler/aslmapoutput.c | 2 +- sys/contrib/dev/acpica/compiler/aslmaputils.c | 2 +- sys/contrib/dev/acpica/compiler/aslmessages.c | 7 +- sys/contrib/dev/acpica/compiler/aslmessages.h | 4 +- sys/contrib/dev/acpica/compiler/aslmethod.c | 2 +- sys/contrib/dev/acpica/compiler/aslnamesp.c | 2 +- sys/contrib/dev/acpica/compiler/asloffset.c | 2 +- sys/contrib/dev/acpica/compiler/aslopcodes.c | 2 +- sys/contrib/dev/acpica/compiler/asloperands.c | 8 +- sys/contrib/dev/acpica/compiler/aslopt.c | 2 +- sys/contrib/dev/acpica/compiler/asloptions.c | 2 +- sys/contrib/dev/acpica/compiler/aslparseop.c | 2 +- sys/contrib/dev/acpica/compiler/aslparser.y | 2 +- sys/contrib/dev/acpica/compiler/aslpld.c | 2 +- sys/contrib/dev/acpica/compiler/aslpredef.c | 2 +- sys/contrib/dev/acpica/compiler/aslprepkg.c | 2 +- sys/contrib/dev/acpica/compiler/aslprimaries.y | 4 +- sys/contrib/dev/acpica/compiler/aslprintf.c | 2 +- sys/contrib/dev/acpica/compiler/aslprune.c | 2 +- sys/contrib/dev/acpica/compiler/aslresource.c | 2 +- sys/contrib/dev/acpica/compiler/aslresources.y | 2 +- sys/contrib/dev/acpica/compiler/aslrestype1.c | 2 +- sys/contrib/dev/acpica/compiler/aslrestype1i.c | 2 +- sys/contrib/dev/acpica/compiler/aslrestype2.c | 2 +- sys/contrib/dev/acpica/compiler/aslrestype2d.c | 2 +- sys/contrib/dev/acpica/compiler/aslrestype2e.c | 2 +- sys/contrib/dev/acpica/compiler/aslrestype2q.c | 2 +- sys/contrib/dev/acpica/compiler/aslrestype2s.c | 2 +- sys/contrib/dev/acpica/compiler/aslrestype2w.c | 2 +- sys/contrib/dev/acpica/compiler/aslrules.y | 8 +- sys/contrib/dev/acpica/compiler/aslstartup.c | 25 +- sys/contrib/dev/acpica/compiler/aslstubs.c | 2 +- sys/contrib/dev/acpica/compiler/aslsupport.l | 2 +- sys/contrib/dev/acpica/compiler/aslsupport.y | 2 +- sys/contrib/dev/acpica/compiler/asltokens.y | 2 +- sys/contrib/dev/acpica/compiler/asltransform.c | 2 +- sys/contrib/dev/acpica/compiler/asltree.c | 2 +- sys/contrib/dev/acpica/compiler/asltypes.h | 2 +- sys/contrib/dev/acpica/compiler/asltypes.y | 4 +- sys/contrib/dev/acpica/compiler/aslutils.c | 2 +- sys/contrib/dev/acpica/compiler/asluuid.c | 3 +- sys/contrib/dev/acpica/compiler/aslwalks.c | 2 +- sys/contrib/dev/acpica/compiler/aslxref.c | 2 +- sys/contrib/dev/acpica/compiler/aslxrefout.c | 2 +- sys/contrib/dev/acpica/compiler/cvcompiler.c | 2 +- sys/contrib/dev/acpica/compiler/cvdisasm.c | 2 +- sys/contrib/dev/acpica/compiler/cvparser.c | 2 +- sys/contrib/dev/acpica/compiler/dtcompile.c | 2 +- sys/contrib/dev/acpica/compiler/dtcompiler.h | 10 +- sys/contrib/dev/acpica/compiler/dtcompilerparser.l | 2 +- sys/contrib/dev/acpica/compiler/dtcompilerparser.y | 2 +- sys/contrib/dev/acpica/compiler/dtexpress.c | 2 +- sys/contrib/dev/acpica/compiler/dtfield.c | 8 +- sys/contrib/dev/acpica/compiler/dtio.c | 2 +- sys/contrib/dev/acpica/compiler/dtparser.l | 2 +- sys/contrib/dev/acpica/compiler/dtparser.y | 2 +- sys/contrib/dev/acpica/compiler/dtsubtable.c | 2 +- sys/contrib/dev/acpica/compiler/dttable.c | 61 +++- sys/contrib/dev/acpica/compiler/dttable1.c | 179 ++++++++- sys/contrib/dev/acpica/compiler/dttable2.c | 404 ++++++++++++++++++++- sys/contrib/dev/acpica/compiler/dttemplate.c | 2 +- sys/contrib/dev/acpica/compiler/dttemplate.h | 205 +++++++++-- sys/contrib/dev/acpica/compiler/dtutils.c | 15 +- sys/contrib/dev/acpica/compiler/preprocess.h | 2 +- sys/contrib/dev/acpica/compiler/prexpress.c | 2 +- sys/contrib/dev/acpica/compiler/prmacros.c | 2 +- sys/contrib/dev/acpica/compiler/prparser.l | 2 +- sys/contrib/dev/acpica/compiler/prparser.y | 2 +- sys/contrib/dev/acpica/compiler/prscan.c | 2 +- sys/contrib/dev/acpica/compiler/prutils.c | 2 +- .../dev/acpica/components/debugger/dbcmds.c | 2 +- .../dev/acpica/components/debugger/dbconvert.c | 2 +- .../dev/acpica/components/debugger/dbdisply.c | 2 +- .../dev/acpica/components/debugger/dbexec.c | 2 +- .../dev/acpica/components/debugger/dbfileio.c | 2 +- .../dev/acpica/components/debugger/dbhistry.c | 2 +- .../dev/acpica/components/debugger/dbinput.c | 2 +- .../dev/acpica/components/debugger/dbmethod.c | 2 +- .../dev/acpica/components/debugger/dbnames.c | 2 +- .../dev/acpica/components/debugger/dbobject.c | 2 +- .../dev/acpica/components/debugger/dbstats.c | 2 +- .../dev/acpica/components/debugger/dbtest.c | 2 +- .../dev/acpica/components/debugger/dbutils.c | 2 +- .../dev/acpica/components/debugger/dbxface.c | 2 +- .../dev/acpica/components/disassembler/dmbuffer.c | 2 +- .../dev/acpica/components/disassembler/dmcstyle.c | 2 +- .../acpica/components/disassembler/dmdeferred.c | 2 +- .../dev/acpica/components/disassembler/dmnames.c | 2 +- .../dev/acpica/components/disassembler/dmopcode.c | 2 +- .../dev/acpica/components/disassembler/dmresrc.c | 2 +- .../dev/acpica/components/disassembler/dmresrcl.c | 2 +- .../dev/acpica/components/disassembler/dmresrcl2.c | 2 +- .../dev/acpica/components/disassembler/dmresrcs.c | 2 +- .../dev/acpica/components/disassembler/dmutils.c | 2 +- .../dev/acpica/components/disassembler/dmwalk.c | 12 +- .../dev/acpica/components/dispatcher/dsargs.c | 2 +- .../dev/acpica/components/dispatcher/dscontrol.c | 2 +- .../dev/acpica/components/dispatcher/dsdebug.c | 2 +- .../dev/acpica/components/dispatcher/dsfield.c | 2 +- .../dev/acpica/components/dispatcher/dsinit.c | 2 +- .../dev/acpica/components/dispatcher/dsmethod.c | 2 +- .../dev/acpica/components/dispatcher/dsmthdat.c | 2 +- .../dev/acpica/components/dispatcher/dsobject.c | 2 +- .../dev/acpica/components/dispatcher/dsopcode.c | 3 +- .../dev/acpica/components/dispatcher/dspkginit.c | 2 +- .../dev/acpica/components/dispatcher/dsutils.c | 2 +- .../dev/acpica/components/dispatcher/dswexec.c | 4 +- .../dev/acpica/components/dispatcher/dswload.c | 2 +- .../dev/acpica/components/dispatcher/dswload2.c | 2 +- .../dev/acpica/components/dispatcher/dswscope.c | 2 +- .../dev/acpica/components/dispatcher/dswstate.c | 2 +- sys/contrib/dev/acpica/components/events/evevent.c | 2 +- sys/contrib/dev/acpica/components/events/evglock.c | 2 +- sys/contrib/dev/acpica/components/events/evgpe.c | 2 +- .../dev/acpica/components/events/evgpeblk.c | 2 +- .../dev/acpica/components/events/evgpeinit.c | 2 +- .../dev/acpica/components/events/evgpeutil.c | 2 +- .../dev/acpica/components/events/evhandler.c | 4 +- sys/contrib/dev/acpica/components/events/evmisc.c | 2 +- .../dev/acpica/components/events/evregion.c | 11 +- .../dev/acpica/components/events/evrgnini.c | 60 ++- sys/contrib/dev/acpica/components/events/evsci.c | 2 +- sys/contrib/dev/acpica/components/events/evxface.c | 2 +- .../dev/acpica/components/events/evxfevnt.c | 2 +- sys/contrib/dev/acpica/components/events/evxfgpe.c | 2 +- .../dev/acpica/components/events/evxfregn.c | 2 +- .../dev/acpica/components/executer/exconcat.c | 2 +- .../dev/acpica/components/executer/exconfig.c | 65 ++-- .../dev/acpica/components/executer/exconvrt.c | 2 +- .../dev/acpica/components/executer/excreate.c | 3 +- .../dev/acpica/components/executer/exdebug.c | 2 +- .../dev/acpica/components/executer/exdump.c | 2 +- .../dev/acpica/components/executer/exfield.c | 6 +- .../dev/acpica/components/executer/exfldio.c | 4 +- .../dev/acpica/components/executer/exmisc.c | 2 +- .../dev/acpica/components/executer/exmutex.c | 2 +- .../dev/acpica/components/executer/exnames.c | 2 +- .../dev/acpica/components/executer/exoparg1.c | 24 +- .../dev/acpica/components/executer/exoparg2.c | 2 +- .../dev/acpica/components/executer/exoparg3.c | 2 +- .../dev/acpica/components/executer/exoparg6.c | 2 +- .../dev/acpica/components/executer/exprep.c | 2 +- .../dev/acpica/components/executer/exregion.c | 16 +- .../dev/acpica/components/executer/exresnte.c | 2 +- .../dev/acpica/components/executer/exresolv.c | 2 +- .../dev/acpica/components/executer/exresop.c | 2 +- .../dev/acpica/components/executer/exserial.c | 2 +- .../dev/acpica/components/executer/exstore.c | 2 +- .../dev/acpica/components/executer/exstoren.c | 2 +- .../dev/acpica/components/executer/exstorob.c | 2 +- .../dev/acpica/components/executer/exsystem.c | 41 ++- .../dev/acpica/components/executer/extrace.c | 2 +- .../dev/acpica/components/executer/exutils.c | 2 +- .../dev/acpica/components/hardware/hwacpi.c | 2 +- .../dev/acpica/components/hardware/hwesleep.c | 7 +- sys/contrib/dev/acpica/components/hardware/hwgpe.c | 2 +- sys/contrib/dev/acpica/components/hardware/hwpci.c | 2 +- .../dev/acpica/components/hardware/hwregs.c | 4 +- .../dev/acpica/components/hardware/hwsleep.c | 9 +- .../dev/acpica/components/hardware/hwtimer.c | 2 +- .../dev/acpica/components/hardware/hwvalid.c | 2 +- .../dev/acpica/components/hardware/hwxface.c | 2 +- .../dev/acpica/components/hardware/hwxfsleep.c | 4 +- .../dev/acpica/components/namespace/nsaccess.c | 2 +- .../dev/acpica/components/namespace/nsalloc.c | 2 +- .../dev/acpica/components/namespace/nsarguments.c | 2 +- .../dev/acpica/components/namespace/nsconvert.c | 2 +- .../dev/acpica/components/namespace/nsdump.c | 2 +- .../dev/acpica/components/namespace/nsdumpdv.c | 2 +- .../dev/acpica/components/namespace/nseval.c | 2 +- .../dev/acpica/components/namespace/nsinit.c | 2 +- .../dev/acpica/components/namespace/nsload.c | 2 +- .../dev/acpica/components/namespace/nsnames.c | 2 +- .../dev/acpica/components/namespace/nsobject.c | 2 +- .../dev/acpica/components/namespace/nsparse.c | 2 +- .../dev/acpica/components/namespace/nspredef.c | 2 +- .../dev/acpica/components/namespace/nsprepkg.c | 2 +- .../dev/acpica/components/namespace/nsrepair.c | 2 +- .../dev/acpica/components/namespace/nsrepair2.c | 2 +- .../dev/acpica/components/namespace/nssearch.c | 2 +- .../dev/acpica/components/namespace/nsutils.c | 2 +- .../dev/acpica/components/namespace/nswalk.c | 6 +- .../dev/acpica/components/namespace/nsxfeval.c | 2 +- .../dev/acpica/components/namespace/nsxfname.c | 2 +- .../dev/acpica/components/namespace/nsxfobj.c | 2 +- sys/contrib/dev/acpica/components/parser/psargs.c | 2 +- sys/contrib/dev/acpica/components/parser/psloop.c | 2 +- .../dev/acpica/components/parser/psobject.c | 2 +- .../dev/acpica/components/parser/psopcode.c | 4 +- .../dev/acpica/components/parser/psopinfo.c | 2 +- sys/contrib/dev/acpica/components/parser/psparse.c | 2 +- sys/contrib/dev/acpica/components/parser/psscope.c | 2 +- sys/contrib/dev/acpica/components/parser/pstree.c | 2 +- sys/contrib/dev/acpica/components/parser/psutils.c | 2 +- sys/contrib/dev/acpica/components/parser/pswalk.c | 2 +- sys/contrib/dev/acpica/components/parser/psxface.c | 2 +- .../dev/acpica/components/resources/rsaddr.c | 2 +- .../dev/acpica/components/resources/rscalc.c | 2 +- .../dev/acpica/components/resources/rscreate.c | 2 +- .../dev/acpica/components/resources/rsdump.c | 2 +- .../dev/acpica/components/resources/rsdumpinfo.c | 2 +- .../dev/acpica/components/resources/rsinfo.c | 2 +- sys/contrib/dev/acpica/components/resources/rsio.c | 2 +- .../dev/acpica/components/resources/rsirq.c | 2 +- .../dev/acpica/components/resources/rslist.c | 2 +- .../dev/acpica/components/resources/rsmemory.c | 2 +- .../dev/acpica/components/resources/rsmisc.c | 2 +- .../dev/acpica/components/resources/rsserial.c | 2 +- .../dev/acpica/components/resources/rsutils.c | 2 +- .../dev/acpica/components/resources/rsxface.c | 2 +- sys/contrib/dev/acpica/components/tables/tbdata.c | 87 +++-- sys/contrib/dev/acpica/components/tables/tbfadt.c | 8 +- sys/contrib/dev/acpica/components/tables/tbfind.c | 2 +- .../dev/acpica/components/tables/tbinstal.c | 14 +- sys/contrib/dev/acpica/components/tables/tbprint.c | 5 +- sys/contrib/dev/acpica/components/tables/tbutils.c | 5 +- sys/contrib/dev/acpica/components/tables/tbxface.c | 2 +- .../dev/acpica/components/tables/tbxfload.c | 59 ++- .../dev/acpica/components/tables/tbxfroot.c | 2 +- .../dev/acpica/components/utilities/utaddress.c | 2 +- .../dev/acpica/components/utilities/utalloc.c | 2 +- .../dev/acpica/components/utilities/utascii.c | 2 +- .../dev/acpica/components/utilities/utbuffer.c | 2 +- .../dev/acpica/components/utilities/utcache.c | 2 +- .../dev/acpica/components/utilities/utcopy.c | 2 +- .../dev/acpica/components/utilities/utdebug.c | 2 +- .../dev/acpica/components/utilities/utdecode.c | 2 +- .../dev/acpica/components/utilities/utdelete.c | 3 +- .../dev/acpica/components/utilities/uterror.c | 2 +- .../dev/acpica/components/utilities/uteval.c | 2 +- .../dev/acpica/components/utilities/utexcep.c | 2 +- .../dev/acpica/components/utilities/utglobal.c | 2 +- .../dev/acpica/components/utilities/uthex.c | 2 +- .../dev/acpica/components/utilities/utids.c | 2 +- .../dev/acpica/components/utilities/utinit.c | 2 +- .../dev/acpica/components/utilities/utlock.c | 2 +- .../dev/acpica/components/utilities/utmath.c | 2 +- .../dev/acpica/components/utilities/utmisc.c | 2 +- .../dev/acpica/components/utilities/utmutex.c | 2 +- .../dev/acpica/components/utilities/utnonansi.c | 2 +- .../dev/acpica/components/utilities/utobject.c | 2 +- .../dev/acpica/components/utilities/utosi.c | 3 +- .../dev/acpica/components/utilities/utownerid.c | 2 +- .../dev/acpica/components/utilities/utpredef.c | 2 +- .../dev/acpica/components/utilities/utresdecode.c | 2 +- .../dev/acpica/components/utilities/utresrc.c | 2 +- .../dev/acpica/components/utilities/utstate.c | 2 +- .../dev/acpica/components/utilities/utstring.c | 2 +- .../dev/acpica/components/utilities/utstrsuppt.c | 2 +- .../dev/acpica/components/utilities/utstrtoul64.c | 2 +- .../dev/acpica/components/utilities/uttrack.c | 2 +- .../dev/acpica/components/utilities/utuuid.c | 2 +- .../dev/acpica/components/utilities/utxface.c | 2 +- .../dev/acpica/components/utilities/utxferror.c | 2 +- .../dev/acpica/components/utilities/utxfinit.c | 2 +- .../dev/acpica/components/utilities/utxfmutex.c | 2 +- sys/contrib/dev/acpica/include/acapps.h | 4 +- sys/contrib/dev/acpica/include/acbuffer.h | 2 +- sys/contrib/dev/acpica/include/acclib.h | 2 +- sys/contrib/dev/acpica/include/accommon.h | 2 +- sys/contrib/dev/acpica/include/acconfig.h | 2 +- sys/contrib/dev/acpica/include/acconvert.h | 2 +- sys/contrib/dev/acpica/include/acdebug.h | 2 +- sys/contrib/dev/acpica/include/acdisasm.h | 29 +- sys/contrib/dev/acpica/include/acdispat.h | 2 +- sys/contrib/dev/acpica/include/acevents.h | 9 +- sys/contrib/dev/acpica/include/acexcep.h | 2 +- sys/contrib/dev/acpica/include/acglobal.h | 2 +- sys/contrib/dev/acpica/include/achware.h | 2 +- sys/contrib/dev/acpica/include/acinterp.h | 2 +- sys/contrib/dev/acpica/include/aclocal.h | 2 +- sys/contrib/dev/acpica/include/acmacros.h | 2 +- sys/contrib/dev/acpica/include/acnames.h | 2 +- sys/contrib/dev/acpica/include/acnamesp.h | 2 +- sys/contrib/dev/acpica/include/acobject.h | 3 +- sys/contrib/dev/acpica/include/acopcode.h | 2 +- sys/contrib/dev/acpica/include/acoutput.h | 2 +- sys/contrib/dev/acpica/include/acparser.h | 2 +- sys/contrib/dev/acpica/include/acpi.h | 2 +- sys/contrib/dev/acpica/include/acpiosxf.h | 2 +- sys/contrib/dev/acpica/include/acpixf.h | 12 +- sys/contrib/dev/acpica/include/acpredef.h | 2 +- sys/contrib/dev/acpica/include/acresrc.h | 2 +- sys/contrib/dev/acpica/include/acrestyp.h | 2 +- sys/contrib/dev/acpica/include/acstruct.h | 2 +- sys/contrib/dev/acpica/include/actables.h | 7 +- sys/contrib/dev/acpica/include/actbinfo.h | 19 +- sys/contrib/dev/acpica/include/actbl.h | 2 +- sys/contrib/dev/acpica/include/actbl1.h | 35 +- sys/contrib/dev/acpica/include/actbl2.h | 316 ++++++++++++---- sys/contrib/dev/acpica/include/actbl3.h | 2 +- sys/contrib/dev/acpica/include/actypes.h | 36 +- sys/contrib/dev/acpica/include/acutils.h | 2 +- sys/contrib/dev/acpica/include/acuuid.h | 2 +- sys/contrib/dev/acpica/include/amlcode.h | 2 +- sys/contrib/dev/acpica/include/amlresrc.h | 2 +- sys/contrib/dev/acpica/include/platform/acenv.h | 2 +- sys/contrib/dev/acpica/include/platform/acenvex.h | 2 +- .../dev/acpica/include/platform/acfreebsd.h | 6 +- sys/contrib/dev/acpica/include/platform/acgcc.h | 2 +- sys/contrib/dev/acpica/include/platform/acgccex.h | 2 +- .../acpica/os_specific/service_layers/osunixxf.c | 2 +- 357 files changed, 2760 insertions(+), 771 deletions(-) diff --git a/sys/contrib/dev/acpica/changes.txt b/sys/contrib/dev/acpica/changes.txt index ad2323971aea..cf3c21898c51 100644 --- a/sys/contrib/dev/acpica/changes.txt +++ b/sys/contrib/dev/acpica/changes.txt @@ -1,3 +1,129 @@ +---------------------------------------- +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: diff --git a/sys/contrib/dev/acpica/common/acfileio.c b/sys/contrib/dev/acpica/common/acfileio.c index b93b14d3e654..ca1e9199f3e3 100644 --- a/sys/contrib/dev/acpica/common/acfileio.c +++ b/sys/contrib/dev/acpica/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/sys/contrib/dev/acpica/common/acgetline.c b/sys/contrib/dev/acpica/common/acgetline.c index 1c00f33e1775..7ad10510168e 100644 --- a/sys/contrib/dev/acpica/common/acgetline.c +++ b/sys/contrib/dev/acpica/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/sys/contrib/dev/acpica/common/adfile.c b/sys/contrib/dev/acpica/common/adfile.c index 61df767eb690..a4639e30e4ac 100644 --- a/sys/contrib/dev/acpica/common/adfile.c +++ b/sys/contrib/dev/acpica/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/sys/contrib/dev/acpica/common/adisasm.c b/sys/contrib/dev/acpica/common/adisasm.c index 40ca45dc7bfd..c45b609d4f3f 100644 --- a/sys/contrib/dev/acpica/common/adisasm.c +++ b/sys/contrib/dev/acpica/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/sys/contrib/dev/acpica/common/adwalk.c b/sys/contrib/dev/acpica/common/adwalk.c index 133a4d98bb26..44b3485a21ba 100644 --- a/sys/contrib/dev/acpica/common/adwalk.c +++ b/sys/contrib/dev/acpica/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/sys/contrib/dev/acpica/common/ahids.c b/sys/contrib/dev/acpica/common/ahids.c index 35d17513a57b..7c1aabdf8b89 100644 --- a/sys/contrib/dev/acpica/common/ahids.c +++ b/sys/contrib/dev/acpica/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/sys/contrib/dev/acpica/common/ahpredef.c b/sys/contrib/dev/acpica/common/ahpredef.c index 89f8a784efd3..afad65543194 100644 --- a/sys/contrib/dev/acpica/common/ahpredef.c +++ b/sys/contrib/dev/acpica/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/sys/contrib/dev/acpica/common/ahtable.c b/sys/contrib/dev/acpica/common/ahtable.c index d0eb397126f2..227fee2b5132 100644 --- a/sys/contrib/dev/acpica/common/ahtable.c +++ b/sys/contrib/dev/acpica/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/sys/contrib/dev/acpica/common/ahuuids.c b/sys/contrib/dev/acpica/common/ahuuids.c index 73585e81c4da..7378a8555bb0 100644 --- a/sys/contrib/dev/acpica/common/ahuuids.c +++ b/sys/contrib/dev/acpica/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/sys/contrib/dev/acpica/common/cmfsize.c b/sys/contrib/dev/acpica/common/cmfsize.c index eb419a94f9af..2a0b907bae2f 100644 --- a/sys/contrib/dev/acpica/common/cmfsize.c +++ b/sys/contrib/dev/acpica/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/sys/contrib/dev/acpica/common/dmextern.c b/sys/contrib/dev/acpica/common/dmextern.c index df6de46a2a4f..b9293282a24e 100644 --- a/sys/contrib/dev/acpica/common/dmextern.c +++ b/sys/contrib/dev/acpica/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/sys/contrib/dev/acpica/common/dmrestag.c b/sys/contrib/dev/acpica/common/dmrestag.c index a430a6d7a1c7..e26f3d092a3c 100644 --- a/sys/contrib/dev/acpica/common/dmrestag.c +++ b/sys/contrib/dev/acpica/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/sys/contrib/dev/acpica/common/dmswitch.c b/sys/contrib/dev/acpica/common/dmswitch.c index c1a00333204d..9cad863b6c03 100644 --- a/sys/contrib/dev/acpica/common/dmswitch.c +++ b/sys/contrib/dev/acpica/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/sys/contrib/dev/acpica/common/dmtable.c b/sys/contrib/dev/acpica/common/dmtable.c index 5e3f2ef748da..78c75ab803f8 100644 --- a/sys/contrib/dev/acpica/common/dmtable.c +++ b/sys/contrib/dev/acpica/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"; + } *** 8853 LINES SKIPPED ***