aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJung-uk Kim <jkim@FreeBSD.org>2026-05-11 21:41:03 +0000
committerJung-uk Kim <jkim@FreeBSD.org>2026-05-11 21:41:03 +0000
commit69ae37302ee98839857791a261546e19d078cdb8 (patch)
treea783420e7d05aca39140987cdcba343646f4cac9
parent5cab380e2a2644aaa920b93f1580a1cfc803a8de (diff)
-rw-r--r--changes.txt24
-rw-r--r--source/common/acfileio.c11
-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.c10
-rw-r--r--source/common/ahpredef.c2
-rw-r--r--source/common/ahtable.c3
-rw-r--r--source/common/ahuuids.c7
-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.c7
-rw-r--r--source/common/dmtables.c2
-rw-r--r--source/common/dmtbdump.c2
-rw-r--r--source/common/dmtbdump1.c111
-rw-r--r--source/common/dmtbdump2.c2
-rw-r--r--source/common/dmtbdump3.c2
-rw-r--r--source/common/dmtbinfo.c2
-rw-r--r--source/common/dmtbinfo1.c40
-rw-r--r--source/common/dmtbinfo2.c4
-rw-r--r--source/common/dmtbinfo3.c2
-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.c2
-rw-r--r--source/compiler/aslcodegen.c12
-rw-r--r--source/compiler/aslcompile.c2
-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.c2
-rw-r--r--source/compiler/aslexternal.c105
-rw-r--r--source/compiler/aslfileio.c2
-rw-r--r--source/compiler/aslfiles.c2
-rw-r--r--source/compiler/aslfold.c2
-rw-r--r--source/compiler/aslglobal.h3
-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.c4
-rw-r--r--source/compiler/asllookup.c2
-rw-r--r--source/compiler/aslmain.c2
-rw-r--r--source/compiler/aslmap.c4
-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.c5
-rw-r--r--source/compiler/aslmessages.h3
-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.c10
-rw-r--r--source/compiler/asloperands.c32
-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.y2
-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.y2
-rw-r--r--source/compiler/aslstartup.c2
-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.y2
-rw-r--r--source/compiler/aslutils.c2
-rw-r--r--source/compiler/asluuid.c2
-rw-r--r--source/compiler/aslwalks.c17
-rw-r--r--source/compiler/aslxref.c14
-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.c28
-rw-r--r--source/compiler/dtcompiler.h7
-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.c2
-rw-r--r--source/compiler/dtio.c8
-rw-r--r--source/compiler/dtparser.l2
-rw-r--r--source/compiler/dtparser.y2
-rw-r--r--source/compiler/dtsubtable.c9
-rw-r--r--source/compiler/dttable.c2
-rw-r--r--source/compiler/dttable1.c133
-rw-r--r--source/compiler/dttable2.c17
-rw-r--r--source/compiler/dttemplate.c2
-rw-r--r--source/compiler/dttemplate.h57
-rw-r--r--source/compiler/dtutils.c2
-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.c19
-rw-r--r--source/components/disassembler/dmresrc.c23
-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.c16
-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.c43
-rw-r--r--source/components/dispatcher/dsmthdat.c2
-rw-r--r--source/components/dispatcher/dsobject.c2
-rw-r--r--source/components/dispatcher/dsopcode.c2
-rw-r--r--source/components/dispatcher/dspkginit.c2
-rw-r--r--source/components/dispatcher/dsutils.c2
-rw-r--r--source/components/dispatcher/dswexec.c2
-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.c14
-rw-r--r--source/components/events/evmisc.c2
-rw-r--r--source/components/events/evregion.c2
-rw-r--r--source/components/events/evrgnini.c2
-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.c29
-rw-r--r--source/components/executer/exconvrt.c2
-rw-r--r--source/components/executer/excreate.c2
-rw-r--r--source/components/executer/exdebug.c2
-rw-r--r--source/components/executer/exdump.c2
-rw-r--r--source/components/executer/exfield.c2
-rw-r--r--source/components/executer/exfldio.c2
-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.c2
-rw-r--r--source/components/executer/exoparg2.c2
-rw-r--r--source/components/executer/exoparg3.c12
-rw-r--r--source/components/executer/exoparg6.c2
-rw-r--r--source/components/executer/exprep.c2
-rw-r--r--source/components/executer/exregion.c2
-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.c2
-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.c2
-rw-r--r--source/components/hardware/hwgpe.c2
-rw-r--r--source/components/hardware/hwpci.c2
-rw-r--r--source/components/hardware/hwregs.c2
-rw-r--r--source/components/hardware/hwsleep.c2
-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.c2
-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.c9
-rw-r--r--source/components/namespace/nsobject.c9
-rw-r--r--source/components/namespace/nsparse.c2
-rw-r--r--source/components/namespace/nspredef.c2
-rw-r--r--source/components/namespace/nsprepkg.c9
-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.c2
-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.c136
-rw-r--r--source/components/parser/psloop.c5
-rw-r--r--source/components/parser/psobject.c2
-rw-r--r--source/components/parser/psopcode.c2
-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.c4
-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.c9
-rw-r--r--source/components/resources/rsutils.c2
-rw-r--r--source/components/resources/rsxface.c2
-rw-r--r--source/components/tables/tbdata.c2
-rw-r--r--source/components/tables/tbfadt.c5
-rw-r--r--source/components/tables/tbfind.c2
-rw-r--r--source/components/tables/tbinstal.c2
-rw-r--r--source/components/tables/tbprint.c2
-rw-r--r--source/components/tables/tbutils.c2
-rw-r--r--source/components/tables/tbxface.c2
-rw-r--r--source/components/tables/tbxfload.c2
-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/utcksum.c2
-rw-r--r--source/components/utilities/utclib.c2
-rw-r--r--source/components/utilities/utcopy.c13
-rw-r--r--source/components/utilities/utdebug.c2
-rw-r--r--source/components/utilities/utdecode.c2
-rw-r--r--source/components/utilities/utdelete.c2
-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.c2
-rw-r--r--source/components/utilities/utownerid.c2
-rw-r--r--source/components/utilities/utpredef.c2
-rw-r--r--source/components/utilities/utresdecode.c2
-rw-r--r--source/components/utilities/utresrc.c34
-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.h11
-rw-r--r--source/include/acdispat.h2
-rw-r--r--source/include/acevents.h2
-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.h3
-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.h2
-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.h4
-rw-r--r--source/include/acpredef.h6
-rw-r--r--source/include/acresrc.h2
-rw-r--r--source/include/acrestyp.h3
-rw-r--r--source/include/acstruct.h2
-rw-r--r--source/include/actables.h2
-rw-r--r--source/include/actbinfo.h10
-rw-r--r--source/include/actbl.h2
-rw-r--r--source/include/actbl1.h289
-rw-r--r--source/include/actbl2.h2
-rw-r--r--source/include/actbl3.h2
-rw-r--r--source/include/actypes.h2
-rw-r--r--source/include/acutils.h2
-rw-r--r--source/include/acuuid.h7
-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/acdragonfly.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.h2
-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.h3
-rw-r--r--source/include/platform/acwin64.h2
-rw-r--r--source/include/platform/aczephyr.h2
-rw-r--r--source/os_specific/service_layers/osbsdtbl.c2
-rw-r--r--source/os_specific/service_layers/osgendbg.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/os_specific/service_layers/oszephyr.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.c2
-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.c18
-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.c146
-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
430 files changed, 1840 insertions, 488 deletions
diff --git a/changes.txt b/changes.txt
index 2c13c692d194..9c1952e49d50 100644
--- a/changes.txt
+++ b/changes.txt
@@ -1,4 +1,28 @@
----------------------------------------
+8 April 2026. Summary of changes for version 20260804:
+
+Major changes:
+
+• ACPI Table Enhancements:
+Updated IORT and MADT template compilations to add new IWB and GICv5 translator/router/ITS entries. Introduced full support for the new DTPR table, including compiler and disassembler handling, template fixes, and register structure refinements. — Jose Marinho and Michal Camacho Romero
+
+• Expanded IDs, GUIDs, and Methods:
+Added Framework Computer Hardware IDs, modern standby _DSM GUIDs, and TPM2 start methods. Updated _DSM Arg3 formatting and _CPC handling to align with newer ACPI specifications and avoid Linux compatibility warnings. — Daniel Schaefer and Saket Dumbre
+
+• Compiler, Disassembler, and Tooling Improvements:
+Enhanced the ASL compiler and disassembler with External() deduplication, alias node support, improved validation of malformed inputs, and comma-separated Package output. Updated acpisrc to recognize missing structures and improved parse tree walk termination logic. — ikaros and Pawel Chmielewski
+
+• Security and Stability Fixes:
+Fixed multiple critical issues, including heap-buffer-overflows, use-after-free, NULL pointer dereferences, integer overflows, and out-of-bounds accesses across AML parsing, interpretation, and table handling code paths. — ikaros and Weiming Shi
+
+• Resource and Register Refactoring:
+Corrected I2C LVR resource descriptor handling and refactored TPR Base/Limit registers to use compatible bitmask representations, with additional validation and cleanup across DTPR-related code. — Akhil R and Michal Camacho Romero
+
+• General Cleanup and Build Fixes:
+Fixed a syntax error caused by a stray character, corrected spelling issues, improved comment alignment and formatting, updated dummy compiler metadata, and disabled excessive MSVC bitfield warnings (C4214) to improve build clarity. — Colin Ian King and Saket Dumbre
+
+
+----------------------------------------
12 December 2025. Summary of changes for version 20251212:
Major changes:
diff --git a/source/common/acfileio.c b/source/common/acfileio.c
index eb5327bf1d9c..be6ec7c8e45e 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -452,6 +452,15 @@ AcGetOneTableFromFile (
TableLength = TableHeader.Length;
}
+ /* Table length must be at least large enough to hold the header */
+
+ if (TableLength < HeaderLength)
+ {
+ fprintf (stderr, "Table length too small for header: 0x%.2X\n",
+ TableLength);
+ return (AE_BAD_HEADER);
+ }
+
/* Allocate a buffer for the entire table */
Table = AcpiOsAllocate ((ACPI_SIZE) TableLength);
diff --git a/source/common/acgetline.c b/source/common/acgetline.c
index 207f7aa07de7..f23aab0a555b 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/common/adfile.c b/source/common/adfile.c
index a5667af8cfea..e58278c1b7e4 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/common/adisasm.c b/source/common/adisasm.c
index dafc0d1e3a0f..771c007edbb4 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/common/adwalk.c b/source/common/adwalk.c
index d61b3235a0d6..0f169a89490b 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/common/ahids.c b/source/common/ahids.c
index 018d009bb0c5..d35a7439551e 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -202,6 +202,14 @@ const AH_DEVICE_ID AslDeviceIds[] =
{"CPLM3218", "Capella Micro CM3218x Ambient Light Sensor"},
{"DELLABCE", "Dell Airplane Mode Switch Driver"},
{"DLAC3002", "Qualcomm Atheros Bluetooth UART Transport"},
+ {"FRMW0001", "Framework I2C HID from EC (Laptop 13 Intel 11-13th Gen)"},
+ {"FRMW0002", "Framework PS2 Touchpad Emulation"},
+ {"FRMW0003", "Framework I2C HID from EC (Laptop 16 AMD Ryzen 7040)"},
+ {"FRMW0004", "Framework I2C HID from EC for keyboard media ikeys"},
+ {"FRMW0005", "Framework I2C HID from EC for ALS Sensor"},
+ {"FRMW0006", "Framework Desktop ARGB HID Interface (Chrome EC RGBKBD)"},
+ {"FRMWC004", "Framework EC Controller"},
+ {"FRMWC006", "Framework EC Sensor Hub"},
{"FTTH5506", "FocalTech 5506 Touch Controller"},
{"HAD0F28", "Intel HDMI Audio Driver"},
{"INBC0000", "GPIO Expander"},
diff --git a/source/common/ahpredef.c b/source/common/ahpredef.c
index 601650e6f935..2127816cb050 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/common/ahtable.c b/source/common/ahtable.c
index 46c6c3b381a5..f3f8bdf7444f 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -216,6 +216,7 @@ const AH_TABLE AcpiGbl_SupportedTables[] =
{ACPI_SIG_DBGP, "Debug Port Table"},
{ACPI_SIG_DMAR, "DMA Remapping Table"},
{ACPI_SIG_DRTM, "Dynamic Root of Trust for Measurement Table"},
+ {ACPI_SIG_DTPR, "DMA TXT Protection Ranges Table"},
{ACPI_SIG_DSDT, "Differentiated System Description Table (AML table)"},
{ACPI_SIG_ECDT, "Embedded Controller Boot Resources Table"},
{ACPI_SIG_EINJ, "Error Injection Table"},
diff --git a/source/common/ahuuids.c b/source/common/ahuuids.c
index 2986f737977c..88f2c057c48b 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -204,6 +204,11 @@ const AH_UUID Gbl_AcpiUuids[] =
{"Cache Properties", UUID_CACHE_PROPERTIES},
{"Physical Package Property", UUID_PHYSICAL_PROPERTY},
+ {"[Modern Standby]", NULL},
+ {"Modern Standby Microsoft", UUID_LPS0_MICROSOFT},
+ {"Modern Standby Intel", UUID_LPS0_INTEL},
+ {"Modern Standby AMD", UUID_LPS0_AMD},
+
{"[Miscellaneous]", NULL},
{"Platform-wide Capabilities", UUID_PLATFORM_CAPABILITIES},
{"Dynamic Enumeration", UUID_DYNAMIC_ENUMERATION},
diff --git a/source/common/cmfsize.c b/source/common/cmfsize.c
index 2c4c88988e95..12d6a514fe6f 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/common/dmextern.c b/source/common/dmextern.c
index 7821f0f867c2..d6961d7380c4 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/common/dmrestag.c b/source/common/dmrestag.c
index e1d8979c4476..84976d1fe262 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/common/dmswitch.c b/source/common/dmswitch.c
index 87dde14d4353..8e0a7755aaa2 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/common/dmtable.c b/source/common/dmtable.c
index 6eb0fd65758e..4d5e349a0293 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -568,6 +568,10 @@ static const char *AcpiDmTpm2Subnames[] =
"Reserved",
"Reserved",
"Command Response Buffer with ARM SMC",
+ "FIFO over I2C",
+ "Command Response Buffer with AMD Mailbox",
+ "Reserved",
+ "Command Response Buffer with ARM Framework-A",
"Unknown Subtable Type" /* Reserved */
};
@@ -700,6 +704,7 @@ const ACPI_DMTABLE_DATA AcpiDmTableData[] =
{ACPI_SIG_DBGP, AcpiDmTableInfoDbgp, NULL, NULL, TemplateDbgp},
{ACPI_SIG_DMAR, NULL, AcpiDmDumpDmar, DtCompileDmar, TemplateDmar},
{ACPI_SIG_DRTM, NULL, AcpiDmDumpDrtm, DtCompileDrtm, TemplateDrtm},
+ {ACPI_SIG_DTPR, NULL, AcpiDmDumpDtpr, DtCompileDtpr, TemplateDtpr},
{ACPI_SIG_ECDT, AcpiDmTableInfoEcdt, NULL, NULL, TemplateEcdt},
{ACPI_SIG_EINJ, NULL, AcpiDmDumpEinj, DtCompileEinj, TemplateEinj},
{ACPI_SIG_ERDT, NULL, AcpiDmDumpErdt, DtCompileErdt, TemplateErdt},
diff --git a/source/common/dmtables.c b/source/common/dmtables.c
index e0cc8ac5c02b..b6b5516a8df8 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/common/dmtbdump.c b/source/common/dmtbdump.c
index 2d81c11a47cf..97d53e548cc7 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/common/dmtbdump1.c b/source/common/dmtbdump1.c
index d0c5e8363eb4..fa83efe5b71b 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -1672,6 +1672,115 @@ AcpiDmDumpDrtm (
/*******************************************************************************
*
+ * FUNCTION: AcpiDmDumpDtpr
+ *
+ * PARAMETERS: Table - A DTPR table
+ *
+ * RETURN: None
+ *
+ * DESCRIPTION: Format the contents of a DTPR.
+ *
+ ******************************************************************************/
+
+void
+AcpiDmDumpDtpr (
+ ACPI_TABLE_HEADER *Table)
+{
+ ACPI_STATUS Status;
+ ACPI_TPR_ARRAY *TprArr;
+ ACPI_TPR_INSTANCE *TprInstance;
+ ACPI_TPR_AUX_SR *TprAuxSr;
+ ACPI_TPR_SERIALIZE_REQUEST *TprSerializeRequest;
+ UINT32 i = 0, j, InsCnt, TprRefCnt;
+ UINT32 Offset = sizeof(ACPI_TABLE_DTPR);
+
+ /* Main table */
+
+ Status = AcpiDmDumpTable (Table->Length, 0, Table, 0, AcpiDmTableInfoDtpr);
+ if (ACPI_FAILURE (Status))
+ {
+ return;
+ }
+
+ /* Subtables */
+
+ while (Offset < Table->Length)
+ {
+ InsCnt = ((ACPI_TABLE_DTPR*) Table)->InsCnt;
+
+ for (i = 0; i < InsCnt; i++)
+ {
+ TprInstance = ACPI_ADD_PTR(ACPI_TPR_INSTANCE, Table, Offset);
+ Status = AcpiDmDumpTable(Table->Length, Offset, TprInstance,
+ sizeof(ACPI_TPR_INSTANCE), AcpiDmTableInfoDtprInstance);
+ if (ACPI_FAILURE (Status))
+ {
+ return;
+ }
+
+ /* Each of the TPR instances must have the same number of TPRs*/
+ TprRefCnt = TprInstance->TprCnt;
+
+ Offset += sizeof(ACPI_TPR_INSTANCE);
+
+ if (TprInstance->TprCnt < 2)
+ {
+ AcpiOsPrintf("TPR Instance No.%d has invalid number of TPRs.\n"
+ "There should be at least 2 of them, but there is %d.",
+ i, TprInstance->TprCnt);
+ return;
+ }
+ else
+ {
+ if (TprInstance->TprCnt != TprRefCnt)
+ {
+ AcpiOsPrintf("Each of TPR instances should have equal\n"
+ "number of TPRs. TprInstance No.%d has %d TPRs"
+ ", while the reference TPR instance has %d.\n",
+ i, TprInstance->TprCnt, TprRefCnt);
+ return;
+ }
+ }
+
+ for (j = 0; j < TprInstance->TprCnt; j++)
+ {
+ TprArr = ACPI_ADD_PTR(ACPI_TPR_ARRAY, Table, Offset);
+ Status = AcpiDmDumpTable(Table->Length, Offset, TprArr,
+ sizeof(ACPI_TPR_ARRAY), AcpiDmTableInfoDtprArr);
+ if (ACPI_FAILURE (Status))
+ {
+ return;
+ }
+
+ Offset += sizeof(ACPI_TPR_ARRAY);
+ }
+ }
+
+ TprAuxSr = ACPI_ADD_PTR(ACPI_TPR_AUX_SR, Table, Offset);
+ Status = AcpiDmDumpTable(Table->Length, Offset, TprAuxSr,
+ sizeof(ACPI_TPR_AUX_SR), AcpiDmTableInfoDtprSerializeReq0);
+
+ Offset += sizeof(ACPI_TPR_AUX_SR);
+
+ for (i = 0; i < TprAuxSr->SrlCnt; i++)
+ {
+ TprSerializeRequest = ACPI_ADD_PTR(ACPI_TPR_SERIALIZE_REQUEST,
+ Table, Offset);
+ Status = AcpiDmDumpTable(Table->Length, Offset, TprSerializeRequest,
+ sizeof(ACPI_TPR_SERIALIZE_REQUEST), AcpiDmTableInfoDtprSerializeReq1);
+ if (ACPI_FAILURE (Status))
+ {
+ return;
+ }
+
+ Offset += sizeof(ACPI_TPR_SERIALIZE_REQUEST);
+ }
+ }
+}
+
+
+/*******************************************************************************
+ *
* FUNCTION: AcpiDmDumpEinj
*
* PARAMETERS: Table - A EINJ table
diff --git a/source/common/dmtbdump2.c b/source/common/dmtbdump2.c
index a5125bae971f..e6d5809e22c2 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/common/dmtbdump3.c b/source/common/dmtbdump3.c
index 544792926b84..9f8af190f418 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/common/dmtbinfo.c b/source/common/dmtbinfo.c
index 262c03feef53..382ebc463b25 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/common/dmtbinfo1.c b/source/common/dmtbinfo1.c
index e0059026e40d..49c6570a4bb0 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -1155,6 +1155,44 @@ ACPI_DMTABLE_INFO AcpiDmTableInfoDrtm2[] =
/*******************************************************************************
*
+ * DTPR - DMA TXT Protection Ranges Table
+ *
+ ******************************************************************************/
+
+ACPI_DMTABLE_INFO AcpiDmTableInfoDtpr[] =
+{
+ {ACPI_DMT_UINT32, ACPI_DTPR_OFFSET (Flags), "Flags (reserved)", 0},
+ {ACPI_DMT_UINT32, ACPI_DTPR_OFFSET (InsCnt), "Instance Count", 0},
+ ACPI_DMT_TERMINATOR
+};
+
+ACPI_DMTABLE_INFO AcpiDmTableInfoDtprInstance[] =
+{
+ {ACPI_DMT_UINT32, ACPI_DTPR_INST_OFFSET (Flags), "Instance control flags (reserved)", 0},
+ {ACPI_DMT_UINT32, ACPI_DTPR_INST_OFFSET (TprCnt), "Number of TPR ranges in instance", 0},
+ ACPI_DMT_TERMINATOR
+};
+
+ACPI_DMTABLE_INFO AcpiDmTableInfoDtprArr[] =
+{
+ {ACPI_DMT_UINT64, ACPI_DTPR_ARR_OFFSET (Base), "TPR Base Address", 0},
+ ACPI_DMT_TERMINATOR
+};
+
+ACPI_DMTABLE_INFO AcpiDmTableInfoDtprSerializeReq0[] =
+{
+ {ACPI_DMT_UINT32, ACPI_DTPR_AUX_SR_OFFSET (SrlCnt), "Number of serialization registers", 0},
+ ACPI_DMT_TERMINATOR
+};
+
+ACPI_DMTABLE_INFO AcpiDmTableInfoDtprSerializeReq1[] =
+{
+ {ACPI_DMT_UINT64, ACPI_DTPR_SR_OFFSET (SrRegister), "Serialize Request register", 0},
+ ACPI_DMT_TERMINATOR
+};
+
+/*******************************************************************************
+ *
* ECDT - Embedded Controller Boot Resources Table
*
******************************************************************************/
diff --git a/source/common/dmtbinfo2.c b/source/common/dmtbinfo2.c
index c936af40586d..2137f5436d18 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -1243,7 +1243,7 @@ ACPI_DMTABLE_INFO AcpiDmTableInfoMadt30[] =
{
{ACPI_DMT_UINT16, ACPI_MADT30_OFFSET (Reserved), "Reserved", 0},
{ACPI_DMT_UINT32, ACPI_MADT30_OFFSET (LinkedTranslatorId), "Linked Its Id", 0},
- {ACPI_DMT_UINT32, ACPI_MADT30_OFFSET (TranslateFrameId), "Its Transalte Id", 0},
+ {ACPI_DMT_UINT32, ACPI_MADT30_OFFSET (TranslateFrameId), "Its Translate Id", 0},
{ACPI_DMT_UINT32, ACPI_MADT30_OFFSET (Reserved2), "Reserved", 0},
{ACPI_DMT_UINT64, ACPI_MADT30_OFFSET (BaseAddress), "Its Translate Frame Physical Base Address", 0},
ACPI_DMT_TERMINATOR
diff --git a/source/common/dmtbinfo3.c b/source/common/dmtbinfo3.c
index 2b5891c0500e..4a59ced29ad8 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/common/getopt.c b/source/common/getopt.c
index 9ca2db57f512..3c007823bbbf 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslallocate.c b/source/compiler/aslallocate.c
index 980af908e649..f3c0c139409e 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslanalyze.c b/source/compiler/aslanalyze.c
index cad84bc00a02..7cb5445fb0a8 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslascii.c b/source/compiler/aslascii.c
index 7775c3877dd6..b2a4b40a85e9 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslbtypes.c b/source/compiler/aslbtypes.c
index d1674daaef1b..60e3f8e197ac 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslcache.c b/source/compiler/aslcache.c
index 094c6422c1b8..ae678fdd1029 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslcodegen.c b/source/compiler/aslcodegen.c
index caaf983aea5d..901bc4b28bef 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -586,14 +586,16 @@ CgWriteTableHeader (
/* OEMID */
Child = Child->Asl.Next;
- memcpy (AslGbl_TableHeader.OemId, Child->Asl.Value.String,
- strlen (Child->Asl.Value.String));
+ /* Bound copy to header field size to avoid overflow on malformed input */
+ strncpy (AslGbl_TableHeader.OemId, Child->Asl.Value.String,
+ ACPI_OEM_ID_SIZE);
/* OEM TableID */
Child = Child->Asl.Next;
- memcpy (AslGbl_TableHeader.OemTableId, Child->Asl.Value.String,
- strlen (Child->Asl.Value.String));
+ /* Bound copy to header field size to avoid overflow on malformed input */
+ strncpy (AslGbl_TableHeader.OemTableId, Child->Asl.Value.String,
+ ACPI_OEM_TABLE_ID_SIZE);
/* OEM Revision */
diff --git a/source/compiler/aslcompile.c b/source/compiler/aslcompile.c
index 2d05bc88588f..0a19c1fa8f7e 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslcompiler.h b/source/compiler/aslcompiler.h
index 7fc16401202b..962f8548b369 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslcompiler.l b/source/compiler/aslcompiler.l
index e3fbf504e9ee..d50f0f9e366b 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslcstyle.y b/source/compiler/aslcstyle.y
index 59a1abea1bee..6384a1e932d6 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/asldebug.c b/source/compiler/asldebug.c
index dc37941de414..85d2824fb3ee 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/asldefine.h b/source/compiler/asldefine.h
index 89b6b8a69956..5f694efe40df 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslerror.c b/source/compiler/aslerror.c
index 69ec08c48489..034fec9974aa 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslexternal.c b/source/compiler/aslexternal.c
index 617865410908..f1529a7f63f6 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -170,6 +170,10 @@ static void
ExMoveExternals (
ACPI_PARSE_OBJECT *DefinitionBlockOp);
+static void
+ExRemoveOpFromTree (
+ ACPI_PARSE_OBJECT *Op);
+
/*******************************************************************************
*
@@ -194,9 +198,14 @@ ExDoExternal (
ACPI_PARSE_OBJECT *ArgCountOp;
ACPI_PARSE_OBJECT *TypeOp;
ACPI_PARSE_OBJECT *ExternTypeOp = Op->Asl.Child->Asl.Next;
+ ACPI_PARSE_OBJECT *Existing;
+ ACPI_PARSE_OBJECT *NameOp = Op->Asl.Child;
+ ACPI_PARSE_OBJECT *ExistingNameOp;
UINT32 ExternType;
UINT8 ParamCount = ASL_EXTERNAL_METHOD_UNKNOWN_PARAMS;
UINT32 ParamTypes[ACPI_METHOD_NUM_ARGS];
+ char *NewPath = NULL;
+ char *ExistingPath;
ExternType = AnMapObjTypeToBtype (ExternTypeOp);
@@ -250,6 +259,53 @@ ExDoExternal (
ArgCountOp->Asl.Value.Integer = ParamCount;
UtSetParseOpName (ArgCountOp);
+ /*
+ * Deduplicate identical External() declarations. The disassembler
+ * already collapses duplicates; mirror that behavior in the compiler
+ * so duplicate externals do not bloat emitted AML.
+ */
+
+ NewPath = NameOp->Asl.Namepath;
+ if (!NewPath && NameOp->Asl.Value.String)
+ {
+ (void) UtInternalizeName (NameOp->Asl.Value.String, &NewPath);
+ NameOp->Asl.Namepath = NewPath;
+ }
+
+ Existing = AslGbl_ExternalsListHead;
+ while (Existing && NewPath)
+ {
+ ExistingNameOp = Existing->Asl.Child->Asl.Child;
+ ExistingPath = ExistingNameOp->Asl.Namepath;
+ if (!ExistingPath && ExistingNameOp->Asl.Value.String)
+ {
+ (void) UtInternalizeName (ExistingNameOp->Asl.Value.String,
+ &ExistingPath);
+ ExistingNameOp->Asl.Namepath = ExistingPath;
+ }
+
+ if (ExistingPath && !strcmp (NewPath, ExistingPath))
+ {
+ ACPI_PARSE_OBJECT *ExistingArgCount;
+
+ /* Update arg count if this instance is more specific */
+
+ ExistingArgCount = Existing->Asl.Child->Asl.Child->Asl.Next->Asl.Next;
+ if ((ExternType == ACPI_BTYPE_METHOD) &&
+ (ParamCount < ExistingArgCount->Asl.Value.Integer))
+ {
+ ExistingArgCount->Asl.Value.Integer = ParamCount;
+ }
+
+ /* Remove duplicate External node from the parse tree */
+
+ ExRemoveOpFromTree (Op);
+ return;
+ }
+
+ Existing = Existing->Asl.Next;
+ }
+
/* Create new list node of arbitrary type */
ListOp = TrAllocateOp (PARSEOP_DEFAULT_ARG);
@@ -282,6 +338,53 @@ ExDoExternal (
/*******************************************************************************
*
+ * FUNCTION: ExRemoveOpFromTree
+ *
+ * PARAMETERS: Op - Parse op to remove from the tree
+ *
+ * RETURN: None
+ *
+ * DESCRIPTION: Unlink a parse op from its parent sibling list. Used to drop
+ * duplicate External() declarations before AML emission.
+ *
+ ******************************************************************************/
+
+static void
+ExRemoveOpFromTree (
+ ACPI_PARSE_OBJECT *Op)
+{
+ ACPI_PARSE_OBJECT *Parent;
+ ACPI_PARSE_OBJECT *Child;
+
+
+ if (!Op || !Op->Asl.Parent)
+ {
+ return;
+ }
+
+ Parent = Op->Asl.Parent;
+ Child = Parent->Asl.Child;
+
+ if (Child == Op)
+ {
+ Parent->Asl.Child = Op->Asl.Next;
+ return;
+ }
+
+ while (Child && Child->Asl.Next != Op)
+ {
+ Child = Child->Asl.Next;
+ }
+
+ if (Child)
+ {
+ Child->Asl.Next = Op->Asl.Next;
+ }
+}
+
+
+/*******************************************************************************
+ *
* FUNCTION: ExInsertArgCount
*
* PARAMETERS: Op - Op for a method invocation
diff --git a/source/compiler/aslfileio.c b/source/compiler/aslfileio.c
index a793952e4d9e..ea03e76a1be9 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslfiles.c b/source/compiler/aslfiles.c
index e861fb042f8b..8f2f17dbdb5a 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslfold.c b/source/compiler/aslfold.c
index ac6778937d9a..192e2a67b599 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslglobal.h b/source/compiler/aslglobal.h
index c79758919f6f..0f2d5931cec8 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -252,6 +252,7 @@ extern FILE *AslCompilerin;
extern int DtParserdebug;
extern int PrParserdebug;
extern const ASL_MAPPING_ENTRY AslKeywordMapping[];
+extern const UINT32 AslKeywordMappingCount;
extern char *AslCompilertext;
extern char *DtCompilerParsertext;
diff --git a/source/compiler/aslhelp.c b/source/compiler/aslhelp.c
index 8761d3269cb9..8a22cc29d94d 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslhelpers.y b/source/compiler/aslhelpers.y
index cb13d1ebcfe7..728ea9bd810c 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslhex.c b/source/compiler/aslhex.c
index 6ab28ed5f720..8e2b702f854c 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslkeywords.y b/source/compiler/aslkeywords.y
index 7cb670e61bfb..bdd42231cf55 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/asllength.c b/source/compiler/asllength.c
index 305e869c410c..928e7e7fa0d3 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/asllisting.c b/source/compiler/asllisting.c
index 27800e053fad..5f7ac060d278 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/asllistsup.c b/source/compiler/asllistsup.c
index 5a6e372f3693..6a75fe196baa 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslload.c b/source/compiler/aslload.c
index 4b969ccbbc2a..2df8e4c15031 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -1406,6 +1406,8 @@ LdNamespace2Begin (
/* Save the target node within the alias node as well as type information */
+ /* Mark as alias node and store target namespace node */
+ Node->Flags |= ANOBJ_IS_ALIAS;
Node->Object = ACPI_CAST_PTR (ACPI_OPERAND_OBJECT, TargetNode);
Node->Type = TargetNode->Type;
if (Node->Type == ACPI_TYPE_METHOD)
diff --git a/source/compiler/asllookup.c b/source/compiler/asllookup.c
index 702a0a1e86e2..f618efbafce9 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslmain.c b/source/compiler/aslmain.c
index 722c2ba3e85c..51b8d89a3238 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslmap.c b/source/compiler/aslmap.c
index cc57f0fb96fa..667645ab0c30 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -611,3 +611,5 @@ const ASL_MAPPING_ENTRY AslKeywordMapping [] =
/*! [End] no source code translation !*/
};
+
+const UINT32 AslKeywordMappingCount = ACPI_ARRAY_LENGTH (AslKeywordMapping);
diff --git a/source/compiler/aslmapenter.c b/source/compiler/aslmapenter.c
index c6d0a5973d53..8748255da2b5 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslmapoutput.c b/source/compiler/aslmapoutput.c
index a0337ebca912..60bc4559ca78 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslmaputils.c b/source/compiler/aslmaputils.c
index bb0003affdd7..78d61e0a3aab 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslmessages.c b/source/compiler/aslmessages.c
index eaabf6cc7922..a6008a5a7f3e 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -412,7 +412,8 @@ const char *AslTableCompilerMsgs [] =
/* 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"
+/* ASL_MSG_BAD_PARSE_TREE */ "Parse tree appears to be ill-defined",
+/* ASL_MSG_MALFORMED_HEADER */ "Malformed ACPI table header detected"
};
/* Preprocessor */
diff --git a/source/compiler/aslmessages.h b/source/compiler/aslmessages.h
index dc0bbe10bd0d..f8ef09bbe9d3 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -414,6 +414,7 @@ typedef enum
ASL_MSG_RESERVED_VALUE,
ASL_MSG_TWO_ZERO_VALUES,
ASL_MSG_BAD_PARSE_TREE,
+ ASL_MSG_MALFORMED_HEADER,
/* These messages are used by the Preprocessor only */
diff --git a/source/compiler/aslmethod.c b/source/compiler/aslmethod.c
index 0e9df4c9607d..761ebd387cae 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslnamesp.c b/source/compiler/aslnamesp.c
index 88cfa5238720..108e10301155 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/asloffset.c b/source/compiler/asloffset.c
index 24c778f334e6..be23318b4504 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslopcodes.c b/source/compiler/aslopcodes.c
index 250bdd7fc99c..3221142a4509 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -863,6 +863,14 @@ OpcGenerateAmlOpcode (
Index = (UINT16) (Op->Asl.ParseOpcode - ASL_PARSE_OPCODE_BASE);
+ if ((Op->Asl.ParseOpcode < ASL_PARSE_OPCODE_BASE) ||
+ (Index >= AslKeywordMappingCount))
+ {
+ AslError (ASL_ERROR, ASL_MSG_COMPILER_INTERNAL, Op,
+ "Invalid parse opcode in OpcGenerateAmlOpcode");
+ return;
+ }
+
Op->Asl.AmlOpcode = AslKeywordMapping[Index].AmlOpcode;
Op->Asl.AcpiBtype = AslKeywordMapping[Index].AcpiBtype;
Op->Asl.CompileFlags |= AslKeywordMapping[Index].Flags;
diff --git a/source/compiler/asloperands.c b/source/compiler/asloperands.c
index 327aef15dcff..c66f223751d5 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -851,7 +851,9 @@ OpnDoPackage (
{
ACPI_PARSE_OBJECT *InitializerOp;
ACPI_PARSE_OBJECT *PackageLengthOp;
+ UINT64 DeclaredLength;
UINT32 PackageLength = 0;
+ UINT32 MaxEncodedLength = 0x0FFFFFFF; /* Max AML package length encoding (28 bits) */
/* Opcode and package length first, followed by the initializer list */
@@ -875,9 +877,21 @@ OpnDoPackage (
/* If package length is a constant, compare to the initializer list */
if ((PackageLengthOp->Asl.ParseOpcode == PARSEOP_INTEGER) ||
- (PackageLengthOp->Asl.ParseOpcode == PARSEOP_QWORDCONST))
+ (PackageLengthOp->Asl.ParseOpcode == PARSEOP_QWORDCONST) ||
+ (PackageLengthOp->Asl.ParseOpcode == PARSEOP_PACKAGE_LENGTH))
{
- if (PackageLengthOp->Asl.Value.Integer > PackageLength)
+ DeclaredLength = PackageLengthOp->Asl.Value.Integer;
+
+ /* Guard against values that cannot be encoded in AML package length format */
+
+ if (DeclaredLength > MaxEncodedLength)
+ {
+ AslError (ASL_ERROR, ASL_MSG_ENCODING_LENGTH, PackageLengthOp, NULL);
+ DeclaredLength = MaxEncodedLength;
+ PackageLengthOp->Asl.Value.Integer = DeclaredLength;
+ }
+
+ if (DeclaredLength > PackageLength)
{
/*
* Allow package length to be longer than the initializer
@@ -891,9 +905,9 @@ OpnDoPackage (
PackageLengthOp, NULL);
}
- PackageLength = (UINT32) PackageLengthOp->Asl.Value.Integer;
+ PackageLength = (UINT32) DeclaredLength;
}
- else if (PackageLengthOp->Asl.Value.Integer < PackageLength)
+ else if (DeclaredLength < PackageLength)
{
/*
* The package length is smaller than the length of the
@@ -999,7 +1013,13 @@ OpnDoLoadTable (
/* Fourth child is the RootPath string */
Next = Next->Asl.Next;
- if (Next->Asl.ParseOpcode == PARSEOP_ZERO)
+ if ((Next->Asl.ParseOpcode == PARSEOP_ZERO) ||
+ ((Next->Asl.Value.Integer == 0) &&
+ ((Next->Asl.ParseOpcode == PARSEOP_INTEGER) ||
+ (Next->Asl.ParseOpcode == PARSEOP_BYTECONST) ||
+ (Next->Asl.ParseOpcode == PARSEOP_WORDCONST) ||
+ (Next->Asl.ParseOpcode == PARSEOP_DWORDCONST)||
+ (Next->Asl.ParseOpcode == PARSEOP_QWORDCONST))))
{
Next->Asl.ParseOpcode = PARSEOP_STRING_LITERAL;
Next->Asl.Value.String = "\\";
diff --git a/source/compiler/aslopt.c b/source/compiler/aslopt.c
index 2172fe9090a3..f720e4c5b418 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/asloptions.c b/source/compiler/asloptions.c
index b529538e2efc..feb61d4ee8bc 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslparseop.c b/source/compiler/aslparseop.c
index e89702aa6b4e..919590a1c80e 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslparser.y b/source/compiler/aslparser.y
index 3ff5eb1a9d3e..7565786a3178 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslpld.c b/source/compiler/aslpld.c
index 086db9df2f3c..977944bac1ec 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslpredef.c b/source/compiler/aslpredef.c
index 474fddeca51d..a6e09063ecaf 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslprepkg.c b/source/compiler/aslprepkg.c
index 49078d24491e..b11650a3d010 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslprimaries.y b/source/compiler/aslprimaries.y
index 608009d30da3..ef5aa3a7a8b1 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslprintf.c b/source/compiler/aslprintf.c
index 3727c41f28b0..87fdac5684a8 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslprune.c b/source/compiler/aslprune.c
index 839ed9415ba5..f17fa776401d 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslresource.c b/source/compiler/aslresource.c
index 8d0b711d52dc..8b6d5d6c7ee9 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslresources.y b/source/compiler/aslresources.y
index fd8a33d3c0d6..617a366411fd 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslrestype1.c b/source/compiler/aslrestype1.c
index c5eb17948fae..70d71a456a86 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslrestype1i.c b/source/compiler/aslrestype1i.c
index ca8b76af40d4..7e40e886b283 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslrestype2.c b/source/compiler/aslrestype2.c
index 2886c0328cd8..1c5c3bfa594d 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslrestype2d.c b/source/compiler/aslrestype2d.c
index f16f53f3b14d..f57b921b95a1 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslrestype2e.c b/source/compiler/aslrestype2e.c
index 0ad2ac49c5ac..e58a3702f882 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslrestype2q.c b/source/compiler/aslrestype2q.c
index 33a66c1e8b0a..86e01a5d6039 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslrestype2s.c b/source/compiler/aslrestype2s.c
index f7d895575b19..172a505e7840 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslrestype2w.c b/source/compiler/aslrestype2w.c
index 0d95d6628dc5..ce0cf1a3a528 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslrules.y b/source/compiler/aslrules.y
index c96d4cc75db6..00dede690168 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslstartup.c b/source/compiler/aslstartup.c
index 104f9793be26..a8b0fa5991f7 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslstubs.c b/source/compiler/aslstubs.c
index d361986078be..b7275bc75fd1 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslsupport.l b/source/compiler/aslsupport.l
index 74ac78d8c4ef..d9e609faee46 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslsupport.y b/source/compiler/aslsupport.y
index 3bd09a55e704..7595c1065df6 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/asltokens.y b/source/compiler/asltokens.y
index 50d6031e5ed0..0497ba9535ec 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/asltransform.c b/source/compiler/asltransform.c
index 0a29287176a2..5b9d0dbc2209 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/asltree.c b/source/compiler/asltree.c
index 83a95be0793b..d0e9870e1d09 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/asltypes.h b/source/compiler/asltypes.h
index 50234d71f0a7..36052302e9bf 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/asltypes.y b/source/compiler/asltypes.y
index 2c2669559585..3bfbae4f7b04 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslutils.c b/source/compiler/aslutils.c
index 6c7e472ab2e7..becc18ade503 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/asluuid.c b/source/compiler/asluuid.c
index 155dec7dd5ce..3d6e19d342c1 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/aslwalks.c b/source/compiler/aslwalks.c
index 16ba00652f9b..771a549de355 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -197,6 +197,7 @@ AnMethodTypingWalkEnd (
void *Context)
{
UINT32 ThisOpBtype;
+ ACPI_PARSE_OBJECT *TargetMethodOp;
switch (Op->Asl.ParseOpcode)
@@ -227,12 +228,24 @@ AnMethodTypingWalkEnd (
if (Op->Asl.Child->Asl.Node &&
(Op->Asl.ParentMethod != Op->Asl.Child->Asl.Node->Op))
{
+ TargetMethodOp = Op->Asl.Child->Asl.Node->Op;
+
+ /* Break mutual-recursion loops during typing */
+ if (TargetMethodOp->Asl.CompileFlags & OP_VISITED)
+ {
+ break;
+ }
+
+ TargetMethodOp->Asl.CompileFlags |= OP_VISITED;
+
/* We must type the method here */
- TrWalkParseTree (Op->Asl.Child->Asl.Node->Op,
+ TrWalkParseTree (TargetMethodOp,
ASL_WALK_VISIT_UPWARD, NULL,
AnMethodTypingWalkEnd, NULL);
+ TargetMethodOp->Asl.CompileFlags &= ~OP_VISITED;
+
ThisOpBtype = AnGetBtype (Op->Asl.Child);
}
}
diff --git a/source/compiler/aslxref.c b/source/compiler/aslxref.c
index 82d3e8c06c57..d7e10cc41afd 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -558,11 +558,23 @@ XfNamespaceLocateBegin (
Node = NextOp->Asl.Node;
+ /* Malformed tree: parent method has no namespace node */
+ if (!Node)
+ {
+ return_ACPI_STATUS (AE_OK);
+ }
+
/* Get Arg # */
RegisterNumber = Op->Asl.AmlOpcode - AML_ARG0; /* 0x68 through 0x6F */
MethodArgs = Node->MethodArgs;
+ /* Gracefully handle malformed trees where method args were not set up */
+ if (!MethodArgs)
+ {
+ return_ACPI_STATUS (AE_OK);
+ }
+
/* Mark this Arg as referenced */
MethodArgs[RegisterNumber].Flags |= ASL_ARG_REFERENCED;
diff --git a/source/compiler/aslxrefout.c b/source/compiler/aslxrefout.c
index 6e2cfe47acb7..a1f9e750e2cc 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/cvcompiler.c b/source/compiler/cvcompiler.c
index b9057919984b..503437ddb50f 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/cvdisasm.c b/source/compiler/cvdisasm.c
index be1ff6664726..2c6bd01b8afb 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/cvparser.c b/source/compiler/cvparser.c
index 3a08fe4aae2e..5cb9e2cac8a6 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/dtcompile.c b/source/compiler/dtcompile.c
index e23d98d4c631..2f0a72ee3c22 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -363,18 +363,42 @@ DtInsertCompilerIds (
return;
}
- /* Walk to the Compiler fields at the end of the header */
+ /* Walk to the Compiler fields at the end of the header, with safety checks */
+
+ if (!FieldList)
+ {
+ DtError (ASL_WARNING, ASL_MSG_MALFORMED_HEADER, NULL, NULL);
+ return;
+ }
Next = FieldList;
for (i = 0; i < 7; i++)
{
+ if (!Next || !Next->Next)
+ {
+ /* Malformed/short header: cannot insert compiler IDs */
+ DtError (ASL_WARNING, ASL_MSG_MALFORMED_HEADER, FieldList, NULL);
+ return;
+ }
Next = Next->Next;
}
+ /* Ensure both Creator ID and Revision fields exist */
+ if (!Next || !Next->Next)
+ {
+ DtError (ASL_WARNING, ASL_MSG_MALFORMED_HEADER, FieldList, NULL);
+ return;
+ }
+
Next->Value = ASL_CREATOR_ID;
Next->Flags = DT_FIELD_NOT_ALLOCATED;
Next = Next->Next;
+ if (!Next)
+ {
+ DtError (ASL_WARNING, ASL_MSG_MALFORMED_HEADER, FieldList, NULL);
+ return;
+ }
Next->Value = VersionString;
Next->Flags = DT_FIELD_NOT_ALLOCATED;
}
diff --git a/source/compiler/dtcompiler.h b/source/compiler/dtcompiler.h
index 503700fe3c88..db2326e5e1f1 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -610,6 +610,10 @@ DtCompileDrtm (
void **PFieldList);
ACPI_STATUS
+DtCompileDtpr (
+ void **PFieldList);
+
+ACPI_STATUS
DtCompileEinj (
void **PFieldList);
@@ -819,6 +823,7 @@ extern const unsigned char TemplateDbg2[];
extern const unsigned char TemplateDbgp[];
extern const unsigned char TemplateDmar[];
extern const unsigned char TemplateDrtm[];
+extern const unsigned char TemplateDtpr[];
extern const unsigned char TemplateEcdt[];
extern const unsigned char TemplateEinj[];
extern const unsigned char TemplateErdt[];
diff --git a/source/compiler/dtcompilerparser.l b/source/compiler/dtcompilerparser.l
index ac99efb5ffcc..6da20db9da9f 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/dtcompilerparser.y b/source/compiler/dtcompilerparser.y
index 7fa06fe52b15..ff30ba34fd99 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/dtexpress.c b/source/compiler/dtexpress.c
index c981a49f753c..3e45af014862 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/dtfield.c b/source/compiler/dtfield.c
index 3942de55f4f3..bee04c737734 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/dtio.c b/source/compiler/dtio.c
index 2ee882a1ec2b..40d3149ced0b 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -422,6 +422,12 @@ DtParseLine (
End++;
}
+ /* No value characters present */
+ if (End <= Start)
+ {
+ return (AE_OK);
+ }
+
Length = ACPI_PTR_DIFF (End, Start);
TmpValue = UtLocalCalloc (Length + 1);
diff --git a/source/compiler/dtparser.l b/source/compiler/dtparser.l
index d0dc97723e0d..e013a64c0f48 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/dtparser.y b/source/compiler/dtparser.y
index 2f01f06e4f04..2003172e0db2 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/dtsubtable.c b/source/compiler/dtsubtable.c
index 1735a6329577..c01a9f630634 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -430,7 +430,12 @@ DtGetSubtableLength (
case ACPI_DMT_IORTMEM:
- Step = 10;
+ /*
+ * The ACPI_DMT_IORTMEM type is defined in AcpiDmTableInfoIortAcc.
+ * TODO: compute number of fields ("Step") directly from the array initialisation.
+ * This may require some refactoring of dmtbinfo2.c and acdiasasm.h
+ */
+ Step = 11;
break;
default:
diff --git a/source/compiler/dttable.c b/source/compiler/dttable.c
index d28d5d8ce8ef..a9d342880d6d 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/dttable1.c b/source/compiler/dttable1.c
index e5f6115bf9cf..d128188c68bd 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -1728,6 +1728,124 @@ DtCompileDrtm (
/******************************************************************************
*
+ * FUNCTION: DtCompileDtpr
+ *
+ * PARAMETERS: List - Current field list pointer
+ *
+ * RETURN: Status
+ *
+ * DESCRIPTION: Compile DTPR.
+ *
+ *****************************************************************************/
+
+ACPI_STATUS
+DtCompileDtpr (
+ void **List)
+{
+ ACPI_STATUS Status;
+ DT_SUBTABLE *Subtable;
+ DT_SUBTABLE *ParentTable;
+ DT_FIELD **PFieldList = (DT_FIELD **) List;
+ ACPI_TABLE_DTPR *Dtpr;
+ ACPI_TPR_INSTANCE *TprInst;
+ UINT32 i, InsCnt, SrlCnt, TprCnt;
+
+
+ ParentTable = DtPeekSubtable ();
+
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoDtpr, &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
+ DtInsertSubtable (ParentTable, Subtable);
+
+ Dtpr = ACPI_SUB_PTR (ACPI_TABLE_DTPR, Subtable->Buffer,
+ sizeof (ACPI_TABLE_HEADER));
+ if (!Dtpr)
+ {
+ AcpiOsPrintf ("DTPR buffer pointer is NULL\n");
+ return (AE_NULL_OBJECT);
+ }
+
+ InsCnt = Dtpr->InsCnt;
+
+ while (*PFieldList)
+ {
+ for (i = 0; i < InsCnt; i++)
+ {
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoDtprInstance,
+ &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
+ TprInst = ACPI_CAST_PTR (ACPI_TPR_INSTANCE, Subtable->Buffer);
+ if (!TprInst)
+ {
+ AcpiOsPrintf ("Tpr Instance buffer pointer is NULL\n");
+ return (AE_NULL_OBJECT);
+ }
+
+ TprCnt = TprInst->TprCnt;
+ DtInsertSubtable (ParentTable, Subtable);
+ DtPushSubtable (Subtable);
+ ParentTable = DtPeekSubtable ();
+
+ while (*PFieldList && TprCnt)
+ {
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoDtprArr,
+ &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
+ DtInsertSubtable (ParentTable, Subtable);
+ TprCnt--;
+ }
+
+ DtPopSubtable();
+ ParentTable = DtPeekSubtable ();
+ }
+
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoDtprSerializeReq0,
+ &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
+ SrlCnt = *ACPI_CAST_PTR(UINT32, Subtable->Buffer);
+ DtInsertSubtable (ParentTable, Subtable);
+ DtPushSubtable (Subtable);
+ ParentTable = DtPeekSubtable ();
+
+ while (*PFieldList && SrlCnt)
+ {
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoDtprSerializeReq1,
+ &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
+ DtInsertSubtable (ParentTable, Subtable);
+ SrlCnt--;
+ }
+
+
+ DtPopSubtable();
+ ParentTable = DtPeekSubtable ();
+ }
+
+ return Status;
+}
+
+/******************************************************************************
+ *
* FUNCTION: DtCompileEinj
*
* PARAMETERS: List - Current field list pointer
@@ -2984,6 +3102,19 @@ DtCompileIort (
IortRmr->RmrCount = RmrCount;
break;
+ case ACPI_IORT_NODE_IWB:
+
+ Status = DtCompileTable (PFieldList, AcpiDmTableInfoIort7,
+ &Subtable);
+ if (ACPI_FAILURE (Status))
+ {
+ return (Status);
+ }
+
+ DtInsertSubtable (ParentTable, Subtable);
+ NodeLength += Subtable->Length;
+ break;
+
default:
DtFatal (ASL_MSG_UNKNOWN_SUBTABLE, SubtableStart, "IORT");
diff --git a/source/compiler/dttable2.c b/source/compiler/dttable2.c
index 12dd29561053..a1f17819cb69 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -439,6 +439,21 @@ DtCompileMadt (
InfoTable = AcpiDmTableInfoMadt27;
break;
+ case ACPI_MADT_TYPE_GICV5_IRS:
+
+ InfoTable = AcpiDmTableInfoMadt28;
+ break;
+
+ case ACPI_MADT_TYPE_GICV5_ITS:
+
+ InfoTable = AcpiDmTableInfoMadt29;
+ break;
+
+ case ACPI_MADT_TYPE_GICV5_ITS_TRANSLATE:
+
+ InfoTable = AcpiDmTableInfoMadt30;
+ break;
+
default:
if (MadtHeader->Type >= ACPI_MADT_TYPE_OEM_RESERVED)
diff --git a/source/compiler/dttemplate.c b/source/compiler/dttemplate.c
index c3fd33465f0b..cb06d4a05aab 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/dttemplate.h b/source/compiler/dttemplate.h
index 88bc38f25c39..460f3a54afe5 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -643,6 +643,23 @@ const unsigned char TemplateEcdt[] =
0x09,0x00 /* 00000040 ".." */
};
+const unsigned char TemplateDtpr[] =
+{
+ 0x44,0x54,0x50,0x52,0x68,0x00,0x00,0x00, /* 00000000 "DTPRh..." */
+ 0x01,0x0B,0x49,0x4E,0x54,0x45,0x4C,0x20, /* 00000008 ".#INTEL." */
+ 0x54,0x45,0x4D,0x50,0x4C,0x41,0x54,0x45, /* 00000010 "TEMPLATE" */
+ 0x00,0x00,0x00,0x01,0x49,0x4E,0x54,0x4C, /* 00000018 "....INTL" */
+ 0x04,0x04,0x25,0x20,0x00,0x00,0x00,0x00, /* 00000020 "........" */
+ 0x02,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000028 "........" */
+ 0x02,0x00,0x00,0x00,0x30,0xB0,0xAA,0xFF, /* 00000030 "....0..." */
+ 0xFF,0x1F,0x00,0x00,0x38,0xB0,0xAA,0xFF, /* 00000038 "....8..." */
+ 0xFF,0x1F,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000040 "........" */
+ 0x02,0x00,0x00,0x00,0x30,0xB0,0xBB,0xFF, /* 00000048 "....0..." */
+ 0xFF,0x1F,0x00,0x00,0x38,0xB0,0xBB,0xFF, /* 00000050 "....8..." */
+ 0xFF,0x1F,0x00,0x00,0x01,0x00,0x00,0x00, /* 00000058 "........" */
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 /* 00000060 "........" */
+};
+
const unsigned char TemplateEinj[] =
{
0x45,0x49,0x4E,0x4A,0x30,0x01,0x00,0x00, /* 00000000 "EINJ0..." */
@@ -1188,11 +1205,11 @@ const unsigned char TemplateHpet[] =
const unsigned char TemplateIort[] =
{
- 0x49,0x4F,0x52,0x54,0x3C,0x02,0x00,0x00, /* 00000000 "IORT<..." */
- 0x05,0xCB,0x49,0x4E,0x54,0x45,0x4C,0x20, /* 00000008 "..INTEL " */
+ 0x49,0x4F,0x52,0x54,0x78,0x02,0x00,0x00, /* 00000000 "IORTx..." */
+ 0x05,0x85,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" */
- 0x17,0x12,0x21,0x20,0x07,0x00,0x00,0x00, /* 00000020 "..! ...." */
+ 0x07,0x08,0x25,0x20,0x08,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 "........" */
@@ -1204,10 +1221,10 @@ 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,0xF1,0x49,0x4E,0x54,0x45,0x4C,0x20, /* 00000080 "..INTEL " */
+ 0x05,0xCB,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 "..! ...." */
+ 0x17,0x12,0x21,0x20,0x07,0x00,0x00,0x00, /* 00000098 "..! ...." */
0x34,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 000000A0 "4......." */
0x49,0x4F,0x52,0x54,0x00,0x18,0x00,0x01, /* 000000A8 "IORT...." */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 000000B0 "........" */
@@ -1259,7 +1276,14 @@ 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 "........" */
- 0x00,0x00,0x00,0x00 /* 00000238 "...." */
+ 0x00,0x00,0x00,0x00,0x07,0x3C,0x00,0x01, /* 00000238 ".....<.." */
+ 0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00, /* 00000240 "........" */
+ 0x28,0x00,0x00,0x00,0x00,0x00,0x00,0x2F, /* 00000248 "(....../" */
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x5C,0x5F, /* 00000250 "......\_" */
+ 0x53,0x42,0x5F,0x2E,0x49,0x57,0x42,0x30, /* 00000258 "SB_.IWB0" */
+ 0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00, /* 00000260 "........" */
+ 0x00,0x40,0x00,0x00,0x00,0x30,0x00,0x00, /* 00000268 ".@...0.." */
+ 0x00,0x01,0x00,0x00,0x00 /* 00000270 "....." */
};
const unsigned char TemplateIovt[] =
@@ -1387,15 +1411,15 @@ const unsigned char TemplateLpit[] =
0x00,0x00,0x00,0x00 /* 00000090 "...." */
};
-/* MADT with ACPI 6.0 subtables */
+/* MADT with ACPI 6.7 subtables */
const unsigned char TemplateMadt[] =
{
- 0x41,0x50,0x49,0x43,0x62,0x02,0x00,0x00, /* 00000000 "APICb..." */
- 0x07,0x44,0x49,0x4E,0x54,0x45,0x4C,0x20, /* 00000008 ".DINTEL " */
+ 0x41,0x50,0x49,0x43,0xAA,0x02,0x00,0x00, /* 00000000 "APIC...." */
+ 0x07,0x5F,0x49,0x4E,0x54,0x45,0x4C,0x20, /* 00000008 "._INTEL " */
0x54,0x65,0x6D,0x70,0x6C,0x61,0x74,0x65, /* 00000010 "Template" */
0x01,0x00,0x00,0x00,0x49,0x4E,0x54,0x4C, /* 00000018 "....INTL" */
- 0x28,0x06,0x23,0x20,0x00,0x00,0x00,0x00, /* 00000020 "(.# ...." */
+ 0x07,0x08,0x25,0x20,0x00,0x00,0x00,0x00, /* 00000020 "..% ...." */
0x01,0x00,0x00,0x00,0x00,0x08,0x00,0x00, /* 00000028 "........" */
0x01,0x00,0x00,0x00,0x01,0x0C,0x01,0x00, /* 00000030 "........" */
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000038 "........" */
@@ -1467,7 +1491,16 @@ const unsigned char TemplateMadt[] =
0x00,0x00,0x60,0x00,0x00,0x00,0x00,0x00, /* 00000248 "..`....." */
0x00,0x00,0x00,0x00,0x60,0x00,0x00,0x00, /* 00000250 "....`..." */
0x00,0x0C,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000258 "........" */
- 0x00,0x00 /* 00000260 ".." */
+ 0x00,0x00,0x1D,0x10,0x00,0x00,0x00,0x00, /* 00000260 "........" */
+ 0x00,0x00,0x00,0x00,0x12,0x2F,0x00,0x00, /* 00000268 "...../.." */
+ 0x00,0x00,0x1E,0x18,0x00,0x00,0x00,0x00, /* 00000270 "........" */
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000278 "........" */
+ 0x00,0x00,0x00,0x00,0x13,0x2F,0x00,0x00, /* 00000280 "...../.." */
+ 0x00,0x00,0x1C,0x20,0x05,0x00,0x00,0x00, /* 00000288 "... ...." */
+ 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 00000290 "........" */
+ 0x00,0x00,0x00,0x00,0x1A,0x2F,0x00,0x00, /* 00000298 "...../.." */
+ 0x00,0x00,0x00,0x00,0x1B,0x2F,0x00,0x00, /* 000002A0 "...../.." */
+ 0x00,0x00 /* 000002A8 ".." */
};
const unsigned char TemplateMcfg[] =
diff --git a/source/compiler/dtutils.c b/source/compiler/dtutils.c
index 5b69a359b0a4..34ed36875e1a 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/preprocess.h b/source/compiler/preprocess.h
index 26a11f573402..8e3a602027b8 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/prexpress.c b/source/compiler/prexpress.c
index 6cdb5efd0289..fdd8319d6953 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/prmacros.c b/source/compiler/prmacros.c
index 8b4ed754d640..3a98117b2fba 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/prparser.l b/source/compiler/prparser.l
index 22b87328bda7..895e00e8f0d5 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/prparser.y b/source/compiler/prparser.y
index 0e4fb8e139dc..9ca336999128 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/prscan.c b/source/compiler/prscan.c
index 49cb211c199b..f0a0480c954c 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/compiler/prutils.c b/source/compiler/prutils.c
index f516c30fe70f..31bdceed5821 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/debugger/dbcmds.c b/source/components/debugger/dbcmds.c
index 529037663c18..7dac8ff29ab9 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/debugger/dbconvert.c b/source/components/debugger/dbconvert.c
index b2159fbd04fe..526b93adea9a 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/debugger/dbdisply.c b/source/components/debugger/dbdisply.c
index 27b568e0f645..5585e7303b20 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/debugger/dbexec.c b/source/components/debugger/dbexec.c
index 7cdd12c5e34d..f130d0133583 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/debugger/dbfileio.c b/source/components/debugger/dbfileio.c
index 74603d6d11aa..15e6fd0991a3 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/debugger/dbhistry.c b/source/components/debugger/dbhistry.c
index 887c14fd6415..2f2924f8506d 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/debugger/dbinput.c b/source/components/debugger/dbinput.c
index 70d65db06be7..f44c7b7c9c8c 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/debugger/dbmethod.c b/source/components/debugger/dbmethod.c
index c806e01e3553..6210f6525759 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/debugger/dbnames.c b/source/components/debugger/dbnames.c
index 3309a4285ec8..82baf91e67b9 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/debugger/dbobject.c b/source/components/debugger/dbobject.c
index b3a2529c36f2..bec3a15de385 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/debugger/dbstats.c b/source/components/debugger/dbstats.c
index 82810e6a3289..eab2378e50cb 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/debugger/dbtest.c b/source/components/debugger/dbtest.c
index 8e9c58111150..e0033772b296 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/debugger/dbutils.c b/source/components/debugger/dbutils.c
index 9db2425d6aa8..83d15ee72b95 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/debugger/dbxface.c b/source/components/debugger/dbxface.c
index 2f77edbf5530..2c221e4b7023 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/disassembler/dmbuffer.c b/source/components/disassembler/dmbuffer.c
index 3a9416140496..700ccbc6899b 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/disassembler/dmcstyle.c b/source/components/disassembler/dmcstyle.c
index 7dc9a5225549..347b3d3ccc2f 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/disassembler/dmdeferred.c b/source/components/disassembler/dmdeferred.c
index 3a30cfd689e9..8c0d9cb04c84 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/disassembler/dmnames.c b/source/components/disassembler/dmnames.c
index f26878344b90..b3bb27a73fc1 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/disassembler/dmopcode.c b/source/components/disassembler/dmopcode.c
index a8fbb269502f..e325a964d1f0 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -797,6 +797,7 @@ AcpiDmDisassembleOneOp (
UINT32 Offset;
UINT32 Length;
ACPI_PARSE_OBJECT *Child;
+ ACPI_PARSE_OBJECT *MethodCallOp;
ACPI_STATUS Status;
UINT8 *Aml;
const AH_DEVICE_ID *IdInfo;
@@ -986,6 +987,13 @@ AcpiDmDisassembleOneOp (
case AML_INT_NAMEPATH_OP:
AcpiDmNamestring (Op->Common.Value.Name);
+ /* If this namepath is a Package element, emit a separating comma */
+ if ((Op->Common.Parent) &&
+ ((Op->Common.Parent->Common.AmlOpcode == AML_PACKAGE_OP) ||
+ (Op->Common.Parent->Common.AmlOpcode == AML_VARIABLE_PACKAGE_OP)))
+ {
+ AcpiOsPrintf (", ");
+ }
break;
case AML_INT_NAMEDFIELD_OP:
@@ -1086,10 +1094,19 @@ AcpiDmDisassembleOneOp (
case AML_INT_METHODCALL_OP:
+ MethodCallOp = Op;
Op = AcpiPsGetDepthNext (NULL, Op);
Op->Common.DisasmFlags |= ACPI_PARSEOP_IGNORE;
AcpiDmNamestring (Op->Common.Value.Name);
+
+ /* If the method name is a Package element, emit a separating comma */
+ if ((MethodCallOp->Common.Parent) &&
+ ((MethodCallOp->Common.Parent->Common.AmlOpcode == AML_PACKAGE_OP) ||
+ (MethodCallOp->Common.Parent->Common.AmlOpcode == AML_VARIABLE_PACKAGE_OP)))
+ {
+ AcpiOsPrintf (", ");
+ }
break;
case AML_WHILE_OP:
diff --git a/source/components/disassembler/dmresrc.c b/source/components/disassembler/dmresrc.c
index 1e37f8f3b6a6..ebec29442b8a 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -536,10 +536,31 @@ AcpiDmIsResourceTemplate (
return (AE_TYPE);
}
+ /*
+ * Check if this op was allocated from the extended parse object cache.
+ * Only extended ops (NAMED_OBJECT, DEFERRED, BYTELIST) have the
+ * Named.Data and Named.Length fields. Generic ops would overflow.
+ */
+ if (NextOp->Common.Flags == ACPI_PARSEOP_GENERIC)
+ {
+ return (AE_TYPE);
+ }
+
Aml = NextOp->Named.Data;
BufferLength = NextOp->Common.Value.Size;
/*
+ * Validate BufferLength against Named.Length to prevent reading
+ * beyond the actual data. Named.Length is computed during parsing
+ * and represents the actual byte count, while Value.Size comes
+ * from the AML and can be manipulated by malformed AML.
+ */
+ if (BufferLength > NextOp->Named.Length)
+ {
+ return (AE_TYPE);
+ }
+
+ /*
* Any buffer smaller than one byte cannot possibly be a resource
* template. Two bytes could possibly be a "NULL" resource template
* with a lone end tag descriptor (as generated via
diff --git a/source/components/disassembler/dmresrcl.c b/source/components/disassembler/dmresrcl.c
index c8c77c611f97..96faf1966859 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/disassembler/dmresrcl2.c b/source/components/disassembler/dmresrcl2.c
index ecd049fc0c77..946bb1f887f8 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/disassembler/dmresrcs.c b/source/components/disassembler/dmresrcs.c
index acfbdb76612c..72a2b7d3aa95 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/disassembler/dmutils.c b/source/components/disassembler/dmutils.c
index 987d456522cd..3dd095df8b40 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/disassembler/dmwalk.c b/source/components/disassembler/dmwalk.c
index b738417b05cc..b57b6a5409ed 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -305,13 +305,6 @@ AcpiDmWalkParseTree (
}
}
- /* Terminate walk at start op */
-
- if (Op == StartOp)
- {
- break;
- }
-
/* No more children, re-visit this node */
if (!NodePreviouslyVisited)
@@ -320,6 +313,13 @@ AcpiDmWalkParseTree (
continue;
}
+ /* Terminate walk at start op */
+
+ if (Op == StartOp)
+ {
+ break;
+ }
+
/* No more children, visit peers */
if (Op->Common.Next)
diff --git a/source/components/dispatcher/dsargs.c b/source/components/dispatcher/dsargs.c
index 7fe605f1d180..04b0a66849f0 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/dispatcher/dscontrol.c b/source/components/dispatcher/dscontrol.c
index 3eaa6f3f8262..3cf2d0443942 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/dispatcher/dsdebug.c b/source/components/dispatcher/dsdebug.c
index 2bc7dc004f5c..89ad50015384 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/dispatcher/dsfield.c b/source/components/dispatcher/dsfield.c
index 15e35fd76f38..6d6deed9966f 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/dispatcher/dsinit.c b/source/components/dispatcher/dsinit.c
index 758233ec999c..aeca4eae94ad 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/dispatcher/dsmethod.c b/source/components/dispatcher/dsmethod.c
index 09745e120bc2..fc8917b324c0 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -901,6 +901,8 @@ AcpiDsTerminateControlMethod (
ACPI_OPERAND_OBJECT *MethodDesc,
ACPI_WALK_STATE *WalkState)
{
+ UINT32 i;
+ ACPI_NAMESPACE_NODE *RefNode;
ACPI_FUNCTION_TRACE_PTR (DsTerminateControlMethod, WalkState);
@@ -914,6 +916,45 @@ AcpiDsTerminateControlMethod (
if (WalkState)
{
+ /*
+ * Check if the return value is a RefOf reference to a method local
+ * or argument. If so, clear the reference to avoid use-after-free
+ * when the walk state is deleted.
+ */
+ if (WalkState->ReturnDesc &&
+ (WalkState->ReturnDesc->Common.Type == ACPI_TYPE_LOCAL_REFERENCE) &&
+ (WalkState->ReturnDesc->Reference.Class == ACPI_REFCLASS_REFOF))
+ {
+ RefNode = WalkState->ReturnDesc->Reference.Object;
+ if (RefNode)
+ {
+ /* Check against method locals */
+ for (i = 0; i < ACPI_METHOD_NUM_LOCALS; i++)
+ {
+ if (RefNode == &WalkState->LocalVariables[i])
+ {
+ AcpiUtRemoveReference (WalkState->ReturnDesc);
+ WalkState->ReturnDesc = NULL;
+ break;
+ }
+ }
+
+ /* Check against method arguments if not already cleared */
+ if (WalkState->ReturnDesc)
+ {
+ for (i = 0; i < ACPI_METHOD_NUM_ARGS; i++)
+ {
+ if (RefNode == &WalkState->Arguments[i])
+ {
+ AcpiUtRemoveReference (WalkState->ReturnDesc);
+ WalkState->ReturnDesc = NULL;
+ break;
+ }
+ }
+ }
+ }
+ }
+
/* Delete all arguments and locals */
AcpiDsMethodDataDeleteAll (WalkState);
diff --git a/source/components/dispatcher/dsmthdat.c b/source/components/dispatcher/dsmthdat.c
index 98e69efa1f05..6a9552df9e5f 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/dispatcher/dsobject.c b/source/components/dispatcher/dsobject.c
index 08d93ecd406b..2b8e75253e04 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/dispatcher/dsopcode.c b/source/components/dispatcher/dsopcode.c
index baba6805b363..88614790395d 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/dispatcher/dspkginit.c b/source/components/dispatcher/dspkginit.c
index 22f4a99ba276..5f1e8b0597a6 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/dispatcher/dsutils.c b/source/components/dispatcher/dsutils.c
index d2d16c4865f0..0919636cf2d6 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/dispatcher/dswexec.c b/source/components/dispatcher/dswexec.c
index bb1558ea312c..4b852fa233be 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/dispatcher/dswload.c b/source/components/dispatcher/dswload.c
index b4b7e512dbea..4c27b9a91431 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/dispatcher/dswload2.c b/source/components/dispatcher/dswload2.c
index 4ad4014a2811..b53850c0890c 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/dispatcher/dswscope.c b/source/components/dispatcher/dswscope.c
index 58cc75509897..ce48ddc5ce81 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/dispatcher/dswstate.c b/source/components/dispatcher/dswstate.c
index a5a63d01b1a7..01d4a29c6c7d 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/events/evevent.c b/source/components/events/evevent.c
index b2dd444a38a6..ba296d32dc52 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/events/evglock.c b/source/components/events/evglock.c
index 153a7ff0a21f..52ce050760e0 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/events/evgpe.c b/source/components/events/evgpe.c
index 01e628a29589..c5b4a4863306 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/events/evgpeblk.c b/source/components/events/evgpeblk.c
index 899e19b13990..234df2a9cce8 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/events/evgpeinit.c b/source/components/events/evgpeinit.c
index 5321950d51fa..5bea15f71c18 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/events/evgpeutil.c b/source/components/events/evgpeutil.c
index 32e7c0fa3274..de12a826f2e1 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/events/evhandler.c b/source/components/events/evhandler.c
index efc466462f85..bc04cf6fc217 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -290,6 +290,13 @@ AcpiEvHasDefaultHandler (
while (HandlerObj)
{
+ /* Validate handler object type before accessing fields */
+
+ if (HandlerObj->Common.Type != ACPI_TYPE_LOCAL_ADDRESS_HANDLER)
+ {
+ break;
+ }
+
if (HandlerObj->AddressSpace.SpaceId == SpaceId)
{
if (HandlerObj->AddressSpace.HandlerFlags &
@@ -460,6 +467,11 @@ AcpiEvFindRegionHandler (
while (HandlerObj)
{
+ if (HandlerObj->Common.Type != ACPI_TYPE_LOCAL_ADDRESS_HANDLER)
+ {
+ break;
+ }
+
/* Same SpaceId indicates a handler is installed */
if (HandlerObj->AddressSpace.SpaceId == SpaceId)
diff --git a/source/components/events/evmisc.c b/source/components/events/evmisc.c
index d2e751d0192b..31ee8f24e602 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/events/evregion.c b/source/components/events/evregion.c
index 757983b35b76..1fe34495a43a 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/events/evrgnini.c b/source/components/events/evrgnini.c
index d8d09cdd0dc4..2d9c2932377b 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/events/evsci.c b/source/components/events/evsci.c
index 1c8352f5cf77..709c81776062 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/events/evxface.c b/source/components/events/evxface.c
index 2d334fd455fb..233b205edb46 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/events/evxfevnt.c b/source/components/events/evxfevnt.c
index 9e7972eae8f6..84158bb084cd 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/events/evxfgpe.c b/source/components/events/evxfgpe.c
index bda4e6e93bf4..642f35d3213a 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/events/evxfregn.c b/source/components/events/evxfregn.c
index 04c880183aaf..3b3027531a77 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exconcat.c b/source/components/executer/exconcat.c
index 3010d9d4d0b7..93f114b8cd03 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exconfig.c b/source/components/executer/exconfig.c
index 2edf1577ffd5..f9fec826db25 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -247,6 +247,8 @@ AcpiExLoadTableOp (
ACPI_OPERAND_OBJECT *ReturnObj;
ACPI_OPERAND_OBJECT *DdbHandle;
UINT32 TableIndex;
+ char OemId[ACPI_OEM_ID_SIZE + 1];
+ char OemTableId[ACPI_OEM_TABLE_ID_SIZE + 1];
ACPI_FUNCTION_TRACE (ExLoadTableOp);
@@ -262,13 +264,34 @@ AcpiExLoadTableOp (
*ReturnDesc = ReturnObj;
+ /*
+ * Validate OEM ID and OEM Table ID string lengths.
+ * AcpiTbFindTable expects strings that can safely read
+ * ACPI_OEM_ID_SIZE and ACPI_OEM_TABLE_ID_SIZE bytes.
+ */
+ if ((Operand[1]->String.Length > ACPI_OEM_ID_SIZE) ||
+ (Operand[2]->String.Length > ACPI_OEM_TABLE_ID_SIZE))
+ {
+ return_ACPI_STATUS (AE_AML_STRING_LIMIT);
+ }
+
+ /*
+ * Copy OEM strings to local buffers with guaranteed null-termination.
+ * This prevents heap-buffer-overflow when AcpiTbFindTable reads
+ * ACPI_OEM_ID_SIZE/ACPI_OEM_TABLE_ID_SIZE bytes.
+ */
+ memcpy (OemId, Operand[1]->String.Pointer, Operand[1]->String.Length);
+ OemId[Operand[1]->String.Length] = 0;
+ memcpy (OemTableId, Operand[2]->String.Pointer, Operand[2]->String.Length);
+ OemTableId[Operand[2]->String.Length] = 0;
+
/* Find the ACPI table in the RSDT/XSDT */
AcpiExExitInterpreter ();
Status = AcpiTbFindTable (
Operand[0]->String.Pointer,
- Operand[1]->String.Pointer,
- Operand[2]->String.Pointer, &TableIndex);
+ OemId,
+ OemTableId, &TableIndex);
AcpiExEnterInterpreter ();
if (ACPI_FAILURE (Status))
{
diff --git a/source/components/executer/exconvrt.c b/source/components/executer/exconvrt.c
index 31666876daf3..a2890f21a825 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/excreate.c b/source/components/executer/excreate.c
index de0bf9e3625f..f78c7e53f69b 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exdebug.c b/source/components/executer/exdebug.c
index 17e14d8098fb..7660f6a8e85b 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exdump.c b/source/components/executer/exdump.c
index a6d1e420eb51..a3c8e76ca83d 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exfield.c b/source/components/executer/exfield.c
index 4f4e7043ad65..ac968acf5eda 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exfldio.c b/source/components/executer/exfldio.c
index b81235c2451e..a1e955a9edd1 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exmisc.c b/source/components/executer/exmisc.c
index b24720c61230..befd8a998e80 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exmutex.c b/source/components/executer/exmutex.c
index ba0ffe66fcf1..6f454ad48030 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exnames.c b/source/components/executer/exnames.c
index 46996ba50c32..4dcf6c07c2fc 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exoparg1.c b/source/components/executer/exoparg1.c
index 339c4d3c8ccf..95182a3f00eb 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exoparg2.c b/source/components/executer/exoparg2.c
index 83b2d480bca2..2501994e3b9b 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exoparg3.c b/source/components/executer/exoparg3.c
index 722bbec46521..e42317ab3039 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -225,11 +225,18 @@ AcpiExOpcode_3A_0T_0R (
AcpiOsSignal (ACPI_SIGNAL_FATAL, &Fatal);
+#ifndef ACPI_CONTINUE_ON_FATAL
/*
* Might return while OS is shutting down, so abort the AML execution
* by returning an error.
*/
return_ACPI_STATUS (AE_ERROR);
+#else
+ /*
+ * The alstests require that the Fatal() opcode does not return an error.
+ */
+ return_ACPI_STATUS (AE_OK);
+#endif
case AML_EXTERNAL_OP:
/*
@@ -313,7 +320,8 @@ AcpiExOpcode_3A_1T_1R (
/* Truncate request if larger than the actual String/Buffer */
- else if ((Index + Length) > Operand[0]->String.Length)
+ else if ((Index + Length) > Operand[0]->String.Length ||
+ (Index + Length) < Index) /* Check for overflow */
{
Length =
(ACPI_SIZE) Operand[0]->String.Length - (ACPI_SIZE) Index;
diff --git a/source/components/executer/exoparg6.c b/source/components/executer/exoparg6.c
index 00ca4f727540..85c1e2db839e 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exprep.c b/source/components/executer/exprep.c
index c022231dea1d..0673adbd9ef6 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exregion.c b/source/components/executer/exregion.c
index 32cec4d38ebe..0a9d89638ac0 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exresnte.c b/source/components/executer/exresnte.c
index 319d81eee522..1bfe167aa65b 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exresolv.c b/source/components/executer/exresolv.c
index 6dc658cff8c1..4481ba54c605 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exresop.c b/source/components/executer/exresop.c
index 2bc79bea248d..eaa669f5f4f6 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exserial.c b/source/components/executer/exserial.c
index f5740276766f..0a40abc2ced8 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exstore.c b/source/components/executer/exstore.c
index f39769119fcd..a0d8fe5b794e 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exstoren.c b/source/components/executer/exstoren.c
index 71d0ad10dfdc..26f5a78870fe 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exstorob.c b/source/components/executer/exstorob.c
index 026ab5bd2bc8..74137617d7a4 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exsystem.c b/source/components/executer/exsystem.c
index 1f42625a60fa..c21cfe1e26fd 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/extrace.c b/source/components/executer/extrace.c
index 2d596f2b57e4..86b06261df60 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/executer/exutils.c b/source/components/executer/exutils.c
index f7472a299e1f..cc38a66e0bbd 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/hardware/hwacpi.c b/source/components/hardware/hwacpi.c
index 21081dc4a37f..4b9c04e769ab 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/hardware/hwesleep.c b/source/components/hardware/hwesleep.c
index c6ed4246eb61..da0384aed826 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/hardware/hwgpe.c b/source/components/hardware/hwgpe.c
index bb4ebc0225ec..1209965a1f7c 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/hardware/hwpci.c b/source/components/hardware/hwpci.c
index 32fb6af53fb3..122b8784cb63 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/hardware/hwregs.c b/source/components/hardware/hwregs.c
index de375d9972e3..0bee958057bd 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/hardware/hwsleep.c b/source/components/hardware/hwsleep.c
index bb38234ec7f7..83b31db44892 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/hardware/hwtimer.c b/source/components/hardware/hwtimer.c
index 68cf627093c6..20a9774a6389 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/hardware/hwvalid.c b/source/components/hardware/hwvalid.c
index 0dfe4d2577ad..34f55dba257c 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/hardware/hwxface.c b/source/components/hardware/hwxface.c
index 5075fdcff9f0..7766397a3a83 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/hardware/hwxfsleep.c b/source/components/hardware/hwxfsleep.c
index eefc239bcb92..70929451a1d2 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsaccess.c b/source/components/namespace/nsaccess.c
index 5f044e198543..077aa93751a0 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsalloc.c b/source/components/namespace/nsalloc.c
index d4ff32d59654..8098277691b6 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsarguments.c b/source/components/namespace/nsarguments.c
index 6676abe07293..513fc1148c67 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsconvert.c b/source/components/namespace/nsconvert.c
index ae039a10264d..d5da6f015bc8 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsdump.c b/source/components/namespace/nsdump.c
index e3db14a11e17..c44c9ccfde7d 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsdumpdv.c b/source/components/namespace/nsdumpdv.c
index 86471b854af1..a3d75f44a3ee 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nseval.c b/source/components/namespace/nseval.c
index 98353ea6c671..a46c6b92f556 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsinit.c b/source/components/namespace/nsinit.c
index 50a2290ac3d8..9dd898e56fd4 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsload.c b/source/components/namespace/nsload.c
index 5e90b3b6ed9d..e733b5ed7038 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsnames.c b/source/components/namespace/nsnames.c
index 64a9109cf5d4..982ea66846cd 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -400,6 +400,13 @@ AcpiNsBuildNormalizedPath (
goto BuildTrailingNull;
}
+ /* Validate the Node to avoid use-after-free vulnerabilities */
+
+ if (ACPI_GET_DESCRIPTOR_TYPE (Node) != ACPI_DESC_TYPE_NAMED)
+ {
+ goto BuildTrailingNull;
+ }
+
NextNode = Node;
while (NextNode && NextNode != AcpiGbl_RootNode)
{
diff --git a/source/components/namespace/nsobject.c b/source/components/namespace/nsobject.c
index aec3991bd388..f08e53214005 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -336,6 +336,13 @@ AcpiNsDetachObject (
ObjDesc = Node->Object;
+ /* Alias nodes point directly to other namespace nodes; skip teardown */
+ if (Node->Flags & ANOBJ_IS_ALIAS)
+ {
+ Node->Object = NULL;
+ return_VOID;
+ }
+
if (!ObjDesc ||
(ObjDesc->Common.Type == ACPI_TYPE_LOCAL_DATA))
{
diff --git a/source/components/namespace/nsparse.c b/source/components/namespace/nsparse.c
index 32c7d3088902..f5246446c857 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nspredef.c b/source/components/namespace/nspredef.c
index 7a0e5005e3c8..19e904796bea 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsprepkg.c b/source/components/namespace/nsprepkg.c
index e26269aaed25..f5eafc2a2cf2 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -779,6 +779,13 @@ AcpiNsCustomPackage (
/* Get version number, must be Integer */
+ if (!(*Elements))
+ {
+ ACPI_WARN_PREDEFINED ((AE_INFO, Info->FullPathname, Info->NodeFlags,
+ "Return Package has a NULL version element"));
+ return_ACPI_STATUS (AE_AML_OPERAND_TYPE);
+ }
+
if ((*Elements)->Common.Type != ACPI_TYPE_INTEGER)
{
ACPI_WARN_PREDEFINED ((AE_INFO, Info->FullPathname, Info->NodeFlags,
diff --git a/source/components/namespace/nsrepair.c b/source/components/namespace/nsrepair.c
index 21f0c9205758..3a612bc16da3 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsrepair2.c b/source/components/namespace/nsrepair2.c
index 0b43412b4e76..be5127c96cf1 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nssearch.c b/source/components/namespace/nssearch.c
index df61f280ea01..cf6cceb35303 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsutils.c b/source/components/namespace/nsutils.c
index 5f9faa8e3728..312c62d153ac 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nswalk.c b/source/components/namespace/nswalk.c
index ca5f39475ef9..f03d332cd598 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsxfeval.c b/source/components/namespace/nsxfeval.c
index 244817c5818a..182f3aaa80f8 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsxfname.c b/source/components/namespace/nsxfname.c
index 939ad04d514e..49dc017a7261 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/namespace/nsxfobj.c b/source/components/namespace/nsxfobj.c
index aa906f9ecba0..9191d94df7c6 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/parser/psargs.c b/source/components/parser/psargs.c
index 36afbd73bad4..e9dadf4a40ad 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -197,6 +197,7 @@ AcpiPsGetNextPackageLength (
UINT32 PackageLength = 0;
UINT32 ByteCount;
UINT8 ByteZeroMask = 0x3F; /* Default [0:5] */
+ UINT32 Remaining;
ACPI_FUNCTION_TRACE (PsGetNextPackageLength);
@@ -206,7 +207,24 @@ AcpiPsGetNextPackageLength (
* Byte 0 bits [6:7] contain the number of additional bytes
* used to encode the package length, either 0,1,2, or 3
*/
+
+ /* Check if we have at least one byte to read */
+ Remaining = (UINT32) ACPI_PTR_DIFF (ParserState->AmlEnd, Aml);
+ if (Remaining == 0)
+ {
+ return_UINT32 (0);
+ }
+
ByteCount = (Aml[0] >> 6);
+
+ /* Validate ByteCount and ensure we have enough bytes to read */
+ if (ByteCount >= Remaining)
+ {
+ /* Clamp to available bytes and advance to end */
+ ParserState->Aml = ParserState->AmlEnd;
+ return_UINT32 (0);
+ }
+
ParserState->Aml += ((ACPI_SIZE) ByteCount + 1);
/* Get bytes 3, 2, 1 as needed */
@@ -545,6 +563,8 @@ AcpiPsGetNextSimpleArg (
UINT32 Length;
UINT16 Opcode;
UINT8 *Aml = ParserState->Aml;
+ UINT32 Remaining = (UINT32) ACPI_PTR_DIFF (ParserState->AmlEnd, Aml);
+ UINT64 PartialValue;
ACPI_FUNCTION_TRACE_U32 (PsGetNextSimpleArg, ArgType);
@@ -557,8 +577,16 @@ AcpiPsGetNextSimpleArg (
/* Get 1 byte from the AML stream */
Opcode = AML_BYTE_OP;
- Arg->Common.Value.Integer = (UINT64) *Aml;
- Length = 1;
+ if (Remaining >= 1)
+ {
+ Arg->Common.Value.Integer = (UINT64) *Aml;
+ Length = 1;
+ }
+ else
+ {
+ Arg->Common.Value.Integer = 0;
+ Length = 0;
+ }
break;
case ARGP_WORDDATA:
@@ -566,8 +594,23 @@ AcpiPsGetNextSimpleArg (
/* Get 2 bytes from the AML stream */
Opcode = AML_WORD_OP;
- ACPI_MOVE_16_TO_64 (&Arg->Common.Value.Integer, Aml);
- Length = 2;
+ if (Remaining >= 2)
+ {
+ ACPI_MOVE_16_TO_64 (&Arg->Common.Value.Integer, Aml);
+ Length = 2;
+ }
+ else
+ {
+ Arg->Common.Value.Integer = 0;
+ Length = 0;
+ if (Remaining > 0)
+ {
+ PartialValue = 0;
+ memcpy (&PartialValue, Aml, Remaining);
+ Arg->Common.Value.Integer = PartialValue;
+ Length = Remaining;
+ }
+ }
break;
case ARGP_DWORDDATA:
@@ -575,8 +618,23 @@ AcpiPsGetNextSimpleArg (
/* Get 4 bytes from the AML stream */
Opcode = AML_DWORD_OP;
- ACPI_MOVE_32_TO_64 (&Arg->Common.Value.Integer, Aml);
- Length = 4;
+ if (Remaining >= 4)
+ {
+ ACPI_MOVE_32_TO_64 (&Arg->Common.Value.Integer, Aml);
+ Length = 4;
+ }
+ else
+ {
+ Arg->Common.Value.Integer = 0;
+ Length = 0;
+ if (Remaining > 0)
+ {
+ PartialValue = 0;
+ memcpy (&PartialValue, Aml, Remaining);
+ Arg->Common.Value.Integer = PartialValue;
+ Length = Remaining;
+ }
+ }
break;
case ARGP_QWORDDATA:
@@ -584,8 +642,23 @@ AcpiPsGetNextSimpleArg (
/* Get 8 bytes from the AML stream */
Opcode = AML_QWORD_OP;
- ACPI_MOVE_64_TO_64 (&Arg->Common.Value.Integer, Aml);
- Length = 8;
+ if (Remaining >= 8)
+ {
+ ACPI_MOVE_64_TO_64 (&Arg->Common.Value.Integer, Aml);
+ Length = 8;
+ }
+ else
+ {
+ Arg->Common.Value.Integer = 0;
+ Length = 0;
+ if (Remaining > 0)
+ {
+ PartialValue = 0;
+ memcpy (&PartialValue, Aml, Remaining);
+ Arg->Common.Value.Integer = PartialValue;
+ Length = Remaining;
+ }
+ }
break;
case ARGP_CHARLIST:
@@ -598,11 +671,32 @@ AcpiPsGetNextSimpleArg (
/* Find the null terminator */
Length = 0;
- while (Aml[Length])
+ while ((Length < Remaining) && Aml[Length])
+ {
+ Length++;
+ }
+ if (Length < Remaining)
{
+ /* Account for the terminating null */
Length++;
}
- Length++;
+ else
+ {
+ /*
+ * No terminator found - add null at buffer boundary
+ * and report a warning
+ */
+ ACPI_WARNING ((AE_INFO,
+ "Invalid AML string: no null terminator, truncating at offset %u",
+ (UINT32) (Aml - ParserState->Aml)));
+
+ /* Add null terminator at the boundary */
+ if (Remaining > 0)
+ {
+ Aml[Remaining - 1] = 0;
+ Length = Remaining;
+ }
+ }
break;
case ARGP_NAME:
@@ -659,6 +753,11 @@ AcpiPsGetNextField (
ASL_CV_CAPTURE_COMMENTS_ONLY (ParserState);
Aml = ParserState->Aml;
+ if (Aml >= ParserState->AmlEnd)
+ {
+ return_PTR (NULL);
+ }
+
/* Determine field type */
switch (ACPI_GET8 (ParserState->Aml))
@@ -710,6 +809,11 @@ AcpiPsGetNextField (
/* Get the 4-character name */
+ if ((ParserState->Aml + ACPI_NAMESEG_SIZE) > ParserState->AmlEnd)
+ {
+ AcpiPsFreeOp (Field);
+ return_PTR (NULL);
+ }
ACPI_MOVE_32_TO_32 (&Name, ParserState->Aml);
AcpiPsSetName (Field, Name);
ParserState->Aml += ACPI_NAMESEG_SIZE;
@@ -756,6 +860,11 @@ AcpiPsGetNextField (
/* Get the two bytes (Type/Attribute) */
+ if ((ParserState->Aml + 2) > ParserState->AmlEnd)
+ {
+ AcpiPsFreeOp (Field);
+ return_PTR (NULL);
+ }
AccessType = ACPI_GET8 (ParserState->Aml);
ParserState->Aml++;
AccessAttribute = ACPI_GET8 (ParserState->Aml);
@@ -768,6 +877,11 @@ AcpiPsGetNextField (
if (Opcode == AML_INT_EXTACCESSFIELD_OP)
{
+ if (ParserState->Aml >= ParserState->AmlEnd)
+ {
+ AcpiPsFreeOp (Field);
+ return_PTR (NULL);
+ }
AccessLength = ACPI_GET8 (ParserState->Aml);
ParserState->Aml++;
diff --git a/source/components/parser/psloop.c b/source/components/parser/psloop.c
index d46eb6aff46a..58719d974408 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -566,7 +566,8 @@ AcpiPsParseLoop (
WalkState->Aml = ParserState->Aml;
ACPI_ERROR ((AE_INFO, "Skipping While/If block"));
- if (*WalkState->Aml == AML_ELSE_OP)
+ if ((WalkState->Aml < ParserState->AmlEnd) &&
+ (*WalkState->Aml == AML_ELSE_OP))
{
ACPI_ERROR ((AE_INFO, "Skipping Else block"));
WalkState->ParserState.Aml = WalkState->Aml + 1;
diff --git a/source/components/parser/psobject.c b/source/components/parser/psobject.c
index 146a487995ce..aa1ea040456e 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/parser/psopcode.c b/source/components/parser/psopcode.c
index 9da094f1eafd..ef373a19d11d 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/parser/psopinfo.c b/source/components/parser/psopinfo.c
index dcc426ff1c7b..45bf1b07cd86 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/parser/psparse.c b/source/components/parser/psparse.c
index 5b6ddc7d0f84..6d4f62473335 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/parser/psscope.c b/source/components/parser/psscope.c
index 5a10f8c9b84c..e30a906cc2ef 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/parser/pstree.c b/source/components/parser/pstree.c
index 71485e77fbaf..e05a5d661b89 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/parser/psutils.c b/source/components/parser/psutils.c
index b040ef0ccd89..616b3cb9eb43 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/parser/pswalk.c b/source/components/parser/pswalk.c
index 093da84e6c83..06d8435c53c5 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -198,7 +198,7 @@ AcpiPsDeleteParseTree (
{
/* This debug option will print the entire parse tree */
- AcpiOsPrintf (" %*.s%s %p", (Level * 4), " ",
+ AcpiOsPrintf (" %*s%s %p", (Level * 4), "",
AcpiPsGetOpcodeName (Op->Common.AmlOpcode), Op);
if (Op->Named.AmlOpcode == AML_INT_NAMEPATH_OP)
diff --git a/source/components/parser/psxface.c b/source/components/parser/psxface.c
index 818be3a850c6..ec0fa756fa50 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/resources/rsaddr.c b/source/components/resources/rsaddr.c
index 8c3eb456f687..e3c06a851b40 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/resources/rscalc.c b/source/components/resources/rscalc.c
index 581803865206..b7e73fea0478 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/resources/rscreate.c b/source/components/resources/rscreate.c
index ac2bf12dbb72..01f188bcb270 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/resources/rsdump.c b/source/components/resources/rsdump.c
index 56933b94093f..6bd78e9c94c9 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/resources/rsdumpinfo.c b/source/components/resources/rsdumpinfo.c
index 9528d4c9fe93..b370cf71b88a 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/resources/rsinfo.c b/source/components/resources/rsinfo.c
index f8d51c01fc16..a269975b52e6 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/resources/rsio.c b/source/components/resources/rsio.c
index cfb078e79415..7cd3eefef719 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/resources/rsirq.c b/source/components/resources/rsirq.c
index ddf964717350..74f62c6130f4 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/resources/rslist.c b/source/components/resources/rslist.c
index 779f9626ea54..0462dec81d6f 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/resources/rsmemory.c b/source/components/resources/rsmemory.c
index d44dffacb23e..1e9d9d84567a 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/resources/rsmisc.c b/source/components/resources/rsmisc.c
index fa256ed4942b..665559f780e2 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/resources/rsserial.c b/source/components/resources/rsserial.c
index add26305ee46..87c9bed93e1e 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -447,7 +447,7 @@ ACPI_RSCONVERT_INFO AcpiRsConvertCsi2SerialBus[14] =
*
******************************************************************************/
-ACPI_RSCONVERT_INFO AcpiRsConvertI2cSerialBus[17] =
+ACPI_RSCONVERT_INFO AcpiRsConvertI2cSerialBus[18] =
{
{ACPI_RSC_INITGET, ACPI_RESOURCE_TYPE_SERIAL_BUS,
ACPI_RS_SIZE (ACPI_RESOURCE_I2C_SERIALBUS),
@@ -515,6 +515,11 @@ ACPI_RSCONVERT_INFO AcpiRsConvertI2cSerialBus[17] =
AML_OFFSET (I2cSerialBus.TypeSpecificFlags),
0},
+ /* Read LVR from Type Specific Flags, bits[15:8] */
+ {ACPI_RSC_MOVE8, ACPI_RS_OFFSET (Data.I2cSerialBus.Lvr),
+ AML_OFFSET (I2cSerialBus.TypeSpecificFlags) + 1,
+ 1},
+
{ACPI_RSC_MOVE32, ACPI_RS_OFFSET (Data.I2cSerialBus.ConnectionSpeed),
AML_OFFSET (I2cSerialBus.ConnectionSpeed),
1},
diff --git a/source/components/resources/rsutils.c b/source/components/resources/rsutils.c
index 0faac38e913d..56ebdd2afe36 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/resources/rsxface.c b/source/components/resources/rsxface.c
index ad9783b7fb81..ef384ce21353 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/tables/tbdata.c b/source/components/tables/tbdata.c
index b371f3e259fa..83420e85aab4 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/tables/tbfadt.c b/source/components/tables/tbfadt.c
index 002b69254f85..35558a4fcda6 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -736,8 +736,11 @@ AcpiTbConvertFadt (
* Note: If the legacy length field is > 0xFF bits, ignore
* this check. (GPE registers can be larger than the
* 64-bit GAS structure can accommodate, 0xFF bits).
+ * Also skip if BitWidth is 0, indicating the 64-bit field
+ * was not populated - legacy length will be used instead.
*/
if ((ACPI_MUL_8 (Length) <= ACPI_UINT8_MAX) &&
+ (Address64->BitWidth != 0) &&
(Address64->BitWidth != ACPI_MUL_8 (Length)))
{
ACPI_BIOS_WARNING ((AE_INFO,
diff --git a/source/components/tables/tbfind.c b/source/components/tables/tbfind.c
index 6c88e1eaf8d7..03280fab4ec9 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/tables/tbinstal.c b/source/components/tables/tbinstal.c
index bd606170c65f..3d61d08ca9a5 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/tables/tbprint.c b/source/components/tables/tbprint.c
index 72dab8dafab2..0ba178510e43 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/tables/tbutils.c b/source/components/tables/tbutils.c
index 2aeb296e7a98..893e22175c9f 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/tables/tbxface.c b/source/components/tables/tbxface.c
index 783567cef38e..b407ebaa5a5c 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/tables/tbxfload.c b/source/components/tables/tbxfload.c
index 8a61d50f6686..52d279bd46fc 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/tables/tbxfroot.c b/source/components/tables/tbxfroot.c
index 63cf27e7b2ce..fd20b1d96468 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utaddress.c b/source/components/utilities/utaddress.c
index 6d1b9aa48189..d1c3044d1530 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utalloc.c b/source/components/utilities/utalloc.c
index ae3c6a93649a..8b7f2a8754b6 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utascii.c b/source/components/utilities/utascii.c
index 05918b1696b0..c989eb82bf7a 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utbuffer.c b/source/components/utilities/utbuffer.c
index b08d260b83f1..f73dd33b9071 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utcache.c b/source/components/utilities/utcache.c
index 2f80c77f63e7..ee18374dda1a 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utcksum.c b/source/components/utilities/utcksum.c
index 5469075c6ba6..e1391d16e415 100644
--- a/source/components/utilities/utcksum.c
+++ b/source/components/utilities/utcksum.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utclib.c b/source/components/utilities/utclib.c
index cf1acf0e5afd..1eab64322ede 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utcopy.c b/source/components/utilities/utcopy.c
index 338b9f9c0c07..f5163a15a14b 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -918,7 +918,16 @@ AcpiUtCopySimpleObject (
break;
}
- AcpiUtAddReference (SourceDesc->Reference.Object);
+ /*
+ * Local/Arg/Debug references do not have a valid Object pointer
+ * that can be referenced
+ */
+ if ((SourceDesc->Reference.Class != ACPI_REFCLASS_LOCAL) &&
+ (SourceDesc->Reference.Class != ACPI_REFCLASS_ARG) &&
+ (SourceDesc->Reference.Class != ACPI_REFCLASS_DEBUG))
+ {
+ AcpiUtAddReference (SourceDesc->Reference.Object);
+ }
break;
case ACPI_TYPE_REGION:
diff --git a/source/components/utilities/utdebug.c b/source/components/utilities/utdebug.c
index 0c7dd83292c7..be83f1136491 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utdecode.c b/source/components/utilities/utdecode.c
index 4f26e3aa3139..00c8fdaf2e93 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utdelete.c b/source/components/utilities/utdelete.c
index 868ad0e580a6..b567a304f82c 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/uterror.c b/source/components/utilities/uterror.c
index 6502794cf5b2..d92b31af76ef 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/uteval.c b/source/components/utilities/uteval.c
index d33d73655a22..cd5a5cf99527 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utexcep.c b/source/components/utilities/utexcep.c
index aa0ff78d4953..28333c7241ca 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utglobal.c b/source/components/utilities/utglobal.c
index 2b953ddac14f..96e884cb1b5e 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/uthex.c b/source/components/utilities/uthex.c
index 7343b99c420e..79544aa49646 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utids.c b/source/components/utilities/utids.c
index 9d9b07584747..0ad511747e4d 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utinit.c b/source/components/utilities/utinit.c
index 2299f58dd162..ccd2e1539957 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utlock.c b/source/components/utilities/utlock.c
index c7ee5a575bed..9886c49a9ab9 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utmath.c b/source/components/utilities/utmath.c
index a3692d725b8a..faf063024de2 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utmisc.c b/source/components/utilities/utmisc.c
index 7c0f9810204f..3e47633d8ed4 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utmutex.c b/source/components/utilities/utmutex.c
index bc1a43afc062..dc5c02bdc860 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utnonansi.c b/source/components/utilities/utnonansi.c
index 76fa07f6df2f..9855d8c389c6 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utobject.c b/source/components/utilities/utobject.c
index 3278f0578c13..fb3468f79da4 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utosi.c b/source/components/utilities/utosi.c
index 6e034eb35816..de99801a8ed9 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utownerid.c b/source/components/utilities/utownerid.c
index 31c6db05a474..e9caf194e67c 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utpredef.c b/source/components/utilities/utpredef.c
index 1bda772a06d2..97b6b6d5706b 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utresdecode.c b/source/components/utilities/utresdecode.c
index 070552fc4c93..36ed3bbd8fd5 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utresrc.c b/source/components/utilities/utresrc.c
index c952e7621d5d..727fb89a1949 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -322,6 +322,29 @@ AcpiUtWalkAmlResources (
while (Aml < EndAml)
{
+ /*
+ * Validate that the remaining buffer space can hold enough
+ * bytes to safely access fields during validation.
+ * For large resource descriptors (bit 7 set), we need enough
+ * bytes to access the Type field in SerialBus resources.
+ * Small resource descriptors only need sizeof(AML_RESOURCE_END_TAG).
+ */
+ if ((ACPI_SIZE) (EndAml - Aml) < sizeof (AML_RESOURCE_END_TAG))
+ {
+ return_ACPI_STATUS (AE_AML_BUFFER_LENGTH);
+ }
+
+ /*
+ * For large resource descriptors, ensure enough space for
+ * the header plus SerialBus Type field access.
+ */
+ if ((ACPI_GET8 (Aml) & ACPI_RESOURCE_NAME_LARGE) &&
+ ((ACPI_SIZE) (EndAml - Aml) <
+ ACPI_OFFSET (AML_RESOURCE_COMMON_SERIALBUS, Type) + 1))
+ {
+ return_ACPI_STATUS (AE_AML_BUFFER_LENGTH);
+ }
+
/* Validate the Resource Type and Resource Length */
Status = AcpiUtValidateResource (WalkState, Aml, &ResourceIndex);
@@ -338,6 +361,15 @@ AcpiUtWalkAmlResources (
Length = AcpiUtGetDescriptorLength (Aml);
+ /*
+ * Validate that the descriptor length doesn't exceed the
+ * remaining buffer size to prevent reading beyond the end.
+ */
+ if (Length > (ACPI_SIZE) (EndAml - Aml))
+ {
+ return_ACPI_STATUS (AE_AML_BUFFER_LENGTH);
+ }
+
/* Invoke the user function */
if (UserFunction)
diff --git a/source/components/utilities/utstate.c b/source/components/utilities/utstate.c
index 1dbecba74da7..7ce23cc909bf 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utstring.c b/source/components/utilities/utstring.c
index 19ddd2581eac..8dae542d924c 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utstrsuppt.c b/source/components/utilities/utstrsuppt.c
index 0c96520d4b2c..76e481daa6ea 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utstrtoul64.c b/source/components/utilities/utstrtoul64.c
index 8b927db677de..9f1cdb760e0d 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/uttrack.c b/source/components/utilities/uttrack.c
index fa5c49fbcf98..bee105d1f72e 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utuuid.c b/source/components/utilities/utuuid.c
index 5eacf9fc6d03..a29220d39f98 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utxface.c b/source/components/utilities/utxface.c
index 5e10fc23c528..72d36eb18a66 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utxferror.c b/source/components/utilities/utxferror.c
index 43e940f636b7..a4f0887a34d9 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utxfinit.c b/source/components/utilities/utxfinit.c
index 8c6da2fba74d..1cdb24594aa5 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/components/utilities/utxfmutex.c b/source/components/utilities/utxfmutex.c
index b82a4a95490a..6d94f45d87c7 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acapps.h b/source/include/acapps.h
index ccaea124afb1..be9bfdfc4857 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, 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 - 2025 Intel Corporation"
+#define ACPICA_COPYRIGHT "Copyright (c) 2000 - 2026 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 682ddcd72625..2a88d9789c5f 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acclib.h b/source/include/acclib.h
index 3960ffd2582e..d6c81823f354 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/accommon.h b/source/include/accommon.h
index 7da7cf757409..2e841088970b 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acconfig.h b/source/include/acconfig.h
index 983dc3021185..e139f5837008 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acconvert.h b/source/include/acconvert.h
index 9dedc51a7ef9..ac2e3f9c3a30 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acdebug.h b/source/include/acdebug.h
index 05225eeffec3..d69b1558e763 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acdisasm.h b/source/include/acdisasm.h
index 5416d0b3f2bd..0fec2e54748a 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -467,6 +467,11 @@ extern ACPI_DMTABLE_INFO AcpiDmTableInfoDrtm0a[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoDrtm1[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoDrtm1a[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoDrtm2[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoDtpr[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoDtprInstance[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoDtprArr[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoDtprSerializeReq0[];
+extern ACPI_DMTABLE_INFO AcpiDmTableInfoDtprSerializeReq1[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoEcdt[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoEinj[];
extern ACPI_DMTABLE_INFO AcpiDmTableInfoEinj0[];
@@ -874,6 +879,10 @@ AcpiDmDumpDrtm (
ACPI_TABLE_HEADER *Table);
void
+AcpiDmDumpDtpr (
+ ACPI_TABLE_HEADER *Table);
+
+void
AcpiDmDumpEinj (
ACPI_TABLE_HEADER *Table);
diff --git a/source/include/acdispat.h b/source/include/acdispat.h
index 0573e5817dff..4d80aeba95cf 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acevents.h b/source/include/acevents.h
index 22eff360559c..c765abf7ffb3 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acexcep.h b/source/include/acexcep.h
index 7216e0d49148..643426fb47e6 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acglobal.h b/source/include/acglobal.h
index 02167c3af092..b77f5a0d0444 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/achware.h b/source/include/achware.h
index 46efffb50708..fa20fcd8092d 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acinterp.h b/source/include/acinterp.h
index b7f9e8f615e4..c0d372e52c64 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/aclocal.h b/source/include/aclocal.h
index ff18d617f79a..d9f126f0f6a1 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -332,6 +332,7 @@ typedef struct acpi_namespace_node
#define ANOBJ_IS_EXTERNAL 0x08 /* iASL only: This object created via External() */
#define ANOBJ_METHOD_NO_RETVAL 0x10 /* iASL only: Method has no return value */
#define ANOBJ_METHOD_SOME_NO_RETVAL 0x20 /* iASL only: Method has at least one return value */
+#define ANOBJ_IS_ALIAS 0x40 /* iASL only: Node is an alias to another node */
#define ANOBJ_IS_REFERENCED 0x80 /* iASL only: Object was referenced */
diff --git a/source/include/acmacros.h b/source/include/acmacros.h
index eabe403b3998..03ebb8848b5f 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acnames.h b/source/include/acnames.h
index 070e318fb8cc..24915ab7c407 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acnamesp.h b/source/include/acnamesp.h
index 41f704b3d74b..cc6b5989436f 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acobject.h b/source/include/acobject.h
index 95be1a95b4c7..739b981b43e1 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acopcode.h b/source/include/acopcode.h
index c8d17c3554d0..38e18f8593e4 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acoutput.h b/source/include/acoutput.h
index 49a466dba33a..c0c37ef611f0 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acparser.h b/source/include/acparser.h
index 8b3d3702f4a2..baf43876fb76 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acpi.h b/source/include/acpi.h
index 53120c948c9f..5260c0e778a3 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acpiosxf.h b/source/include/acpiosxf.h
index e16a51a57689..9faab24d2a50 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acpixf.h b/source/include/acpixf.h
index 67d60c68b6c5..a6c6e1bc2ac8 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -154,7 +154,7 @@
/* Current ACPICA subsystem version in YYYYMMDD format */
-#define ACPI_CA_VERSION 0x20251212
+#define ACPI_CA_VERSION 0x20260408
#include "acconfig.h"
#include "actypes.h"
diff --git a/source/include/acpredef.h b/source/include/acpredef.h
index 8cf6cf2dfcad..684c5a553e18 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -522,7 +522,7 @@ const ACPI_PREDEFINED_INFO AcpiGbl_PredefinedMethods[] =
{{"_CPC", METHOD_0ARGS,
METHOD_RETURNS (ACPI_RTYPE_PACKAGE)}}, /* Variable-length (Ints/Bufs) */
- PACKAGE_INFO (ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER | ACPI_RTYPE_BUFFER, 0,0,0,0),
+ PACKAGE_INFO (ACPI_PTYPE1_VAR, ACPI_RTYPE_INTEGER | ACPI_RTYPE_BUFFER | ACPI_RTYPE_PACKAGE, 0,0,0,0),
{{"_CR3", METHOD_0ARGS, /* ACPI 6.0 */
METHOD_RETURNS (ACPI_RTYPE_INTEGER)}},
@@ -587,7 +587,7 @@ const ACPI_PREDEFINED_INFO AcpiGbl_PredefinedMethods[] =
METHOD_RETURNS (ACPI_RTYPE_PACKAGE)}}, /* Variable-length (Pkgs) each: 1 Buf, 1 Pkg */
PACKAGE_INFO (ACPI_PTYPE2_UUID_PAIR, ACPI_RTYPE_BUFFER, 1, ACPI_RTYPE_PACKAGE, 1,0),
- {{"_DSM", METHOD_4ARGS (ACPI_TYPE_BUFFER, ACPI_TYPE_INTEGER, ACPI_TYPE_INTEGER, ACPI_TYPE_ANY | ACPI_TYPE_PACKAGE) | ARG_COUNT_IS_MINIMUM,
+ {{"_DSM", METHOD_4ARGS (ACPI_TYPE_BUFFER, ACPI_TYPE_INTEGER, ACPI_TYPE_INTEGER, ACPI_TYPE_PACKAGE | ACPI_TYPE_ANY) | ARG_COUNT_IS_MINIMUM,
METHOD_RETURNS (ACPI_RTYPE_ALL)}}, /* Must return a value, but it can be of any type */
{{"_DSS", METHOD_1ARGS (ACPI_TYPE_INTEGER),
diff --git a/source/include/acresrc.h b/source/include/acresrc.h
index e5a96d545ef1..d648194883da 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acrestyp.h b/source/include/acrestyp.h
index ab48a3911ae6..e9a20fa23e28 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -641,6 +641,7 @@ typedef struct acpi_resource_i2c_serialbus
UINT8 AccessMode;
UINT16 SlaveAddress;
UINT32 ConnectionSpeed;
+ UINT8 Lvr;
} ACPI_RESOURCE_I2C_SERIALBUS;
diff --git a/source/include/acstruct.h b/source/include/acstruct.h
index b1c54f09fe55..3c6ebfc2d179 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/actables.h b/source/include/actables.h
index 6f2cacbde3a1..edf3b80afc38 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/actbinfo.h b/source/include/actbinfo.h
index 0d80f67b6982..ff61c1861ee2 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -168,6 +168,7 @@
#define ACPI_DBGP_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_DBGP,f)
#define ACPI_DMAR_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_DMAR,f)
#define ACPI_DRTM_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_DRTM,f)
+#define ACPI_DTPR_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_DTPR,f)
#define ACPI_ECDT_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_ECDT,f)
#define ACPI_EINJ_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_EINJ,f)
#define ACPI_ERDT_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TABLE_ERDT,f)
@@ -284,6 +285,10 @@
#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)
#define ACPI_DRTM2_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_DRTM_DPS_ID,f)
+#define ACPI_DTPR_INST_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TPR_INSTANCE,f)
+#define ACPI_DTPR_ARR_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TPR_ARRAY,f)
+#define ACPI_DTPR_AUX_SR_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TPR_AUX_SR,f)
+#define ACPI_DTPR_SR_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_TPR_SERIALIZE_REQUEST,f)
#define ACPI_EINJ0_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_WHEA_HEADER,f)
#define ACPI_ERDT_HDR_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_SUBTBL_HDR_16,f)
#define ACPI_ERDT_CACD_OFFSET(f) (UINT16) ACPI_OFFSET (ACPI_ERDT_CACD,f)
@@ -496,6 +501,9 @@
#define ACPI_DMAR0_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_DMAR_HARDWARE_UNIT,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)
+#define ACPI_DTPR_BASE_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_TPRN_BASE_REG,f,o)
+#define ACPI_DTPR_LIM_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_TPRN_LIMIT_REG,f,o)
+#define ACPI_DTPR_SR_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_TPR_SERIALIZE_REQUEST,f,o)
#define ACPI_ERDT_RMDD_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_ERDT_RMDD,f,o)
#define ACPI_FADT_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_TABLE_FADT,f,o)
#define ACPI_FACS_FLAG_OFFSET(f,o) ACPI_FLAG_OFFSET (ACPI_TABLE_FACS,f,o)
diff --git a/source/include/actbl.h b/source/include/actbl.h
index e3bfafd9bbd2..f55c8358f3ba 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/actbl1.h b/source/include/actbl1.h
index 6e7937999a5b..72a5c47d99c8 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -181,6 +181,7 @@
#define ACPI_SIG_DBGP "DBGP" /* Debug Port table */
#define ACPI_SIG_DMAR "DMAR" /* DMA Remapping table */
#define ACPI_SIG_DRTM "DRTM" /* Dynamic Root of Trust for Measurement table */
+#define ACPI_SIG_DTPR "DTPR" /* DMA TXT Protection Ranges table */
#define ACPI_SIG_ECDT "ECDT" /* Embedded Controller Boot Resources Table */
#define ACPI_SIG_EINJ "EINJ" /* Error Injection table */
#define ACPI_SIG_ERST "ERST" /* Error Record Serialization Table */
@@ -1344,6 +1345,291 @@ typedef struct acpi_drtm_dps_id
/*******************************************************************************
*
+ * DTPR - DMA TXT Protection Ranges Table
+ * Version 1
+ *
+ * Conforms to "Intel® Trusted Execution Technology (Intel® TXT) DMA Protection
+ * Ranges",
+ * Revision 0.73, August 2021
+ *
+ ******************************************************************************/
+
+typedef struct acpi_table_dtpr {
+ ACPI_TABLE_HEADER header;
+ UINT32 Flags; /* 36 */
+ UINT32 InsCnt;
+
+} ACPI_TABLE_DTPR;
+
+typedef struct acpi_tpr_array {
+ UINT64 Base;
+
+} ACPI_TPR_ARRAY;
+
+typedef struct acpi_tpr_instance {
+ UINT32 Flags;
+ UINT32 TprCnt;
+
+} ACPI_TPR_INSTANCE;
+
+typedef struct acpi_tpr_aux_sr {
+ UINT32 SrlCnt;
+
+} ACPI_TPR_AUX_SR;
+
+
+/*
+ * TPRn_BASE (ACPI_TPRN_BASE_REG)
+ *
+ * Specifies the start address of TPRn region. TPR region address and size must
+ * be with 1MB resolution. These bits are compared with the result of the
+ * TPRn_LIMIT[63:20], which is applied to the incoming address, to
+ * determine if an access fall within the TPRn defined region.
+ *
+ * Minimal TPRn_Base resolution is 1MB. Applied to the incoming address, to
+ * determine if an access fall within the TPRn defined region. Width is
+ * determined by a bus width which can be obtained via CPUID
+ * function 0x80000008.
+ */
+
+typedef UINT64 ACPI_TPRN_BASE_REG;
+
+
+/* TPRn_BASE Register Bit Masks */
+
+/* Bit 3 - RW: access: 1 == RO, 0 == RW register (for TPR must be RW) */
+#define ACPI_TPRN_BASE_RW_SHIFT 3
+
+
+#define ACPI_TPRN_BASE_RW_MASK ((UINT64) 1 << ACPI_TPRN_BASE_RW_SHIFT)
+
+
+/*
+ * Bit 4 - Enable: 0 – TPRn address range enabled;
+ * 1 – TPRn address range disabled.
+ */
+#define ACPI_TPRN_BASE_ENABLE_SHIFT 4
+
+
+#define ACPI_TPRN_BASE_ENABLE_MASK ((UINT64) 1 << ACPI_TPRN_BASE_ENABLE_SHIFT)
+
+
+/* Bits 63:20 - TprBaseRw */
+#define ACPI_TPRN_BASE_ADDR_SHIFT 20
+
+
+#define ACPI_TPRN_BASE_ADDR_MASK ((UINT64) 0xFFFFFFFFFFF << \
+ ACPI_TPRN_BASE_ADDR_SHIFT)
+
+
+/* TPRn_BASE Register Bit Handlers*/
+
+/*
+ * GET_TPRN_BASE_RW:
+ *
+ * Read RW bit from TPRn Base Register - bit 3.
+ *
+ * Input:
+ * - reg (represents TPRn Base Register (ACPI_TPRN_BASE_REG))
+ *
+ * Output:
+ *
+ * Returns RW bit value (UINT64).
+ */
+#define GET_TPRN_BASE_RW(reg) (((UINT64) reg & ACPI_TPRN_BASE_RW_MASK) >> \
+ ACPI_TPRN_BASE_RW_SHIFT)
+
+
+/*
+ * GET_TPRN_BASE_ENABLE:
+ *
+ * Read Enable bit from TPRn Base Register - bit 4.
+ *
+ * Input:
+ * - reg (represents TPRn Base Register (ACPI_TPRN_BASE_REG))
+ *
+ * Output:
+ *
+ * Returns Enable bit value (UINT64).
+ */
+#define GET_TPRN_BASE_ENABLE(reg) (((UINT64) reg & ACPI_TPRN_BASE_ENABLE_MASK) \
+ >> ACPI_TPRN_BASE_ENABLE_SHIFT)
+
+
+/*
+ * GET_TPRN_BASE_ADDR:
+ *
+ * Read TPRn Base Register address from bits 63:20.
+ *
+ * Input:
+ * - reg (represents TPRn Base Register (ACPI_TPRN_BASE_REG))
+ *
+ * Output:
+ *
+ * Returns TPRn Base Register address (UINT64).
+ */
+#define GET_TPRN_BASE_ADDR(reg) (((UINT64) reg & ACPI_TPRN_BASE_ADDR_MASK) \
+ >> ACPI_TPRN_BASE_ADDR_SHIFT)
+
+
+/*
+ * SET_TPRN_BASE_RW:
+ *
+ * Set RW bit in TPRn Base Register - bit 3.
+ *
+ * Input:
+ * - reg (represents TPRn Base Register (ACPI_TPRN_BASE_REG))
+ * - val (represents RW value to be set (UINT64))
+ */
+#define SET_TPRN_BASE_RW(reg, val) ACPI_REGISTER_INSERT_VALUE(reg, \
+ ACPI_TPRN_BASE_RW_SHIFT, \
+ ACPI_TPRN_BASE_RW_MASK, val);
+
+
+/*
+ * SET_TPRN_BASE_ENABLE:
+ *
+ * Set Enable bit in TPRn Base Register - bit 4.
+ *
+ * Input:
+ * - reg (represents TPRn Base Register (ACPI_TPRN_BASE_REG))
+ * - val (represents Enable value to be set (UINT64))
+ */
+#define SET_TPRN_BASE_ENABLE(reg, val) ACPI_REGISTER_INSERT_VALUE(reg, \
+ ACPI_TPRN_BASE_ENABLE_SHIFT, \
+ ACPI_TPRN_BASE_ENABLE_MASK, val);
+
+
+/*
+ * SET_TPRN_BASE_ADDR:
+ *
+ * Set TPRn Base Register address - bits 63:20
+ *
+ * Input
+ * - reg (represents TPRn Base Register (ACPI_TPRN_BASE_REG))
+ * - val (represents address value to be set (UINT64))
+ */
+#define SET_TPRN_BASE_ADDR(reg, val) ACPI_REGISTER_INSERT_VALUE(reg, \
+ ACPI_TPRN_BASE_ADDR_SHIFT, \
+ ACPI_TPRN_BASE_ADDR_MASK, val);
+
+
+/*
+ * TPRn_LIMIT
+ *
+ * This register defines an isolated region of memory that can be enabled
+ * to prohibit certain system agents from accessing memory. When an agent
+ * sends a request upstream, whether snooped or not, a TPR prevents that
+ * transaction from changing the state of memory.
+ *
+ * Minimal TPRn_Limit resolution is 1MB. Width is determined by a bus width.
+ */
+
+typedef UINT64 ACPI_TPRN_LIMIT_REG;
+
+
+/* TPRn_LIMIT Register Bit Masks */
+
+
+/* Bit 3 - RW: access: 1 == RO, 0 == RW register (for TPR must be RW) */
+#define ACPI_TPRN_LIMIT_RW_SHIFT 3
+
+
+#define ACPI_TPRN_LIMIT_RW_MASK ((UINT64) 1 << ACPI_TPRN_LIMIT_RW_SHIFT)
+
+
+/* Bits 63:20 - TprLimitRw */
+#define ACPI_TPRN_LIMIT_ADDR_SHIFT 20
+
+
+#define ACPI_TPRN_LIMIT_ADDR_MASK ((UINT64) 0xFFFFFFFFFFF << \
+ ACPI_TPRN_LIMIT_ADDR_SHIFT)
+
+
+/* TPRn_LIMIT Register Bit Handlers*/
+
+/*
+ * GET_TPRN_LIMIT_RW:
+ *
+ * Read RW bit from TPRn Limit Register - bit 3.
+ *
+ * Input:
+ * - reg (represents TPRn Limit Register (ACPI_TPRN_LIMIT_REG))
+ *
+ * Output:
+ *
+ * Returns RW bit value (UINT64).
+ */
+#define GET_TPRN_LIMIT_RW(reg) (((UINT64) reg & ACPI_TPRN_LIMIT_RW_MASK) \
+ >> ACPI_TPRN_LIMIT_RW_SHIFT)
+
+
+/*
+ * GET_TPRN_LIMIT_ADDR:
+ *
+ * Read TPRn Limit Register address from bits 63:20.
+ *
+ * Input:
+ * - reg (represents TPRn Limit Register (ACPI_TPRN_LIMIT_REG))
+ *
+ * Output:
+ *
+ * Returns TPRn Limit Register address (UINT64).
+ */
+#define GET_TPRN_LIMIT_ADDR(reg) (((UINT64) reg & ACPI_TPRN_LIMIT_ADDR_MASK) \
+ >> ACPI_TPRN_LIMIT_ADDR_SHIFT)
+
+
+/*
+ * SET_TPRN_LIMIT_RW:
+ *
+ * Set RW bit in TPRn Limit Register - bit 3.
+ *
+ * Input:
+ * - reg (represents TPRn Limit Register (ACPI_TPRN_LIMIT_REG))
+ * - val (represents RW value to be set (UINT64))
+ */
+#define SET_TPRN_LIMIT_RW(reg, val) ACPI_REGISTER_INSERT_VALUE(reg, \
+ ACPI_TPRN_LIMIT_RW_SHIFT, \
+ ACPI_TPRN_LIMIT_RW_MASK, val);
+
+
+/*
+ * SET_TPRN_LIMIT_ADDR:
+ *
+ * Set TPRn Limit Register address - bits 63:20.
+ *
+ * Input:
+ * - reg (represents TPRn Limit Register (ACPI_TPRN_LIMIT_REG))
+ * - val (represents address value to be set (UINT64))
+ */
+#define SET_TPRN_LIMIT_ADDR(reg, val) ACPI_REGISTER_INSERT_VALUE(reg, \
+ ACPI_TPRN_LIMIT_ADDR_SHIFT, \
+ ACPI_TPRN_LIMIT_ADDR_MASK, val);
+
+
+/*
+ * SERIALIZE_REQUEST
+ *
+ * This register is used to request serialization of non-coherent DMA
+ * transactions. OS shall issue it before changing of TPR settings
+ * (base / size).
+ */
+
+typedef struct acpi_tpr_serialize_request {
+ UINT64 SrRegister;
+ /*
+ * BIT 1 - Status of serialization request (RO)
+ * 0 == register idle, 1 == serialization in progress
+ * BIT 2 - Control field to initiate serialization (RW)
+ * 0 == normal, 1 == initialize serialization
+ * (self-clear to allow multiple serialization requests)
+ */
+} ACPI_TPR_SERIALIZE_REQUEST;
+
+
+/*******************************************************************************
+ *
* ECDT - Embedded Controller Boot Resources Table
* Version 1
*
@@ -2473,7 +2759,6 @@ typedef struct acpi_ibft_target
} ACPI_IBFT_TARGET;
-
/* Reset to default packing */
#pragma pack()
diff --git a/source/include/actbl2.h b/source/include/actbl2.h
index a51ff1ecaa09..a5e71e67285a 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/actbl3.h b/source/include/actbl3.h
index 6392359249c9..4886b12c0315 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/actypes.h b/source/include/actypes.h
index 3c95887b1678..38f3afa8c811 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acutils.h b/source/include/acutils.h
index 55a012367964..45cc8d6a01c1 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/acuuid.h b/source/include/acuuid.h
index a950972b01b3..9546baa7f1de 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -205,6 +205,11 @@
#define UUID_CACHE_PROPERTIES "6DC63E77-257E-4E78-A973-A21F2796898D"
#define UUID_PHYSICAL_PROPERTY "DDE4D59A-AA42-4349-B407-EA40F57D9FB7"
+/* Modern Standby */
+#define UUID_LPS0_MICROSOFT "11E00D56-CE64-47CE-837B-1F898F9AA461"
+#define UUID_LPS0_INTEL "C4EB40A0-6CD2-11E2-BCFD-0800200C9A66"
+#define UUID_LPS0_AMD "E3F32452-FEBC-43CE-9039-932122D37721"
+
/* Miscellaneous */
#define UUID_PLATFORM_CAPABILITIES "0811b06e-4a27-44f9-8d60-3cbbc22e7b48"
diff --git a/source/include/amlcode.h b/source/include/amlcode.h
index 6bb591904794..ffd48e9e6751 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/amlresrc.h b/source/include/amlresrc.h
index 4482ed378ab1..3362b52b3205 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/accygwin.h b/source/include/platform/accygwin.h
index be567e4e8fd5..67bbb5a0149d 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acdragonfly.h b/source/include/platform/acdragonfly.h
index 4723efeaa261..94d2808a8954 100644
--- a/source/include/platform/acdragonfly.h
+++ b/source/include/platform/acdragonfly.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acdragonflyex.h b/source/include/platform/acdragonflyex.h
index 3686a17a129d..ae28370ac146 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acefi.h b/source/include/platform/acefi.h
index f35d7e83582a..89906d3f9d53 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acefiex.h b/source/include/platform/acefiex.h
index 8e2379c06c17..9dc3b91fe432 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acenv.h b/source/include/platform/acenv.h
index b3093e04e67f..add584b028cc 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acenvex.h b/source/include/platform/acenvex.h
index e9632619abf5..2735e02174de 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acfreebsd.h b/source/include/platform/acfreebsd.h
index e81a5d40bcdf..6cd64c385146 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acgcc.h b/source/include/platform/acgcc.h
index ab0d418365ab..f5e89d8b06f7 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acgccex.h b/source/include/platform/acgccex.h
index bb3b55cf2ca6..fae2413bf712 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/achaiku.h b/source/include/platform/achaiku.h
index 607913e6e54e..5cf8fa50a4b2 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acintel.h b/source/include/platform/acintel.h
index 21edaaf06e1d..0b2973849c06 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/aclinux.h b/source/include/platform/aclinux.h
index fab9cb0ba14a..162cafff1345 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/aclinuxex.h b/source/include/platform/aclinuxex.h
index 89d00ccb8d4f..65c13e5c8845 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acmacosx.h b/source/include/platform/acmacosx.h
index 6b4f29269501..28e5ef81e996 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acmsvc.h b/source/include/platform/acmsvc.h
index 8f5d77816cc1..38f45a7a34ab 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acmsvcex.h b/source/include/platform/acmsvcex.h
index 01c86397f7f1..fdd2cf17fb14 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acnetbsd.h b/source/include/platform/acnetbsd.h
index 6fa69bbb077f..da2be99e835e 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acos2.h b/source/include/platform/acos2.h
index b4dd359ae805..731e29dbe9ea 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acqnx.h b/source/include/platform/acqnx.h
index cae305e785a2..74e2f8f99075 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/acwin.h b/source/include/platform/acwin.h
index c05695cfccf2..1dfef818f06f 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -186,6 +186,7 @@
#pragma warning( disable: 4201)
#pragma warning( disable: 4068)
+#pragma warning( disable: 4214)
#pragma warning( push)
#define ACPI_MACHINE_WIDTH 32
diff --git a/source/include/platform/acwin64.h b/source/include/platform/acwin64.h
index cc8811b9007b..9e0507f3107a 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/include/platform/aczephyr.h b/source/include/platform/aczephyr.h
index 307eabafd7f7..732a3e099b45 100644
--- a/source/include/platform/aczephyr.h
+++ b/source/include/platform/aczephyr.h
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, 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 2f190fa95d91..f538fc20b682 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/os_specific/service_layers/osgendbg.c b/source/os_specific/service_layers/osgendbg.c
index d526b589daff..7c46e461a363 100644
--- a/source/os_specific/service_layers/osgendbg.c
+++ b/source/os_specific/service_layers/osgendbg.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, 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 636a6184197f..a5ba0c873190 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, 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 9a6d4dabea3c..84235b965bd6 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, 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 40c647ccb739..404278cab9e0 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, 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 a26d3e44f9e6..57834ed038fe 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, 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 8b14673d2343..b6c4c885f9a0 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, 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 1bb1ef5d8e7a..46fb8bbcdf2a 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, 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 325ec2f3dc51..f7c01575e7ce 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/os_specific/service_layers/oszephyr.c b/source/os_specific/service_layers/oszephyr.c
index 4e5c1234d554..23d41b76c0b2 100644
--- a/source/os_specific/service_layers/oszephyr.c
+++ b/source/os_specific/service_layers/oszephyr.c
@@ -8,7 +8,7 @@
*
* 1. Copyright Notice
*
- * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpibin/abcompare.c b/source/tools/acpibin/abcompare.c
index 1de931afa496..d98e80f093a9 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpibin/abmain.c b/source/tools/acpibin/abmain.c
index 904e89ead321..0da661eeec84 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpibin/acpibin.h b/source/tools/acpibin/acpibin.h
index af6b281cb6f5..0b3a7a97bb5b 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpidump/acpidump.h b/source/tools/acpidump/acpidump.h
index ba70415253ab..16a945de1fc4 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpidump/apdump.c b/source/tools/acpidump/apdump.c
index 0d770820f77a..c0b3d107dcc9 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpidump/apfiles.c b/source/tools/acpidump/apfiles.c
index 8fe54f77ecf2..19c94ba09438 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpidump/apmain.c b/source/tools/acpidump/apmain.c
index 352ebdab965f..373a66baa45e 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpiexec/aecommon.h b/source/tools/acpiexec/aecommon.h
index 7f8bb6902625..20b988fd0b36 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpiexec/aeexception.c b/source/tools/acpiexec/aeexception.c
index 9378f0c911ec..2a4a3d2c322b 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpiexec/aeexec.c b/source/tools/acpiexec/aeexec.c
index 1c41f4da5b13..d32f53e43e52 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpiexec/aehandlers.c b/source/tools/acpiexec/aehandlers.c
index b628aecd1dbd..97fa4072485d 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpiexec/aeinitfile.c b/source/tools/acpiexec/aeinitfile.c
index d079edfd7656..67114a573f80 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpiexec/aeinstall.c b/source/tools/acpiexec/aeinstall.c
index 8370bdd74727..3a4e3b27c43a 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpiexec/aemain.c b/source/tools/acpiexec/aemain.c
index 47fefb641682..8a4b1bbc38f4 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpiexec/aeregion.c b/source/tools/acpiexec/aeregion.c
index f91c2cf1f9f9..ccca56029399 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -658,10 +658,19 @@ AeRegionHandler (
* NOTE: RegionElement->Length is in bytes, therefore it we compare against
* ByteWidth (see above)
*/
- if ((RegionObject->Region.SpaceId != ACPI_ADR_SPACE_GPIO) &&
+ if (Address < RegionElement->Address ||
((UINT64) Address + ByteWidth) >
((UINT64)(RegionElement->Address) + RegionElement->Length))
{
+ if (RegionObject->Region.SpaceId == ACPI_ADR_SPACE_GPIO)
+ {
+ if (Function == ACPI_READ)
+ {
+ memset (Value, 0, ByteWidth);
+ }
+ return (AE_OK);
+ }
+
ACPI_WARNING ((AE_INFO,
"Request on [%4.4s] is beyond region limit "
"Req-0x%X+0x%X, Base=0x%X, Len-0x%X",
@@ -682,6 +691,11 @@ DoFunction:
/*
* Perform a read or write to the buffer space
*/
+ if (ByteWidth == 0)
+ {
+ return (AE_AML_OPERAND_VALUE);
+ }
+
switch (Function)
{
case ACPI_READ:
diff --git a/source/tools/acpiexec/aetables.c b/source/tools/acpiexec/aetables.c
index 219b6554b2b2..c8042b18ccd5 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpiexec/aetables.h b/source/tools/acpiexec/aetables.h
index 9fc8590b40ba..b840efe37452 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpiexec/aetests.c b/source/tools/acpiexec/aetests.c
index 9153359ac0e4..9e9fb0bd119c 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpihelp/acpihelp.h b/source/tools/acpihelp/acpihelp.h
index ccc7162a0eea..7348afa3f010 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpihelp/ahaml.c b/source/tools/acpihelp/ahaml.c
index 3fe56850aaf4..3c449ed82abb 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpihelp/ahamlops.c b/source/tools/acpihelp/ahamlops.c
index 71591587e063..9d3cf75d0a50 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpihelp/ahasl.c b/source/tools/acpihelp/ahasl.c
index 305738837960..371ebbcf3dc6 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpihelp/ahaslkey.c b/source/tools/acpihelp/ahaslkey.c
index 34c3f7465e03..f0764bc4cd78 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpihelp/ahaslops.c b/source/tools/acpihelp/ahaslops.c
index 085d774d299a..36a9103182fa 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpihelp/ahdecode.c b/source/tools/acpihelp/ahdecode.c
index bbe23cd8f4ba..c3dbc0e6cc88 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpihelp/ahgrammar.c b/source/tools/acpihelp/ahgrammar.c
index 7265552c8bbd..c5c73e549c6c 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpihelp/ahmain.c b/source/tools/acpihelp/ahmain.c
index abd67ba2a9bb..31c6615cc57d 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpisrc/acpisrc.h b/source/tools/acpisrc/acpisrc.h
index 691a088f2547..1a8e02cc9213 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpisrc/ascase.c b/source/tools/acpisrc/ascase.c
index 382b7099da6f..d5b64ba58517 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpisrc/asconvrt.c b/source/tools/acpisrc/asconvrt.c
index e331a46fb129..914de37902d4 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, 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 - 2025, Intel Corp.\n"
+#define INTEL_COPYRIGHT " * Copyright (C) 2000 - 2026, 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 8578a303563e..ece2e79cb091 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpisrc/asmain.c b/source/tools/acpisrc/asmain.c
index 81e9f53047ed..acb5cb14d1c9 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpisrc/asremove.c b/source/tools/acpisrc/asremove.c
index 956fd51a8abe..b6194f71154b 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpisrc/astable.c b/source/tools/acpisrc/astable.c
index 25d70c2e11fe..6a74ab7fe05d 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
@@ -197,7 +197,7 @@ ACPI_STRING_TABLE StandardDataTypes[] = {
char EmptyHeader[] = "";
char DualLicenseHeader[] =
"/*\n"
-" * Copyright (C) 2000 - 2025, Intel Corp.\n"
+" * Copyright (C) 2000 - 2026, Intel Corp.\n"
" * All rights reserved.\n"
" *\n"
" * Redistribution and use in source and binary forms, with or without\n"
@@ -321,7 +321,31 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"ACPI_DMTABLE_DATA", SRC_TYPE_STRUCT},
{"ACPI_DMTABLE_INFO", SRC_TYPE_STRUCT},
{"ACPI_DMTABLE_HANDLER", SRC_TYPE_SIMPLE},
+ {"ACPI_EFI_ALLOCATE_TYPE", SRC_TYPE_STRUCT},
+ {"ACPI_EFI_BOOT_SERVICES", SRC_TYPE_STRUCT},
+ {"ACPI_EFI_CONFIGURATION_TABLE", SRC_TYPE_STRUCT},
+ {"ACPI_EFI_DEVICE_PATH", SRC_TYPE_STRUCT},
+ {"ACPI_EFI_FILE_HANDLE", SRC_TYPE_STRUCT},
+ {"ACPI_EFI_FILE_INFO", SRC_TYPE_STRUCT},
+ {"ACPI_EFI_FILE_IO_INTERFACE", SRC_TYPE_STRUCT},
{"ACPI_EFI_FILE", SRC_TYPE_SIMPLE},
+ {"ACPI_EFI_FILE_STRUCT", SRC_TYPE_STRUCT},
+ {"ACPI_EFI_GUID", SRC_TYPE_STRUCT},
+ {"ACPI_EFI_INPUT_KEY", SRC_TYPE_STRUCT},
+ {"ACPI_EFI_INTERFACE_TYPE", SRC_TYPE_STRUCT},
+ {"ACPI_EFI_LOADED_IMAGE", SRC_TYPE_STRUCT},
+ {"ACPI_EFI_LOCATE_SEARCH_TYPE", SRC_TYPE_STRUCT},
+ {"ACPI_EFI_MEMORY_DESCRIPTOR", SRC_TYPE_STRUCT},
+ {"ACPI_EFI_MEMORY_TYPE", SRC_TYPE_STRUCT},
+ {"ACPI_EFI_OPEN_PROTOCOL_INFORMATION_ENTRY", SRC_TYPE_STRUCT},
+ {"ACPI_EFI_PCI_IO_PROTOCOL_CONFIG_ACCESS", SRC_TYPE_STRUCT},
+ {"ACPI_EFI_PCI_IO_PROTOCOL_WIDTH", SRC_TYPE_STRUCT},
+ {"ACPI_EFI_PCI_IO", SRC_TYPE_STRUCT},
+ {"ACPI_EFI_RUNTIME_SERVICES", SRC_TYPE_STRUCT},
+ {"ACPI_EFI_SYSTEM_TABLE", SRC_TYPE_STRUCT},
+ {"ACPI_EFI_TABLE_HEADER", SRC_TYPE_STRUCT},
+ {"ACPI_EFI_TIME_CAPABILITIES", SRC_TYPE_STRUCT},
+ {"ACPI_EFI_TIME", SRC_TYPE_STRUCT},
{"ACPI_EVALUATE_INFO", SRC_TYPE_STRUCT},
{"ACPI_EVENT_HANDLER", SRC_TYPE_SIMPLE},
{"ACPI_EVENT_STATUS", SRC_TYPE_SIMPLE},
@@ -342,6 +366,7 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"ACPI_FIXED_EVENT_INFO", SRC_TYPE_STRUCT},
{"ACPI_FFH_INFO", SRC_TYPE_STRUCT},
{"ACPI_GBL_EVENT_HANDLER", SRC_TYPE_SIMPLE},
+ {"ACPI_GED_HANDLER_INFO", SRC_TYPE_STRUCT},
{"ACPI_GENERIC_ADDRESS", SRC_TYPE_STRUCT},
{"ACPI_GENERIC_STATE", SRC_TYPE_UNION},
{"ACPI_GET_DEVICES_INFO", SRC_TYPE_STRUCT},
@@ -349,6 +374,7 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"ACPI_GPE_BLOCK_INFO", SRC_TYPE_STRUCT},
{"ACPI_GPE_CALLBACK", SRC_TYPE_SIMPLE},
{"ACPI_GPE_DEVICE_INFO", SRC_TYPE_STRUCT},
+ {"ACPI_GPE_DISPATCH_INFO", SRC_TYPE_STRUCT},
{"ACPI_GPE_EVENT_INFO", SRC_TYPE_STRUCT},
{"ACPI_GPE_HANDLER", SRC_TYPE_SIMPLE},
{"ACPI_GPE_HANDLER_INFO", SRC_TYPE_STRUCT},
@@ -372,6 +398,8 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"ACPI_INTERPRETER_MODE", SRC_TYPE_SIMPLE},
{"ACPI_IO_ADDRESS", SRC_TYPE_SIMPLE},
{"ACPI_IO_ATTRIBUTE", SRC_TYPE_STRUCT},
+ {"ACPI_KEYP_CONFIG_UNIT", SRC_TYPE_STRUCT},
+ {"ACPI_KEYP_RP_INFO", SRC_TYPE_STRUCT},
{"ACPI_LPIT_HEADER", SRC_TYPE_STRUCT},
{"ACPI_LPIT_IO", SRC_TYPE_STRUCT},
{"ACPI_LPIT_NATIVE", SRC_TYPE_STRUCT},
@@ -433,6 +461,7 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"ACPI_OPERAND_OBJECT", SRC_TYPE_UNION},
{"ACPI_OSD_HANDLER", SRC_TYPE_SIMPLE},
{"ACPI_OSD_EXEC_CALLBACK", SRC_TYPE_SIMPLE},
+ {"ACPI_OS_SEMAPHORE_INFO", SRC_TYPE_STRUCT},
{"ACPI_OWNER_ID", SRC_TYPE_SIMPLE},
{"ACPI_PACKAGE_INFO", SRC_TYPE_STRUCT},
{"ACPI_PACKAGE_INFO2", SRC_TYPE_STRUCT},
@@ -442,6 +471,7 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"ACPI_PARSE_OBJ_ASL", SRC_TYPE_STRUCT},
{"ACPI_PARSE_OBJ_COMMON", SRC_TYPE_STRUCT},
{"ACPI_PARSE_OBJ_NAMED", SRC_TYPE_STRUCT},
+ {"ACPI_PARSE_OBJECT_LIST", SRC_TYPE_STRUCT},
{"ACPI_PARSE_OBJECT", SRC_TYPE_UNION},
{"ACPI_PARSE_STATE", SRC_TYPE_STRUCT},
{"ACPI_PARSE_UPWARDS", SRC_TYPE_SIMPLE},
@@ -470,8 +500,10 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"ACPI_RASF_SHARED_MEMORY", SRC_TYPE_STRUCT},
{"ACPI_RAS2_PARAMETER_BLOCK", SRC_TYPE_STRUCT},
{"ACPI_RAS2_PATROL_SCRUB_PARAM", SRC_TYPE_STRUCT},
+ {"ACPI_RAS2_PCC_DESC", SRC_TYPE_STRUCT},
{"ACPI_RAS2_LA2PA_TRANSLATION_PARAM", SRC_TYPE_STRUCT},
{"ACPI_RAS2_SHMEM", SRC_TYPE_STRUCT},
+ {"ACPI_REFERENCE_CLASSES", SRC_TYPE_STRUCT},
{"ACPI_REGION_WALK_INFO", SRC_TYPE_STRUCT},
{"ACPI_REPAIR_FUNCTION", SRC_TYPE_SIMPLE},
{"ACPI_REPAIR_INFO", SRC_TYPE_STRUCT},
@@ -482,6 +514,7 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"ACPI_RESOURCE_ADDRESS16", SRC_TYPE_STRUCT},
{"ACPI_RESOURCE_ADDRESS32", SRC_TYPE_STRUCT},
{"ACPI_RESOURCE_ADDRESS64", SRC_TYPE_STRUCT},
+ {"ACPI_RESOURCE_CLOCK_INPUT", SRC_TYPE_STRUCT},
{"ACPI_RESOURCE_COMMON_SERIALBUS", SRC_TYPE_STRUCT},
{"ACPI_RESOURCE_CSI2_SERIALBUS", SRC_TYPE_STRUCT},
{"ACPI_RESOURCE_EXTENDED_ADDRESS64", SRC_TYPE_STRUCT},
@@ -527,7 +560,10 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"ACPI_SEMAPHORE", SRC_TYPE_SIMPLE},
{"ACPI_SERIAL_INFO", SRC_TYPE_STRUCT},
{"ACPI_SIGNAL_FATAL_INFO", SRC_TYPE_STRUCT},
+ {"ACPI_SIMPLE_INPUT_INTERFACE", SRC_TYPE_STRUCT},
{"ACPI_SIMPLE_REPAIR_INFO", SRC_TYPE_STRUCT},
+ {"ACPI_SIMPLE_TEXT_OUTPUT_INTERFACE", SRC_TYPE_STRUCT},
+ {"ACPI_SIMPLE_TEXT_OUTPUT_MODE", SRC_TYPE_STRUCT},
{"ACPI_SIZE", SRC_TYPE_SIMPLE},
{"ACPI_SLEEP_FUNCTION", SRC_TYPE_SIMPLE},
{"ACPI_SLEEP_FUNCTIONS", SRC_TYPE_STRUCT},
@@ -582,6 +618,7 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"AML_RESOURCE_ADDRESS32", SRC_TYPE_STRUCT},
{"AML_RESOURCE_ADDRESS64", SRC_TYPE_STRUCT},
{"AML_RESOURCE_COMMON_SERIALBUS", SRC_TYPE_STRUCT},
+ {"AML_RESOURCE_CLOCK_INPUT", SRC_TYPE_STRUCT},
{"AML_RESOURCE_CSI2_SERIALBUS", SRC_TYPE_STRUCT},
{"AML_RESOURCE_DMA", SRC_TYPE_STRUCT},
{"AML_RESOURCE_END_DEPENDENT", SRC_TYPE_STRUCT},
@@ -642,6 +679,7 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"ASL_RESOURCE_INFO", SRC_TYPE_STRUCT},
{"ASL_RESOURCE_NODE", SRC_TYPE_STRUCT},
{"ASL_WALK_CALLBACK", SRC_TYPE_SIMPLE},
+ {"ASL_WALK_INFO", SRC_TYPE_STRUCT},
{"ASL_XREF_INFO", SRC_TYPE_STRUCT},
{"UINT64_OVERLAY", SRC_TYPE_UNION},
{"UINT64_STRUCT", SRC_TYPE_STRUCT},
@@ -651,7 +689,9 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
*/
{"ACPI_TABLE_AEST", SRC_TYPE_STRUCT},
{"ACPI_TABLE_AGDI", SRC_TYPE_STRUCT},
+ {"ACPI_TABLE_APMT", SRC_TYPE_STRUCT},
{"ACPI_TABLE_ASF", SRC_TYPE_STRUCT},
+ {"ACPI_TABLE_ASPT", SRC_TYPE_STRUCT},
{"ACPI_TABLE_BDAT", SRC_TYPE_STRUCT},
{"ACPI_TABLE_BERT", SRC_TYPE_STRUCT},
{"ACPI_TABLE_BGRT", SRC_TYPE_STRUCT},
@@ -665,6 +705,7 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"ACPI_TABLE_DBGP", SRC_TYPE_STRUCT},
{"ACPI_TABLE_DMAR", SRC_TYPE_STRUCT},
{"ACPI_TABLE_DRTM", SRC_TYPE_STRUCT},
+ {"ACPI_TABLE_DTPR", SRC_TYPE_STRUCT},
{"ACPI_TABLE_ECDT", SRC_TYPE_STRUCT},
{"ACPI_TABLE_EINJ", SRC_TYPE_STRUCT},
{"ACPI_TABLE_ERDT", SRC_TYPE_STRUCT},
@@ -680,6 +721,7 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"ACPI_TABLE_IORT", SRC_TYPE_STRUCT},
{"ACPI_TABLE_IOVT", SRC_TYPE_STRUCT},
{"ACPI_TABLE_IVRS", SRC_TYPE_STRUCT},
+ {"ACPI_TABLE_KEYP", SRC_TYPE_STRUCT},
{"ACPI_TABLE_MADT", SRC_TYPE_STRUCT},
{"ACPI_TABLE_MCFG", SRC_TYPE_STRUCT},
{"ACPI_TABLE_MCHI", SRC_TYPE_STRUCT},
@@ -696,13 +738,19 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"ACPI_TABLE_PMTT", SRC_TYPE_STRUCT},
{"ACPI_TABLE_PPTT", SRC_TYPE_STRUCT},
{"ACPI_TABLE_PRMT", SRC_TYPE_STRUCT},
+ {"ACPI_TABLE_RAS2", SRC_TYPE_STRUCT},
+ {"ACPI_TABLE_RASF", SRC_TYPE_STRUCT},
{"ACPI_TABLE_RGRT", SRC_TYPE_STRUCT},
+ {"ACPI_TABLE_RHCT", SRC_TYPE_STRUCT},
+ {"ACPI_TABLE_RIMT", SRC_TYPE_STRUCT},
{"ACPI_TABLE_RSDP", SRC_TYPE_STRUCT},
{"ACPI_TABLE_RSDT", SRC_TYPE_STRUCT},
{"ACPI_TABLE_S3PT", SRC_TYPE_STRUCT},
{"ACPI_TABLE_SBST", SRC_TYPE_STRUCT},
+ {"ACPI_TABLE_SDEI", SRC_TYPE_STRUCT},
{"ACPI_TABLE_SDEV", SRC_TYPE_STRUCT},
{"ACPI_TABLE_SVKL", SRC_TYPE_STRUCT},
+ {"ACPI_TABLE_SWFT", SRC_TYPE_STRUCT},
{"ACPI_TABLE_SLIC", SRC_TYPE_STRUCT},
{"ACPI_TABLE_SLIT", SRC_TYPE_STRUCT},
{"ACPI_TABLE_SPCR", SRC_TYPE_STRUCT},
@@ -730,15 +778,23 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"ACPI_AEST_HEADER", SRC_TYPE_STRUCT},
{"ACPI_AEST_MEMORY", SRC_TYPE_STRUCT},
{"ACPI_AEST_NODE_INTERFACE", SRC_TYPE_STRUCT},
+ {"ACPI_AEST_NODE_INTERFACE_16K", SRC_TYPE_STRUCT},
+ {"ACPI_AEST_NODE_INTERFACE_4K", SRC_TYPE_STRUCT},
+ {"ACPI_AEST_NODE_INTERFACE_64K", SRC_TYPE_STRUCT},
+ {"ACPI_AEST_NODE_INTERFACE_COMMON", SRC_TYPE_STRUCT},
+ {"ACPI_AEST_NODE_INTERFACE_HEADER", SRC_TYPE_STRUCT},
{"ACPI_AEST_NODE_INTERRUPT", SRC_TYPE_STRUCT},
{"ACPI_AEST_NODE_INTERRUPT_V2", SRC_TYPE_STRUCT},
+ {"ACPI_AEST_PCIE", SRC_TYPE_STRUCT},
{"ACPI_AEST_PROCESSOR", SRC_TYPE_STRUCT},
{"ACPI_AEST_PROCESSOR_CACHE", SRC_TYPE_STRUCT},
{"ACPI_AEST_PROCESSOR_GENERIC", SRC_TYPE_STRUCT},
{"ACPI_AEST_PROCESSOR_TLB", SRC_TYPE_STRUCT},
+ {"ACPI_AEST_PROXY", SRC_TYPE_STRUCT},
{"ACPI_AEST_SMMU", SRC_TYPE_STRUCT},
{"ACPI_AEST_VENDOR", SRC_TYPE_STRUCT},
{"ACPI_AEST_VENDOR_V2", SRC_TYPE_STRUCT},
+ {"ACPI_APMT_NODE", SRC_TYPE_STRUCT},
{"ACPI_ASF_ADDRESS", SRC_TYPE_STRUCT},
{"ACPI_ASF_ALERT", SRC_TYPE_STRUCT},
{"ACPI_ASF_ALERT_DATA", SRC_TYPE_STRUCT},
@@ -747,27 +803,50 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"ACPI_ASF_INFO", SRC_TYPE_STRUCT},
{"ACPI_ASF_REMOTE", SRC_TYPE_STRUCT},
{"ACPI_ASF_RMCP", SRC_TYPE_STRUCT},
+ {"ACPI_ASPT_ACPI_MBOX_REGS", SRC_TYPE_STRUCT},
+ {"ACPI_ASPT_GLOBAL_REGS", SRC_TYPE_STRUCT},
+ {"ACPI_ASPT_HEADER", SRC_TYPE_STRUCT},
+ {"ACPI_ASPT_SEV_MBOX_REGS", SRC_TYPE_STRUCT},
{"ACPI_BERT_REGION", SRC_TYPE_STRUCT},
+ {"ACPI_CDAT_DSEMTS", SRC_TYPE_STRUCT},
+ {"ACPI_CDAT_DSIS", SRC_TYPE_STRUCT},
+ {"ACPI_CDAT_DSLBIS", SRC_TYPE_STRUCT},
+ {"ACPI_CDAT_DSMAS", SRC_TYPE_STRUCT},
+ {"ACPI_CDAT_DSMSCIS", SRC_TYPE_STRUCT},
+ {"ACPI_CDAT_HEADER", SRC_TYPE_STRUCT},
+ {"ACPI_CDAT_SSLBE", SRC_TYPE_STRUCT},
+ {"ACPI_CDAT_SSLBIS", SRC_TYPE_STRUCT},
+ {"ACPI_CEDT_CFMWS", SRC_TYPE_STRUCT},
+ {"ACPI_CEDT_CFMWS_TARGET_ELEMENT", SRC_TYPE_STRUCT},
{"ACPI_CEDT_CHBS", SRC_TYPE_STRUCT},
+ {"ACPI_CEDT_CXIMS", SRC_TYPE_STRUCT},
+ {"ACPI_CEDT_CXIMS_TARGET_ELEMENT", SRC_TYPE_STRUCT},
{"ACPI_CEDT_HEADER", SRC_TYPE_STRUCT},
{"ACPI_CPEP_POLLING", SRC_TYPE_STRUCT},
{"ACPI_CSRT_GROUP", SRC_TYPE_STRUCT},
{"ACPI_CSRT_DESCRIPTOR", SRC_TYPE_STRUCT},
{"ACPI_CSRT_SHARED_INFO", SRC_TYPE_STRUCT},
{"ACPI_DBG2_DEVICE", SRC_TYPE_STRUCT},
+ {"ACPI_DBG2_HEADER", SRC_TYPE_STRUCT},
{"ACPI_DMAR_HEADER", SRC_TYPE_STRUCT},
{"ACPI_DMAR_DEVICE_SCOPE", SRC_TYPE_STRUCT},
{"ACPI_DMAR_ANDD", SRC_TYPE_STRUCT},
{"ACPI_DMAR_ATSR", SRC_TYPE_STRUCT},
{"ACPI_DMAR_RHSA", SRC_TYPE_STRUCT},
+ {"ACPI_DMAR_SATC", SRC_TYPE_STRUCT},
+ {"ACPI_DMAR_SIDP", SRC_TYPE_STRUCT},
{"ACPI_DMAR_HARDWARE_UNIT", SRC_TYPE_STRUCT},
+ {"ACPI_DMAR_PCI_PATH", SRC_TYPE_STRUCT},
{"ACPI_DMAR_RESERVED_MEMORY", SRC_TYPE_STRUCT},
{"ACPI_DRTM_DPS_ID", SRC_TYPE_STRUCT},
{"ACPI_DRTM_RESOURCE", SRC_TYPE_STRUCT},
{"ACPI_DRTM_RESOURCE_LIST", SRC_TYPE_STRUCT},
{"ACPI_DRTM_VTABLE_LIST", SRC_TYPE_STRUCT},
{"ACPI_EINJ_ENTRY", SRC_TYPE_STRUCT},
+ {"ACPI_EINJ_ERROR_TYPE_WITH_ADDR", SRC_TYPE_STRUCT},
{"ACPI_EINJ_TRIGGER", SRC_TYPE_STRUCT},
+ {"ACPI_EINJ_VENDOR", SRC_TYPE_STRUCT},
+ {"ACPI_ENTRY_TYPES", SRC_TYPE_STRUCT},
{"ACPI_ERDT_RMDD", SRC_TYPE_STRUCT},
{"ACPI_ERDT_CACD", SRC_TYPE_STRUCT},
{"ACPI_ERDT_DACD", SRC_TYPE_STRUCT},
@@ -786,6 +865,7 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"ACPI_FPDT_BOOT", SRC_TYPE_STRUCT},
{"ACPI_FPDT_BOOT_POINTER", SRC_TYPE_STRUCT},
{"ACPI_FPDT_S3PT_POINTER", SRC_TYPE_STRUCT},
+ {"ACPI_GTDT_EL2", SRC_TYPE_STRUCT},
{"ACPI_GTDT_HEADER", SRC_TYPE_STRUCT},
{"ACPI_GTDT_TIMER_BLOCK", SRC_TYPE_STRUCT},
{"ACPI_GTDT_TIMER_ENTRY", SRC_TYPE_STRUCT},
@@ -817,6 +897,7 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"ACPI_IBFT_TARGET", SRC_TYPE_STRUCT},
{"ACPI_IORT_ID_MAPPING", SRC_TYPE_STRUCT},
{"ACPI_IORT_ITS_GROUP", SRC_TYPE_STRUCT},
+ {"ACPI_IORT_IWB", SRC_TYPE_STRUCT},
{"ACPI_IORT_MEMORY_ACCESS", SRC_TYPE_STRUCT},
{"ACPI_IORT_NAMED_COMPONENT", SRC_TYPE_STRUCT},
{"ACPI_IORT_NODE", SRC_TYPE_STRUCT},
@@ -832,24 +913,40 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"ACPI_IOVT_DEVICE_ENTRY", SRC_TYPE_STRUCT},
{"ACPI_IVRS_HEADER", SRC_TYPE_STRUCT},
{"ACPI_IVRS_HARDWARE", SRC_TYPE_STRUCT},
+ {"ACPI_IVRS_HARDWARE1", SRC_TYPE_STRUCT},
+ {"ACPI_IVRS_HARDWARE2", SRC_TYPE_STRUCT},
{"ACPI_IVRS_DE_HEADER", SRC_TYPE_STRUCT},
{"ACPI_IVRS_DEVICE4", SRC_TYPE_STRUCT},
{"ACPI_IVRS_DEVICE8A", SRC_TYPE_STRUCT},
{"ACPI_IVRS_DEVICE8B", SRC_TYPE_STRUCT},
{"ACPI_IVRS_DEVICE8C", SRC_TYPE_STRUCT},
+ {"ACPI_IVRS_DEVICE_HID", SRC_TYPE_STRUCT},
{"ACPI_IVRS_MEMORY", SRC_TYPE_STRUCT},
{"ACPI_MADT_ADDRESS_OVERRIDE", SRC_TYPE_STRUCT},
+ {"ACPI_MADT_APLIC", SRC_TYPE_STRUCT},
+ {"ACPI_MADT_BIO_PIC", SRC_TYPE_STRUCT},
+ {"ACPI_MADT_CORE_PIC", SRC_TYPE_STRUCT},
+ {"ACPI_MADT_EIO_PIC", SRC_TYPE_STRUCT},
{"ACPI_MADT_GENERIC_MSI_FRAME", SRC_TYPE_STRUCT},
{"ACPI_MADT_GENERIC_REDISTRIBUTOR", SRC_TYPE_STRUCT},
+ {"ACPI_MADT_GENERIC_TRANSLATOR", SRC_TYPE_STRUCT},
+ {"ACPI_MADT_GICV5_IRS", SRC_TYPE_STRUCT},
+ {"ACPI_MADT_GICv5_ITS", SRC_TYPE_STRUCT},
+ {"ACPI_MADT_GICv5_ITS_TRANSLATE", SRC_TYPE_STRUCT},
{"ACPI_MADT_HEADER", SRC_TYPE_STRUCT},
+ {"ACPI_MADT_HT_PIC", SRC_TYPE_STRUCT},
+ {"ACPI_MADT_IMSIC", SRC_TYPE_STRUCT},
{"ACPI_MADT_IO_APIC", SRC_TYPE_STRUCT},
{"ACPI_MADT_IO_SAPIC", SRC_TYPE_STRUCT},
+ {"ACPI_MADT_LIO_PIC", SRC_TYPE_STRUCT},
{"ACPI_MADT_LOCAL_APIC", SRC_TYPE_STRUCT},
{"ACPI_MADT_LOCAL_APIC_NMI", SRC_TYPE_STRUCT},
{"ACPI_MADT_LOCAL_APIC_OVERRIDE", SRC_TYPE_STRUCT},
{"ACPI_MADT_LOCAL_SAPIC", SRC_TYPE_STRUCT},
{"ACPI_MADT_LOCAL_X2APIC", SRC_TYPE_STRUCT},
{"ACPI_MADT_LOCAL_X2APIC_NMI", SRC_TYPE_STRUCT},
+ {"ACPI_MADT_LPC_PIC", SRC_TYPE_STRUCT},
+ {"ACPI_MADT_MSI_PIC", SRC_TYPE_STRUCT},
{"ACPI_MADT_GENERIC_DISTRIBUTOR", SRC_TYPE_STRUCT},
{"ACPI_MADT_GENERIC_INTERRUPT", SRC_TYPE_STRUCT},
{"ACPI_MADT_INTERRUPT_OVERRIDE", SRC_TYPE_STRUCT},
@@ -857,17 +954,30 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"ACPI_MADT_NMI_SOURCE", SRC_TYPE_STRUCT},
{"ACPI_MADT_MULTIPROC_WAKEUP", SRC_TYPE_STRUCT},
{"ACPI_MADT_MULTIPROC_WAKEUP_MAILBOX", SRC_TYPE_STRUCT},
+ {"ACPI_MADT_OEM_DATA", SRC_TYPE_STRUCT},
+ {"ACPI_MADT_PLIC", SRC_TYPE_STRUCT},
{"ACPI_MADT_PROCESSOR_APIC", SRC_TYPE_STRUCT},
+ {"ACPI_MADT_RINTC", SRC_TYPE_STRUCT},
{"ACPI_MCFG_ALLOCATION", SRC_TYPE_STRUCT},
+ {"ACPI_MPAM_FUNC_DEPS", SRC_TYPE_STRUCT},
{"ACPI_MPAM_MSC_NODE", SRC_TYPE_STRUCT},
+ {"ACPI_MPAM_RESOURCE_ACPI_INTERFACE", SRC_TYPE_STRUCT},
+ {"ACPI_MPAM_RESOURCE_CACHE_LOCATOR", SRC_TYPE_STRUCT},
+ {"ACPI_MPAM_RESOURCE_GENERIC_LOCATOR", SRC_TYPE_STRUCT},
+ {"ACPI_MPAM_RESOURCE_INTERCONNECT_INTERFACE", SRC_TYPE_STRUCT},
{"ACPI_MPAM_RESOURCE_LOCATOR", SRC_TYPE_STRUCT},
+ {"ACPI_MPAM_RESOURCE_MEMCACHE_INTERFACE", SRC_TYPE_STRUCT},
+ {"ACPI_MPAM_RESOURCE_MEMORY_LOCATOR", SRC_TYPE_STRUCT},
{"ACPI_MPAM_RESOURCE_NODE", SRC_TYPE_STRUCT},
+ {"ACPI_MPAM_RESOURCE_SMMU_INTERFACE", SRC_TYPE_STRUCT},
+ {"ACPI_MPST_CHANNEL", SRC_TYPE_STRUCT},
{"ACPI_MRRM_MEM_RANGE_ENTRY", SRC_TYPE_STRUCT},
{"ACPI_MPST_COMPONENT", SRC_TYPE_STRUCT},
{"ACPI_MPST_DATA_HDR", SRC_TYPE_STRUCT},
{"ACPI_MPST_POWER_DATA", SRC_TYPE_STRUCT},
{"ACPI_MPST_POWER_NODE", SRC_TYPE_STRUCT},
{"ACPI_MPST_POWER_STATE", SRC_TYPE_STRUCT},
+ {"ACPI_MPST_SHARED", SRC_TYPE_STRUCT},
{"ACPI_MSCT_PROXIMITY", SRC_TYPE_STRUCT},
{"ACPI_NFIT_CAPABILITIES", SRC_TYPE_STRUCT},
{"ACPI_NFIT_CONTROL_REGION", SRC_TYPE_STRUCT},
@@ -917,15 +1027,31 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"ACPI_PRMT_MODULE_HEADER", SRC_TYPE_STRUCT},
{"ACPI_PRMT_MODULE_INFO", SRC_TYPE_STRUCT},
{"ACPI_PRMT_HANDLER_INFO", SRC_TYPE_STRUCT},
+ {"ACPI_RHCT_CMO_NODE", SRC_TYPE_STRUCT},
+ {"ACPI_RHCT_HART_INFO", SRC_TYPE_STRUCT},
+ {"ACPI_RHCT_ISA_STRING", SRC_TYPE_STRUCT},
+ {"ACPI_RHCT_MMU_NODE", SRC_TYPE_STRUCT},
+ {"ACPI_RHCT_NODE_HEADER", SRC_TYPE_STRUCT},
+ {"ACPI_RIMT_ID_MAPPING", SRC_TYPE_STRUCT},
+ {"ACPI_RIMT_IOMMU", SRC_TYPE_STRUCT},
+ {"ACPI_RIMT_IOMMU_WIRE_GSI", SRC_TYPE_STRUCT},
+ {"ACPI_RIMT_NODE", SRC_TYPE_STRUCT},
+ {"ACPI_RIMT_PCIE_RC", SRC_TYPE_STRUCT},
+ {"ACPI_RIMT_PLATFORM_DEVICE", SRC_TYPE_STRUCT},
{"ACPI_RSDP_COMMON", SRC_TYPE_STRUCT},
{"ACPI_RSDP_EXTENSION", SRC_TYPE_STRUCT},
{"ACPI_S3PT_RESUME", SRC_TYPE_STRUCT},
{"ACPI_S3PT_SUSPEND", SRC_TYPE_STRUCT},
+ {"ACPI_SDEV_COMPONENT", SRC_TYPE_STRUCT},
{"ACPI_SDEV_HEADER", SRC_TYPE_STRUCT},
+ {"ACPI_SDEV_ID_COMPONENT", SRC_TYPE_STRUCT},
+ {"ACPI_SDEV_MEM_COMPONENT", SRC_TYPE_STRUCT},
{"ACPI_SDEV_NAMESPACE", SRC_TYPE_STRUCT},
{"ACPI_SDEV_PCIE", SRC_TYPE_STRUCT},
{"ACPI_SDEV_PCIE_PATH", SRC_TYPE_STRUCT},
+ {"ACPI_SDEV_SECURE_COMPONENT", SRC_TYPE_STRUCT},
{"ACPI_SVKL_KEY", SRC_TYPE_STRUCT},
+ {"ACPI_SWFT_FILE", SRC_TYPE_STRUCT},
{"ACPI_SRAT_CPU_AFFINITY", SRC_TYPE_STRUCT},
{"ACPI_SRAT_HEADER", SRC_TYPE_STRUCT},
{"ACPI_SRAT_GIC_ITS_AFFINITY", SRC_TYPE_STRUCT},
@@ -934,11 +1060,15 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"ACPI_SRAT_MEM_AFFINITY", SRC_TYPE_STRUCT},
{"ACPI_SRAT_X2APIC_CPU_AFFINITY", SRC_TYPE_STRUCT},
{"ACPI_SRAT_RINTC_AFFINITY", SRC_TYPE_STRUCT},
+ {"ACPI_TABLE_TCPA_HDR", SRC_TYPE_STRUCT},
{"ACPI_TABLE_TCPA_CLIENT", SRC_TYPE_STRUCT},
{"ACPI_TABLE_TCPA_SERVER", SRC_TYPE_STRUCT},
{"ACPI_TPM2_TRAILER", SRC_TYPE_STRUCT},
{"ACPI_TPM23_TRAILER", SRC_TYPE_STRUCT},
{"ACPI_TPM2_ARM_SMC", SRC_TYPE_STRUCT},
+ {"ACPI_TPR_AUX_SR", SRC_TYPE_STRUCT},
+ {"ACPI_TPR_INSTANCE", SRC_TYPE_STRUCT},
+ {"ACPI_TPR_SERIALIZE_REQUEST", SRC_TYPE_STRUCT},
{"ACPI_VIOT_HEADER", SRC_TYPE_STRUCT},
{"ACPI_VIOT_PCI_RANGE", SRC_TYPE_STRUCT},
{"ACPI_VIOT_MMIO", SRC_TYPE_STRUCT},
@@ -952,6 +1082,7 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"DT_FIELD", SRC_TYPE_STRUCT},
{"DT_SUBTABLE", SRC_TYPE_STRUCT},
{"DT_WALK_CALLBACK", SRC_TYPE_SIMPLE},
+ {"DT_TABLE_UNIT", SRC_TYPE_STRUCT},
/* iASL preprocessor */
@@ -969,9 +1100,11 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
/* AcpiHelp utility */
{"AH_AML_OPCODE", SRC_TYPE_STRUCT},
+ {"AH_AML_TYPE", SRC_TYPE_STRUCT},
{"AH_ASL_OPERATOR", SRC_TYPE_STRUCT},
{"AH_ASL_KEYWORD", SRC_TYPE_STRUCT},
{"AH_DEVICE_ID", SRC_TYPE_STRUCT},
+ {"AH_DIRECTIVE_INFO", SRC_TYPE_STRUCT},
{"AH_PREDEFINED_NAME", SRC_TYPE_STRUCT},
{"AH_TABLE", SRC_TYPE_STRUCT},
{"AH_UUID", SRC_TYPE_STRUCT},
@@ -985,6 +1118,11 @@ ACPI_TYPED_IDENTIFIER_TABLE AcpiIdentifiers[] = {
{"EXTERNAL_FIND_INFO", SRC_TYPE_STRUCT},
{"OSL_TABLE_INFO", SRC_TYPE_STRUCT},
+ {"DIRECTIVE_INFO", SRC_TYPE_STRUCT},
+ {"HISTORY_INFO", SRC_TYPE_STRUCT},
+ {"INIT_FILE_ENTRY", SRC_TYPE_STRUCT},
+ {"NFIT_DEVICE_HANDLE", SRC_TYPE_STRUCT},
+
{NULL, 0}
};
@@ -1264,8 +1402,8 @@ ACPI_CONVERSION_TABLE LicenseConversionTable =
ACPI_STRING_TABLE CustomReplacements[] =
{
- {"(c) 1999 - 2025", "(c) 1999 - 2025", REPLACE_WHOLE_WORD}, /* Main ACPICA source */
- {"(c) 2006 - 2023", "(c) 2006 - 2025", REPLACE_WHOLE_WORD}, /* Test suites */
+ {"(c) 1999 - 2025", "(c) 1999 - 2026", REPLACE_WHOLE_WORD}, /* Main ACPICA source */
+ {"(c) 2006 - 2023", "(c) 2006 - 2026", 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 ae788e7d1324..5649b2b81a4e 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpixtract/acpixtract.c b/source/tools/acpixtract/acpixtract.c
index 1760422a2e72..a3ca09b6a4f9 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpixtract/acpixtract.h b/source/tools/acpixtract/acpixtract.h
index 2a3bcf6d020a..ec813cac2018 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpixtract/axmain.c b/source/tools/acpixtract/axmain.c
index 54cc22bf3e45..1d5435965f02 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/acpixtract/axutils.c b/source/tools/acpixtract/axutils.c
index 03bc7b6d0d84..bb4c2cfd438b 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/efihello/efihello.c b/source/tools/efihello/efihello.c
index daa12fa99668..d659ff1d0721 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/examples/examples.c b/source/tools/examples/examples.c
index b3bff9beb3ca..f5b488c87d72 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/examples/examples.h b/source/tools/examples/examples.h
index 88f520a63c0b..97900c1f6a8e 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/examples/exstubs.c b/source/tools/examples/exstubs.c
index aede01ee0cd6..9ddecdf9c47a 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License
diff --git a/source/tools/examples/extables.c b/source/tools/examples/extables.c
index 090876e61d3d..8b270ec9dc81 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 - 2025, Intel Corp.
+ * Some or all of this work - Copyright (c) 1999 - 2026, Intel Corp.
* All rights reserved.
*
* 2. License