git: 58308fadece2 - main - Import ACPICA 20250404
- Reply: Jessica Clarke : "Re: git: 58308fadece2 - main - Import ACPICA 20250404"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 11 Apr 2025 03:41:29 UTC
The branch main has been updated by jkim: URL: https://cgit.FreeBSD.org/src/commit/?id=58308fadece25ae4c12bd2f4dce3d73d9c23be43 commit 58308fadece25ae4c12bd2f4dce3d73d9c23be43 Author: Jung-uk Kim <jkim@FreeBSD.org> AuthorDate: 2025-04-10 03:51:28 +0000 Commit: Jung-uk Kim <jkim@FreeBSD.org> CommitDate: 2025-04-11 03:40:07 +0000 Import ACPICA 20250404 (cherry picked from commit 97a7606d897edfa3089cb04eea70096a1f9cf734) --- sys/contrib/dev/acpica/changes.txt | 16 + sys/contrib/dev/acpica/common/acfileio.c | 2 +- sys/contrib/dev/acpica/common/acgetline.c | 2 +- sys/contrib/dev/acpica/common/adfile.c | 2 +- sys/contrib/dev/acpica/common/adisasm.c | 4 +- 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 | 4 +- 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 | 4 +- sys/contrib/dev/acpica/common/dmswitch.c | 2 +- sys/contrib/dev/acpica/common/dmtable.c | 55 ++- sys/contrib/dev/acpica/common/dmtables.c | 2 +- sys/contrib/dev/acpica/common/dmtbdump.c | 2 +- sys/contrib/dev/acpica/common/dmtbdump1.c | 235 +++++++++- sys/contrib/dev/acpica/common/dmtbdump2.c | 182 +++++++- sys/contrib/dev/acpica/common/dmtbdump3.c | 2 +- sys/contrib/dev/acpica/common/dmtbinfo.c | 2 +- sys/contrib/dev/acpica/common/dmtbinfo1.c | 290 +++++++++++- sys/contrib/dev/acpica/common/dmtbinfo2.c | 126 ++++- sys/contrib/dev/acpica/common/dmtbinfo3.c | 2 +- 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 | 5 +- sys/contrib/dev/acpica/compiler/aslcodegen.c | 2 +- sys/contrib/dev/acpica/compiler/aslcompile.c | 2 +- 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 | 2 +- sys/contrib/dev/acpica/compiler/aslexternal.c | 2 +- sys/contrib/dev/acpica/compiler/aslfileio.c | 2 +- sys/contrib/dev/acpica/compiler/aslfiles.c | 2 +- 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 | 2 +- sys/contrib/dev/acpica/compiler/aslmap.c | 2 +- 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 | 2 +- sys/contrib/dev/acpica/compiler/aslmessages.h | 2 +- sys/contrib/dev/acpica/compiler/aslmethod.c | 8 +- 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 | 2 +- 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 | 2 +- sys/contrib/dev/acpica/compiler/aslprintf.c | 6 +- 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 | 2 +- sys/contrib/dev/acpica/compiler/aslstartup.c | 2 +- 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 | 2 +- sys/contrib/dev/acpica/compiler/aslutils.c | 2 +- sys/contrib/dev/acpica/compiler/asluuid.c | 2 +- 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 | 17 +- 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 | 2 +- sys/contrib/dev/acpica/compiler/dtio.c | 8 +- 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 | 2 +- sys/contrib/dev/acpica/compiler/dttable1.c | 517 ++++++++++++++++++++- sys/contrib/dev/acpica/compiler/dttable2.c | 53 ++- sys/contrib/dev/acpica/compiler/dttemplate.c | 2 +- sys/contrib/dev/acpica/compiler/dttemplate.h | 267 ++++++++++- sys/contrib/dev/acpica/compiler/dtutils.c | 21 +- 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 | 4 +- .../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 | 2 +- .../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 | 2 +- .../dev/acpica/components/dispatcher/dspkginit.c | 2 +- .../dev/acpica/components/dispatcher/dsutils.c | 2 +- .../dev/acpica/components/dispatcher/dswexec.c | 2 +- .../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 | 2 +- sys/contrib/dev/acpica/components/events/evmisc.c | 2 +- .../dev/acpica/components/events/evregion.c | 2 +- .../dev/acpica/components/events/evrgnini.c | 2 +- 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 | 2 +- .../dev/acpica/components/executer/exconvrt.c | 4 +- .../dev/acpica/components/executer/excreate.c | 2 +- .../dev/acpica/components/executer/exdebug.c | 2 +- .../dev/acpica/components/executer/exdump.c | 2 +- .../dev/acpica/components/executer/exfield.c | 2 +- .../dev/acpica/components/executer/exfldio.c | 2 +- .../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 | 2 +- .../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 | 2 +- .../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 | 8 +- .../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 | 2 +- .../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 | 2 +- sys/contrib/dev/acpica/components/hardware/hwgpe.c | 2 +- sys/contrib/dev/acpica/components/hardware/hwpci.c | 2 +- .../dev/acpica/components/hardware/hwregs.c | 2 +- .../dev/acpica/components/hardware/hwsleep.c | 2 +- .../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 | 2 +- .../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 | 4 +- .../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 | 4 +- .../dev/acpica/components/namespace/nssearch.c | 2 +- .../dev/acpica/components/namespace/nsutils.c | 2 +- .../dev/acpica/components/namespace/nswalk.c | 2 +- .../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 | 2 +- .../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 | 16 +- .../dev/acpica/components/resources/rscalc.c | 17 +- .../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 | 11 +- .../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 | 2 +- sys/contrib/dev/acpica/components/tables/tbfadt.c | 2 +- sys/contrib/dev/acpica/components/tables/tbfind.c | 6 +- .../dev/acpica/components/tables/tbinstal.c | 2 +- sys/contrib/dev/acpica/components/tables/tbprint.c | 2 +- sys/contrib/dev/acpica/components/tables/tbutils.c | 2 +- sys/contrib/dev/acpica/components/tables/tbxface.c | 2 +- .../dev/acpica/components/tables/tbxfload.c | 2 +- .../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 | 6 +- .../dev/acpica/components/utilities/utcksum.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 | 4 +- .../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 | 4 +- .../dev/acpica/components/utilities/utobject.c | 2 +- .../dev/acpica/components/utilities/utosi.c | 2 +- .../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 | 13 +- .../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 | 4 +- sys/contrib/dev/acpica/include/acdisasm.h | 48 +- sys/contrib/dev/acpica/include/acdispat.h | 2 +- sys/contrib/dev/acpica/include/acevents.h | 2 +- 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 | 6 +- 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 | 2 +- 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 | 4 +- 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 | 2 +- sys/contrib/dev/acpica/include/actbinfo.h | 28 +- sys/contrib/dev/acpica/include/actbl.h | 20 +- sys/contrib/dev/acpica/include/actbl1.h | 35 +- sys/contrib/dev/acpica/include/actbl2.h | 385 ++++++++++++++- sys/contrib/dev/acpica/include/actbl3.h | 4 +- sys/contrib/dev/acpica/include/actypes.h | 10 +- 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 | 9 +- sys/contrib/dev/acpica/include/platform/acenv.h | 2 +- sys/contrib/dev/acpica/include/platform/acenvex.h | 2 +- .../dev/acpica/include/platform/acfreebsd.h | 2 +- sys/contrib/dev/acpica/include/platform/acgcc.h | 10 +- sys/contrib/dev/acpica/include/platform/acgccex.h | 2 +- .../acpica/os_specific/service_layers/osgendbg.c | 2 +- .../acpica/os_specific/service_layers/osunixxf.c | 2 +- 359 files changed, 2658 insertions(+), 458 deletions(-) diff --git a/sys/contrib/dev/acpica/changes.txt b/sys/contrib/dev/acpica/changes.txt index 5130ba82057d..435540b254f1 100644 --- a/sys/contrib/dev/acpica/changes.txt +++ b/sys/contrib/dev/acpica/changes.txt @@ -1,3 +1,19 @@ +---------------------------------------- +4 April 2025. Summary of changes for version 20250404: + +Major changes: + +Update all the copyright continuation year to 2025 in the license header of all files + +Add complete support for 3 new ACPI tables ? MRRM,ERDT and RIMT (Tony Luck & V L Sunil) + +Add a license file to the project which is a great improvement (Dionna Glaze) + +Update DMAR and TPM2 tables to support their latest versions (Alexey Neyman and Stuart Yoder) + +A few fixes including local cache allocation, FFixedHW Region, attribute packing, string vs. non-string char array, vsnprintf()etc. along with some comments, spelling errors and code alignment (multiple awesome contributors) + + ---------------------------------------- 12 December 2024. Summary of changes for version 20241212: diff --git a/sys/contrib/dev/acpica/common/acfileio.c b/sys/contrib/dev/acpica/common/acfileio.c index c8666a18384b..19274cb4bdd3 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 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp. * All rights reserved. * * 2. License diff --git a/sys/contrib/dev/acpica/common/acgetline.c b/sys/contrib/dev/acpica/common/acgetline.c index 6aa66412722f..2793f26077bb 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 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, 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 54c88ce149dc..f87b329d918d 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 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, 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 c329093901f7..96cd6c7f5d3c 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 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp. * All rights reserved. * * 2. License @@ -458,7 +458,7 @@ AdDisassembleOneTable ( */ if (AcpiGbl_CaptureComments) { - strncpy (Table->Signature, AcpiGbl_TableSig, ACPI_NAMESEG_SIZE); + memcpy (Table->Signature, AcpiGbl_TableSig, ACPI_NAMESEG_SIZE); } #endif diff --git a/sys/contrib/dev/acpica/common/adwalk.c b/sys/contrib/dev/acpica/common/adwalk.c index bb6f7e21c08a..b7484315fe51 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 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, 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 a50a4d51a2a3..07b69b45c641 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 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, 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 e1e71b9c0c4d..e6c3f2758760 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 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, 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 7a95e5f3198d..898b2d09f609 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 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp. * All rights reserved. * * 2. License @@ -219,6 +219,7 @@ const AH_TABLE AcpiGbl_SupportedTables[] = {ACPI_SIG_DSDT, "Differentiated System Description Table (AML table)"}, {ACPI_SIG_ECDT, "Embedded Controller Boot Resources Table"}, {ACPI_SIG_EINJ, "Error Injection Table"}, + {ACPI_SIG_ERDT, "Enhanced Resource Director Technology Table"}, {ACPI_SIG_ERST, "Error Record Serialization Table"}, {ACPI_SIG_FACS, "Firmware ACPI Control Structure"}, {ACPI_SIG_FADT, "Fixed ACPI Description Table (FADT)"}, @@ -235,6 +236,7 @@ const AH_TABLE AcpiGbl_SupportedTables[] = {ACPI_SIG_MCHI, "Management Controller Host Interface Table"}, {ACPI_SIG_MPAM, "Memory System Resource Partitioning and Monitoring Table"}, {ACPI_SIG_MPST, "Memory Power State Table"}, + {ACPI_SIG_MRRM, "Memory Range and Region Mapping Table"}, {ACPI_SIG_MSCT, "Maximum System Characteristics Table"}, {ACPI_SIG_MSDM, "Microsoft Data Management Table"}, {ACPI_SIG_NFIT, "NVDIMM Firmware Interface Table"}, diff --git a/sys/contrib/dev/acpica/common/ahuuids.c b/sys/contrib/dev/acpica/common/ahuuids.c index cb29f05f1059..f7056fdf9363 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 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, 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 8b4b00909714..c6cedf9a0866 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 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, 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 3c5ba89a762f..d2eeffdfe02e 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 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, 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 aca96acffcf4..8c7cc4b9ef7c 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 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp. * All rights reserved. * * 2. License @@ -894,7 +894,7 @@ static void AcpiDmUpdateResourceName ( ACPI_NAMESPACE_NODE *ResourceNode) { - char Name[ACPI_NAMESEG_SIZE]; + char Name[ACPI_NAMESEG_SIZE] ACPI_NONSTRING; /* Ignore if a unique name has already been assigned */ diff --git a/sys/contrib/dev/acpica/common/dmswitch.c b/sys/contrib/dev/acpica/common/dmswitch.c index a2f20bab281a..8d5ca2e016a7 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 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, 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 c40abb20703a..fcff97a304ae 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 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp. * All rights reserved. * * 2. License @@ -272,6 +272,7 @@ static const char *AcpiDmDmarSubnames[] = "Remapping Hardware Static Affinity", "ACPI Namespace Device Declaration", "SoC Integrated Address Translation Cache", + "SoC Integrated Device Property", "Unknown Subtable Type" /* Reserved */ }; @@ -312,6 +313,22 @@ static const char *AcpiDmEinjInstructions[] = "Unknown Instruction" }; +static const char *AcpiDmErdtSubnames[] = +{ + "RMDD", + "CACD", + "DACD", + "CMRC", + "MMRC", + "MARC", + "CARC", + "CMRD", + "IBRD", + "IBAD", + "CARD", + "RESERVED" +}; + static const char *AcpiDmErstActions[] = { "Begin Write Operation", @@ -660,6 +677,7 @@ const ACPI_DMTABLE_DATA AcpiDmTableData[] = {ACPI_SIG_DRTM, NULL, AcpiDmDumpDrtm, DtCompileDrtm, TemplateDrtm}, {ACPI_SIG_ECDT, AcpiDmTableInfoEcdt, NULL, NULL, TemplateEcdt}, {ACPI_SIG_EINJ, NULL, AcpiDmDumpEinj, DtCompileEinj, TemplateEinj}, + {ACPI_SIG_ERDT, NULL, AcpiDmDumpErdt, DtCompileErdt, TemplateErdt}, {ACPI_SIG_ERST, NULL, AcpiDmDumpErst, DtCompileErst, TemplateErst}, {ACPI_SIG_FADT, NULL, AcpiDmDumpFadt, DtCompileFadt, TemplateFadt}, {ACPI_SIG_FPDT, NULL, AcpiDmDumpFpdt, DtCompileFpdt, TemplateFpdt}, @@ -675,6 +693,7 @@ const ACPI_DMTABLE_DATA AcpiDmTableData[] = {ACPI_SIG_MCHI, AcpiDmTableInfoMchi, NULL, NULL, TemplateMchi}, {ACPI_SIG_MPAM, NULL, AcpiDmDumpMpam, DtCompileMpam, TemplateMpam}, {ACPI_SIG_MPST, AcpiDmTableInfoMpst, AcpiDmDumpMpst, DtCompileMpst, TemplateMpst}, + {ACPI_SIG_MRRM, NULL, AcpiDmDumpMrrm, DtCompileMrrm, TemplateMrrm}, {ACPI_SIG_MSCT, NULL, AcpiDmDumpMsct, DtCompileMsct, TemplateMsct}, {ACPI_SIG_MSDM, NULL, AcpiDmDumpSlic, DtCompileSlic, TemplateMsdm}, {ACPI_SIG_NFIT, AcpiDmTableInfoNfit, AcpiDmDumpNfit, DtCompileNfit, TemplateNfit}, @@ -689,6 +708,7 @@ const ACPI_DMTABLE_DATA AcpiDmTableData[] = {ACPI_SIG_RAS2, AcpiDmTableInfoRas2, AcpiDmDumpRas2, DtCompileRas2, TemplateRas2}, {ACPI_SIG_RGRT, NULL, AcpiDmDumpRgrt, DtCompileRgrt, TemplateRgrt}, {ACPI_SIG_RHCT, NULL, AcpiDmDumpRhct, DtCompileRhct, TemplateRhct}, + {ACPI_SIG_RIMT, NULL, AcpiDmDumpRimt, DtCompileRimt, TemplateRimt}, {ACPI_SIG_RSDT, NULL, AcpiDmDumpRsdt, DtCompileRsdt, TemplateRsdt}, {ACPI_SIG_S3PT, NULL, NULL, NULL, TemplateS3pt}, {ACPI_SIG_SBST, AcpiDmTableInfoSbst, NULL, NULL, TemplateSbst}, @@ -1132,6 +1152,7 @@ AcpiDmDumpTable ( case ACPI_DMT_ASPT: case ACPI_DMT_UINT16: case ACPI_DMT_DMAR: + case ACPI_DMT_ERDT: case ACPI_DMT_HEST: case ACPI_DMT_HMAT: case ACPI_DMT_NFIT: @@ -1185,6 +1206,11 @@ AcpiDmDumpTable ( ByteLength = 10; break; + case ACPI_DMT_BUF11: + + ByteLength = 11; + break; + case ACPI_DMT_BUF12: ByteLength = 12; @@ -1201,6 +1227,16 @@ AcpiDmDumpTable ( ByteLength = 18; break; + case ACPI_DMT_BUF24: + + ByteLength = 24; + break; + + case ACPI_DMT_BUF26: + + ByteLength = 26; + break; + case ACPI_DMT_BUF32: ByteLength = 32; @@ -1419,9 +1455,12 @@ AcpiDmDumpTable ( case ACPI_DMT_BUF7: case ACPI_DMT_BUF10: + case ACPI_DMT_BUF11: case ACPI_DMT_BUF12: case ACPI_DMT_BUF16: case ACPI_DMT_BUF18: + case ACPI_DMT_BUF24: + case ACPI_DMT_BUF26: case ACPI_DMT_BUF32: case ACPI_DMT_BUF112: case ACPI_DMT_BUF128: @@ -1767,6 +1806,20 @@ AcpiDmDumpTable ( AcpiDmErstActions[Temp8]); break; + case ACPI_DMT_ERDT: + + /* ERDT subtable types */ + + Temp16 = *Target; + if (Temp16 > ACPI_ERDT_TYPE_RESERVED) + { + Temp16 = ACPI_ERDT_TYPE_RESERVED; + } + + AcpiOsPrintf (UINT8_FORMAT, *Target, + AcpiDmErdtSubnames[Temp16]); + break; + case ACPI_DMT_ERSTINST: /* ERST Instruction types */ diff --git a/sys/contrib/dev/acpica/common/dmtables.c b/sys/contrib/dev/acpica/common/dmtables.c index 227d6ae335ed..c72f6451154c 100644 --- a/sys/contrib/dev/acpica/common/dmtables.c +++ b/sys/contrib/dev/acpica/common/dmtables.c @@ -8,7 +8,7 @@ * * 1. Copyright Notice * - * Some or all of this work - Copyright (c) 1999 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp. * All rights reserved. * * 2. License diff --git a/sys/contrib/dev/acpica/common/dmtbdump.c b/sys/contrib/dev/acpica/common/dmtbdump.c index 47173d8e31fc..aa8b5aa76892 100644 --- a/sys/contrib/dev/acpica/common/dmtbdump.c +++ b/sys/contrib/dev/acpica/common/dmtbdump.c @@ -8,7 +8,7 @@ * * 1. Copyright Notice * - * Some or all of this work - Copyright (c) 1999 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp. * All rights reserved. * * 2. License diff --git a/sys/contrib/dev/acpica/common/dmtbdump1.c b/sys/contrib/dev/acpica/common/dmtbdump1.c index edf366039edb..3453ed479a22 100644 --- a/sys/contrib/dev/acpica/common/dmtbdump1.c +++ b/sys/contrib/dev/acpica/common/dmtbdump1.c @@ -8,7 +8,7 @@ * * 1. Copyright Notice * - * Some or all of this work - Copyright (c) 1999 - 2024, Intel Corp. + * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp. * All rights reserved. * * 2. License @@ -1480,6 +1480,12 @@ AcpiDmDumpDmar ( ScopeOffset = sizeof (ACPI_DMAR_SATC); break; + case ACPI_DMAR_TYPE_SIDP: + + InfoTable = AcpiDmTableInfoDmar6; + ScopeOffset = sizeof (ACPI_DMAR_SIDP); + break; + default: AcpiOsPrintf ("\n**** Unknown DMAR subtable type 0x%X\n\n", @@ -1717,6 +1723,233 @@ AcpiDmDumpEinj ( } +/******************************************************************************* + * + * FUNCTION: AcpiDmDumpErdt + * + * PARAMETERS: Table - A ERDT table + * + * RETURN: None + * + * DESCRIPTION: Format the contents of a ERDT. This table type consists + * of an open-ended number of subtables. + * + ******************************************************************************/ + +void +AcpiDmDumpErdt ( + ACPI_TABLE_HEADER *Table) +{ + ACPI_STATUS Status; + ACPI_SUBTBL_HDR_16 *Subtable, *Subsubtable; + ACPI_ERDT_DACD_PATHS *ScopeTable; + UINT32 Offset = sizeof (ACPI_TABLE_ERDT); + UINT32 Suboffset; + UINT32 ScopeOffset; + UINT32 SubsubtableLength = 0; + ACPI_DMTABLE_INFO *InfoTable, *TrailEntries, *DacdEntries; + UINT32 NumTrailers = 0; + + /* Main table */ + + Status = AcpiDmDumpTable (Table->Length, 0, Table, 0, AcpiDmTableInfoErdt); + if (ACPI_FAILURE (Status)) + { + return; + } + + /* Subtables */ + Subtable = ACPI_ADD_PTR (ACPI_SUBTBL_HDR_16, Table, Offset); + while (Offset < Table->Length) + { + + /* Dump common header */ + + AcpiOsPrintf ("\n"); + Status = AcpiDmDumpTable (Table->Length, Offset, Subtable, + Subtable->Length, AcpiDmTableInfoErdtHdr); + if (ACPI_FAILURE (Status)) + { + return; + } + + AcpiOsPrintf ("\n"); + Status = AcpiDmDumpTable (Table->Length, Offset, Subtable, + Subtable->Length, AcpiDmTableInfoErdtRmdd); + if (ACPI_FAILURE (Status)) + { + return; + } + + /* Subtables of this RMDD table */ + + Suboffset = Offset + sizeof(ACPI_ERDT_RMDD); + Subsubtable = ACPI_ADD_PTR (ACPI_SUBTBL_HDR_16, Table, Suboffset); + while (Suboffset < Offset + Subtable->Length) + { + AcpiOsPrintf ("\n"); + + TrailEntries = NULL; + DacdEntries = NULL; + switch (Subsubtable->Type) + { + case ACPI_ERDT_TYPE_CACD: + InfoTable = AcpiDmTableInfoErdtCacd; + TrailEntries = AcpiDmTableInfoErdtCacdX2apic; + SubsubtableLength = sizeof(ACPI_ERDT_CACD); + break; + + case ACPI_ERDT_TYPE_DACD: + InfoTable = AcpiDmTableInfoErdtDacd; + DacdEntries = AcpiDmTableInfoErdtDacdScope; + SubsubtableLength = sizeof(ACPI_ERDT_DACD); + break; + + case ACPI_ERDT_TYPE_CMRC: + InfoTable = AcpiDmTableInfoErdtCmrc; + break; + + case ACPI_ERDT_TYPE_MMRC: + InfoTable = AcpiDmTableInfoErdtMmrc; + TrailEntries = AcpiDmTableInfoErdtMmrcCorrFactor; + SubsubtableLength = sizeof(ACPI_ERDT_MMRC); + break; + + case ACPI_ERDT_TYPE_MARC: + InfoTable = AcpiDmTableInfoErdtMarc; + break; + + case ACPI_ERDT_TYPE_CARC: + InfoTable = AcpiDmTableInfoErdtCarc; + break; + + case ACPI_ERDT_TYPE_CMRD: + InfoTable = AcpiDmTableInfoErdtCmrd; + break; + + case ACPI_ERDT_TYPE_IBRD: + InfoTable = AcpiDmTableInfoErdtIbrd; + TrailEntries = AcpiDmTableInfoErdtIbrdCorrFactor; + SubsubtableLength = sizeof(ACPI_ERDT_IBRD); + break; + + case ACPI_ERDT_TYPE_IBAD: + InfoTable = AcpiDmTableInfoErdtIbad; + break; + + case ACPI_ERDT_TYPE_CARD: + InfoTable = AcpiDmTableInfoErdtCard; + break; + + default: + AcpiOsPrintf ("\n**** Unknown RMDD subtable type 0x%X\n", + Subsubtable->Type); + + /* Attempt to continue */ + + if (!Subsubtable->Length) + { + AcpiOsPrintf ("Invalid zero length subtable\n"); + return; + } + goto NextSubsubtable; + } + + /* Dump subtable header */ + + Status = AcpiDmDumpTable (Table->Length, Suboffset, Subsubtable, + Subsubtable->Length, AcpiDmTableInfoErdtHdr); + if (ACPI_FAILURE (Status)) + { + return; + } + + /* Dump subtable body */ + + Status = AcpiDmDumpTable (Table->Length, Suboffset, Subsubtable, + Subsubtable->Length, InfoTable); + if (ACPI_FAILURE (Status)) + { + return; + } + + /* CACD, MMRC, and IBRD subtables have simple flex array at end */ + + if (TrailEntries) + { + NumTrailers = 0; + while (NumTrailers < Subsubtable->Length - SubsubtableLength) + { + + /* Dump one flex array element */ + + Status = AcpiDmDumpTable (Table->Length, Suboffset + + SubsubtableLength + NumTrailers, + ACPI_ADD_PTR (ACPI_SUBTBL_HDR_16, Subsubtable, + SubsubtableLength + NumTrailers), + sizeof(UINT32), TrailEntries); + if (ACPI_FAILURE (Status)) + { + return; + } + NumTrailers += sizeof(UINT32); + } + } + + /* DACD subtable has flex array of device agent structures */ + + if (DacdEntries) { + ScopeOffset = Suboffset + SubsubtableLength; + ScopeTable = ACPI_ADD_PTR (ACPI_ERDT_DACD_PATHS, + Subsubtable, SubsubtableLength); + while (ScopeOffset < Suboffset + Subsubtable->Length) + { + /* Dump one device agent structure */ + + AcpiOsPrintf ("\n"); + Status = AcpiDmDumpTable (Table->Length, ScopeOffset, + ScopeTable, ScopeTable->Header.Length, DacdEntries); + if (ACPI_FAILURE (Status)) + { + return; + } *** 7267 LINES SKIPPED ***