Commit graph

1,462,193 commits

Author SHA1 Message Date
AngeloGioacchino Del Regno
60e8451be1
ASoC: dt-bindings: mt8192-afe-pcm: Fix clocks and clock-names
Both clocks and clock-names are missing (a lot of) entries: add
all the used audio clocks and their description and also fix the
example node.

Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Fixes: c861af7861 ("ASoC: dt-bindings: mediatek: mt8192: re-add audio afe document")
Link: https://patch.msgid.link/20260115125624.73598-3-angelogioacchino.delregno@collabora.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2026-01-15 18:58:23 +00:00
Hsieh Hung-En
4711b292b4
ASoC: es8328: Propagate error codes from regmap updates
In es8328_hw_params(), the return value of
snd_soc_component_update_bits() was ignored. This could lead to silent
failures where the hardware is left in an inconsistent state if a
regmap write fails.

Check the return value of regmap updates and propagate any errors back
to the ALSA core. Return 0 on success to match the DAI ops convention.

Signed-off-by: Hsieh Hung-En <hungen3108@gmail.com>
Link: https://patch.msgid.link/20260115161359.41979-1-hungen3108@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2026-01-15 18:58:22 +00:00
Linus Torvalds
13b2d15d99 32 hotfixes. 16 are cc:stable, 24 are for MM.
- four kerneldoc fixes from Bagas Sanjaya
 
 - four DAMON fixes from SeongJae
 
 - four mremap VMA-related fixes from Lorenzo
 
 - various singletons - please see the changelogs for details
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQTTMBEPP41GrTpTJgfdBJ7gKXxAjgUCaWkP3gAKCRDdBJ7gKXxA
 jnmTAQCBiCyw7Pvvak5OM8Of0qQ8m/jQmNMBPRrd5M3tAAEOlwD9F7E6RjcmyItU
 k+sboDgNKTvgdRHTmRzj1t96aXJrSQQ=
 =OxTh
 -----END PGP SIGNATURE-----

Merge tag 'mm-hotfixes-stable-2026-01-15-08-03' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm

Pull misc fixes from Andrew Morton:

 - kerneldoc fixes from Bagas Sanjaya

 - DAMON fixes from SeongJae

 - mremap VMA-related fixes from Lorenzo

 - various singletons - please see the changelogs for details

* tag 'mm-hotfixes-stable-2026-01-15-08-03' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm: (30 commits)
  drivers/dax: add some missing kerneldoc comment fields for struct dev_dax
  mm: numa,memblock: include <asm/numa.h> for 'numa_nodes_parsed'
  mailmap: add entry for Daniel Thompson
  tools/testing/selftests: fix gup_longterm for unknown fs
  mm/page_alloc: prevent pcp corruption with SMP=n
  iommu/sva: include mmu_notifier.h header
  mm: kmsan: fix poisoning of high-order non-compound pages
  tools/testing/selftests: add forked (un)/faulted VMA merge tests
  mm/vma: enforce VMA fork limit on unfaulted,faulted mremap merge too
  tools/testing/selftests: add tests for !tgt, src mremap() merges
  mm/vma: fix anon_vma UAF on mremap() faulted, unfaulted merge
  mm/zswap: fix error pointer free in zswap_cpu_comp_prepare()
  mm/damon/sysfs-scheme: cleanup access_pattern subdirs on scheme dir setup failure
  mm/damon/sysfs-scheme: cleanup quotas subdirs on scheme dir setup failure
  mm/damon/sysfs: cleanup attrs subdirs on context dir setup failure
  mm/damon/sysfs: cleanup intervals subdirs on attrs dir setup failure
  mm/damon/core: remove call_control in inactive contexts
  powerpc/watchdog: add support for hardlockup_sys_info sysctl
  mips: fix HIGHMEM initialization
  mm/hugetlb: ignore hugepage kernel args if hugepages are unsupported
  ...
2026-01-15 10:47:14 -08:00
Imre Deak
4d636e0fc2 drm/i915/dp: Use intel_dp_dsc_get_slice_config()
Simplify things by computing the detailed slice configuration using
intel_dp_dsc_get_slice_config(), instead of open-coding the same.

While at it add a TODO comment to intel_dp_dsc_compute_config() to
explore if it's worth increasing the number of VDSC stream engines used,
in order to reduce the minimum CDCLK required.

v2: Add a TODO comment to intel_dp_dsc_compute_config() to explore if
    it's worth increasing the number of slices in order to use a lower
    CDCLK. (Jouni)

Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: https://patch.msgid.link/20260114162232.92731-16-imre.deak@intel.com
2026-01-15 20:20:21 +02:00
Imre Deak
54cf7900c6 drm/i915/dp: Add intel_dp_dsc_get_slice_config()
Add intel_dp_dsc_get_slice_config() to compute the detailed slice
configuration and determine the slices-per-line value (returned by
intel_dp_dsc_get_slice_count()) using this function.

v2: Fix incorrectly returning false from intel_dp_dsc_min_slice_count()
    due to rebase fail. (Jouni)

Cc: Jouni Högander <jouni.hogander@intel.com>
Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: https://patch.msgid.link/20260114162232.92731-15-imre.deak@intel.com
2026-01-15 20:20:21 +02:00
Imre Deak
088d06bb17 drm/i915/dp: Unify DP and eDP slice count computation
Unify the DP and eDP slices-per-line computation. Atm eDP simply returns
the maximum slices-per-line value supported by the sink, but using the
same helper function for both cases still makes sense, since a follow-up
change will compute the detailed slice config for both cases.

Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: https://patch.msgid.link/20260114162232.92731-14-imre.deak@intel.com
2026-01-15 20:20:21 +02:00
Imre Deak
ba9f0bbecd drm/i915/dsi: Use intel_dsc_get_slice_config()
Use intel_dsc_get_slice_config() for DSI to compute the slice
configuration based on the slices-per-line sink capability, instead of
open-coding the same.

Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: https://patch.msgid.link/20260114162232.92731-13-imre.deak@intel.com
2026-01-15 20:20:21 +02:00
Imre Deak
91f0a94974 drm/i915/dsc: Add intel_dsc_get_slice_config()
Add intel_dsc_get_slice_config() and move the logic to select a given
slice configuration to that function from the configuration loop in
intel_dp_dsc_get_slice_count(). The same functionality can be used by
other outputs like DSI as well, done as a follow-up.

Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: https://patch.msgid.link/20260114162232.92731-12-imre.deak@intel.com
2026-01-15 20:20:20 +02:00
Imre Deak
da833bb4ba drm/i915/dp: Simplify the DSC slice config loop's slices-per-pipe iteration
Simplify the slice config loop in intel_dp_dsc_get_slice_count(), using
the loop iterator as the slices-per-pipe value directly, instead of
looking up the same value from an array.

While at it move the code comment about the slice configuration closer
to where the configuration is determined and clarify it a bit.

Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: https://patch.msgid.link/20260114162232.92731-11-imre.deak@intel.com
2026-01-15 20:19:06 +02:00
Imre Deak
0e6d7b6e50 drm/i915/dp: Rename test_slice_count to slices_per_line
Rename test_slice_count to slices_per_line for clarity.

Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: https://patch.msgid.link/20260114162232.92731-10-imre.deak@intel.com
2026-01-15 20:19:05 +02:00
Imre Deak
856428d1ce drm/i915/dp: Use int for DSC slice count variables
There is no reason to use the more specific u8 type for slice count
variables, use the more generic int type instead.

Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: https://patch.msgid.link/20260114162232.92731-9-imre.deak@intel.com
2026-01-15 20:19:05 +02:00
Imre Deak
15f908bce5 drm/i915/dp: Factor out intel_dp_dsc_min_slice_count()
Factor out intel_dp_dsc_min_slice_count() for making
intel_dp_dsc_get_slice_count() more readable and also to prepare for a
follow-up change unifying the eDP and DP slice count/config computation.

Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: https://patch.msgid.link/20260114162232.92731-8-imre.deak@intel.com
2026-01-15 20:19:04 +02:00
Imre Deak
e941eb1078 drm/i915/dsc: Switch to using intel_dsc_line_slice_count()
By now all the places are updated to track the DSC slice configuration
in intel_crtc_state::dsc.slice_config, so calculate the slices-per-line
value using that config, instead of using
intel_crtc_state::dsc.slice_count caching the same value and remove
the cached slice_count.

v2: Rebase on latest drm-tip, converting another user of dsc.slice_count
    in intel_vdsc_min_cdclk().

Cc: Ankit Nautiyal <ankit.k.nautiyal@intel.com>
Reviewed-by: Jouni Högander <jouni.hogander@intel.com> # v1
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: https://patch.msgid.link/20260114162232.92731-7-imre.deak@intel.com
2026-01-15 20:19:03 +02:00
Imre Deak
fd1e610ca2 drm/i915/dp: Track the detailed DSC slice configuration
Add tracking for the DP DSC pipes-per-line and slices-per-stream value
in the slice config state and compute the current slices-per-line
(slice_count) value using this slice config. The slices-per-line value
used atm will be removed by a follow-up change after converting all the
places using it to use the slice config instead.

For now the slices-per-stream value is calculated based on the
slices-per-line value (slice_count) calculated by the
drm_dp_dsc_sink_max_slice_count() / intel_dp_dsc_get_slice_count()
functions. In a follow-up change these functions will be converted to
calculate the slices-per-stream value directly, along with the detailed
slice configuration.

Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: https://patch.msgid.link/20260114162232.92731-6-imre.deak@intel.com
2026-01-15 20:19:03 +02:00
Imre Deak
57152a502e drm/i915/dsi: Track the detailed DSC slice configuration
Add tracking for the DSI DSC pipes-per-line and slices-per-stream value
in the slice config state and compute the current slices-per-line value
using this slice config state. The slices-per-line value used atm will
be removed by a follow-up change after converting all the places using
it to use the detailed slice config instead.

Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: https://patch.msgid.link/20260114162232.92731-5-imre.deak@intel.com
2026-01-15 20:19:02 +02:00
Imre Deak
611cadd5c0 drm/i915/dsi: Move initialization of DSI DSC streams-per-pipe to fill_dsc()
Move the initialization of the DSI DSC streams-per-pipe value to
fill_dsc() next to where the corresponding (per-line) slice_count value
is initialized. This allows converting the initialization to use the
detailed slice configuration state in follow-up changes.

Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: https://patch.msgid.link/20260114162232.92731-4-imre.deak@intel.com
2026-01-15 20:19:02 +02:00
Imre Deak
2b8f5b5cb2 drm/i915/dsc: Track the DSC stream count in the DSC slice config state
Move the tracking for the DSC stream count from
intel_crtc_state::dsc.num_streams to
intel_crtc_state::dsc.slice_config.streams_per_pipe.

While at it add a TODO comment to read out the full DSC configuration
from HW including the pipes-per-line and slices-per-stream values.

Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: https://patch.msgid.link/20260114162232.92731-3-imre.deak@intel.com
2026-01-15 20:19:01 +02:00
Imre Deak
889ff8dd46 drm/i915/dsc: Track the detaild DSC slice configuration
Add a way to track the detailed DSC pipes-per-line, streams-per-pipe,
slices-per-stream configuration instead of the current streams-per-pipe
and slices-per-line value. This way describes the slice configuration in
a clearer way, for instance providing a

2 pipes-per-line x 2 streams-per-pipe x 2 slices-per-stream = 8 slices-per-line

view, instead of the current, coarser

2 streams-per-pipe, 8 slices-per-line

view, the former better reflecting that each DSC stream engine has 2
slices. This also let's optimizing the configuration in a
simpler/clearer way, for instance using 1 stream x 2 slices, or 1 stream
x 4 slices instead of the current 2 stream x 1 slice, or 2 streams x 2
slices configuration (so that 1 DSC stream engine can be powered off in
each pipe).

Follow-up changes will convert the current slices-per-line computation
logic to compute instead the above detailed slice configuration.

Reviewed-by: Jouni Högander <jouni.hogander@intel.com>
Signed-off-by: Imre Deak <imre.deak@intel.com>
Link: https://patch.msgid.link/20260114162232.92731-2-imre.deak@intel.com
2026-01-15 20:19:00 +02:00
Linus Torvalds
9e995c573b Including fixes from bluetooth, can and IPsec.
Current release - regressions:
 
   - net: add net.core.qdisc_max_burst
 
   - can: propagate CAN device capabilities via ml_priv
 
 Previous releases - regressions:
 
   - dst: fix races in rt6_uncached_list_del() and rt_del_uncached_list()
 
   - ipv6: fix use-after-free in inet6_addr_del().
 
   - xfrm: fix inner mode lookup in tunnel mode GSO segmentation
 
   - ip_tunnel: spread netdev_lockdep_set_classes()
 
   - ip6_tunnel: use skb_vlan_inet_prepare() in __ip6_tnl_rcv()
 
   - bluetooth: hci_sync: enable PA sync lost event
 
   - eth: virtio-net:
     - fix the deadlock when disabling rx NAPI
     - fix misalignment bug in struct virtnet_info
 
 Previous releases - always broken:
 
   - ipv4: ip_gre: make ipgre_header() robust
 
   - can: fix SSP_SRC in cases when bit-rate is higher than 1 MBit.
 
   - eth: mlx5e: profile change fix
 
   - eth: octeon_ep_vf: fix free_irq dev_id mismatch in IRQ rollback
 
   - eth: macvlan: fix possible UAF in macvlan_forward_source()
 
 Signed-off-by: Paolo Abeni <pabeni@redhat.com>
 -----BEGIN PGP SIGNATURE-----
 
 iQJGBAABCgAwFiEEg1AjqC77wbdLX2LbKSR5jcyPE6QFAmlo9uMSHHBhYmVuaUBy
 ZWRoYXQuY29tAAoJECkkeY3MjxOk4iAP/i3I0frORQbcM/NI8sqjQsc7w84SbBB9
 K3FyfA+pfmS+sa5eZBan/eEe3tSQM5xn6XBflZXVxTC2QBxfiH3OVPWGconA7WRk
 KIizSl340vtMhBMlUlXyox8BG7nn+pxjI3BqB5aTHWvEolS9eUgxtJJEDC1MnRzw
 ZkarPXmNTLK6pDWAZ/CYjjBVnaUOt1V2ceRFfRU1SK/ROG7ajpfVLrSXZ4gICc/8
 +br2g4p8hZx6sDYTY4lV/fMMzbbu3n8rRSoqgy8UDAfDJgglifvm4Ocu+EW5mLLG
 IlNobJghtCUcbQN4X8GPg+6cW1yA94qeyHZSHD0Zg3lN7Hfa92WnhVwoqqjCgETC
 ppXnj0zRZN81TeIQx9UIJLXxBZOt+3SSpvdaYdruKg2Sx0rsKraWLjXlResiehzw
 DFZb893SFkJgPEVCcndzGi2I5/MCX3skNQq8+Od73Xcjbl35qiXafGa856R2Z5Ne
 nSEE6BdnYvQAuCwCJ01nFJLQw3ot1H1TO2hF9QEDQ7K42zp2Yj5EKVcYQLAzlAAk
 rzb3D9VIpEpSaXTIpJwa+fZUnpe649J+Rgg71fdj4FJUoNqYErvHQ6QzblmhdThr
 efdpHg1PN3EvpVao27eSiDLl7DGOL8kDmXDpvIhFctKMVhw8mFhdFDmWenGTRQaT
 u2hT+oC19rEG
 =zUPN
 -----END PGP SIGNATURE-----

Merge tag 'net-6.19-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net

Pull networking fixes from Paolo Abeni:
 "Including fixes from bluetooth, can and IPsec.

  Current release - regressions:

   - net: add net.core.qdisc_max_burst

   - can: propagate CAN device capabilities via ml_priv

  Previous releases - regressions:

   - dst: fix races in rt6_uncached_list_del() and
     rt_del_uncached_list()

   - ipv6: fix use-after-free in inet6_addr_del().

   - xfrm: fix inner mode lookup in tunnel mode GSO segmentation

   - ip_tunnel: spread netdev_lockdep_set_classes()

   - ip6_tunnel: use skb_vlan_inet_prepare() in __ip6_tnl_rcv()

   - bluetooth: hci_sync: enable PA sync lost event

   - eth: virtio-net:
      - fix the deadlock when disabling rx NAPI
      - fix misalignment bug in struct virtnet_info

  Previous releases - always broken:

   - ipv4: ip_gre: make ipgre_header() robust

   - can: fix SSP_SRC in cases when bit-rate is higher than 1 MBit.

   - eth:
      - mlx5e: profile change fix
      - octeon_ep_vf: fix free_irq dev_id mismatch in IRQ rollback
      - macvlan: fix possible UAF in macvlan_forward_source()"

* tag 'net-6.19-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (37 commits)
  virtio_net: Fix misalignment bug in struct virtnet_info
  net: can: j1939: j1939_xtp_rx_rts_session_active(): deactivate session upon receiving the second rts
  can: raw: instantly reject disabled CAN frames
  can: propagate CAN device capabilities via ml_priv
  Revert "can: raw: instantly reject unsupported CAN frames"
  net/sched: sch_qfq: do not free existing class in qfq_change_class()
  selftests: drv-net: fix RPS mask handling for high CPU numbers
  selftests: drv-net: fix RPS mask handling in toeplitz test
  ipv6: Fix use-after-free in inet6_addr_del().
  dst: fix races in rt6_uncached_list_del() and rt_del_uncached_list()
  net: hv_netvsc: reject RSS hash key programming without RX indirection table
  tools: ynl: render event op docs correctly
  net: add net.core.qdisc_max_burst
  net: airoha: Fix typo in airoha_ppe_setup_tc_block_cb definition
  net: phy: motorcomm: fix duplex setting error for phy leds
  net: octeon_ep_vf: fix free_irq dev_id mismatch in IRQ rollback
  net/mlx5e: Restore destroying state bit after profile cleanup
  net/mlx5e: Pass netdev to mlx5e_destroy_netdev instead of priv
  net/mlx5e: Don't store mlx5e_priv in mlx5e_dev devlink priv
  net/mlx5e: Fix crash on profile change rollback failure
  ...
2026-01-15 10:11:11 -08:00
Matthew Brost
e89aacd1ec drm/xe: Reduce LRC timestamp stuck message on VFs to notice
An LRC timestamp getting stuck is a somewhat normal occurrence. If a
single VF submits a job that does not get timesliced, the LRC timestamp
will not increment. Reduce the LRC timestamp stuck message on VFs to
notice (same log level as job timeout) to avoid false CI bugs in tests
where a VF submits a job that does not get timesliced.

Closes: https://gitlab.freedesktop.org/drm/xe/kernel/-/issues/7032
Fixes: bb63e7257e ("drm/xe: Avoid toggling schedule state to check LRC timestamp in TDR")
Suggested-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Signed-off-by: Matthew Brost <matthew.brost@intel.com>
Reviewed-by: Stuart Summers <stuart.summers@intel.com>
Link: https://patch.msgid.link/20260114184905.4189026-1-matthew.brost@intel.com
2026-01-15 09:36:08 -08:00
Rosen Penev
f6551f7861
i2c: rtl9300: use of instead of fwnode
Avoids having to use to_of_node and just assign directly. This is an OF
only driver anyway.

Use _scoped for the for each loop to avoid refcount leaks.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Reviewed-by: Chris Packham <chris.packham@alliedtelesis.co.nz>
Signed-off-by: Andi Shyti <andi.shyti@kernel.org>
Link: https://lore.kernel.org/r/20251217063027.37987-3-rosenp@gmail.com
2026-01-15 18:30:27 +01:00
Rosen Penev
fc31008d5f
i2c: rtl9300: remove const cast
These casts are used to remove const for no good reason. Fix the types
instead.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
Reviewed-by: Chris Packham <chris.packham@alliedtelesis.co.nz>
Signed-off-by: Andi Shyti <andi.shyti@kernel.org>
Link: https://lore.kernel.org/r/20251217063027.37987-2-rosenp@gmail.com
2026-01-15 18:30:24 +01:00
Damien Le Moal
5e35a24c96 block: improve blk_op_str() comment
Replace XXX with what it actually means.

Signed-off-by: Damien Le Moal <dlemoal@kernel.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2026-01-15 10:19:09 -07:00
Damien Le Moal
41ee77b753 block: fix blk_zone_cond_str() comment
Fix the comment for blk_zone_cond_str() by replacing the meaningless
BLK_ZONE_ZONE_XXX comment with the correct BLK_ZONE_COND_name, thus also
replacing the XXX with what that actually means.

Signed-off-by: Damien Le Moal <dlemoal@kernel.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2026-01-15 10:19:08 -07:00
Michal Camacho Romero
e8f614dabd ACPICA: Refactor for TPR Base/Limit registers bitmasks
Link: 5cb62a1d49
Signed-off-by: Michal Camacho Romero <michal.camacho.romero@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Link: https://patch.msgid.link/3193976.CbtlEUcBR6@rafael.j.wysocki
2026-01-15 18:17:50 +01:00
Michal Camacho Romero
3b8907925a ACPICA: Replace TPRn Base and Limit registers
Replace TPRn Base and Limit registers with compatible bitmasks for them.

Link: be91c58139
Signed-off-by: Michal Camacho Romero <michal.camacho.romero@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Link: https://patch.msgid.link/1871109.TLkxdtWsSY@rafael.j.wysocki
2026-01-15 18:17:50 +01:00
Saket Dumbre
099b050699 ACPICA: Logfile: Changes for version 20251212
Link: 446be43823
Signed-off-by: Saket Dumbre <saket.dumbre@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Link: https://patch.msgid.link/15657187.tv2OnDr8pf@rafael.j.wysocki
2026-01-15 18:17:50 +01:00
Michal Camacho Romero
691474b1ae ACPICA: Align comments in TPRn-related structures
Align comments in ACPI_TPRN_BASE_REG and ACPI_TPRN_LIMIT_REG structures.

Link: 95815d5509
Signed-off-by: Michal Camacho Romero <michal.camacho.romero@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Link: https://patch.msgid.link/2286538.NgBsaNRSFp@rafael.j.wysocki
2026-01-15 18:17:50 +01:00
Michal Camacho Romero
9b02cf9ee6 ACPICA: Cleanup comments and DTPR Table handle functions
Link: cc48026433
Signed-off-by: Michal Camacho Romero <michal.camacho.romero@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Link: https://patch.msgid.link/2042656.yKVeVyVuyW@rafael.j.wysocki
2026-01-15 18:17:49 +01:00
Michal Camacho Romero
9565d4713b ACPICA: Verify DTPR and TPR Instance buffer pointers
Verify DTPR and TPR Instance buffer pointers and refactor comments.

Link: bdec5b61cf
Signed-off-by: Michal Camacho Romero <michal.camacho.romero@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Link: https://patch.msgid.link/884204745.0ifERbkFSE@rafael.j.wysocki
2026-01-15 18:17:49 +01:00
Michal Camacho Romero
b110e28c3b ACPICA: Fix Segmentation Fault error related to DTPR
Fix Segmentation Fault error, caused by invalid buffer lenght in DTPR
Table Template:

 * Update buffer length for TPR Table, which invalid value caused
   Segmentation Fault, during ASL file production.

 * Refactor invalid values of TPR instances, arrays and serialization
   requests count and TPR Base addresses in the DTPR table template.

 * Fix offset updating in the acpi_dm_dump_dtpr function.

Link: f75850bc47
Signed-off-by: Michal Camacho Romero <michal.camacho.romero@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Link: https://patch.msgid.link/2541195.jE0xQCEvom@rafael.j.wysocki
2026-01-15 18:17:49 +01:00
Michal Camacho Romero
6f99d3fe22 ACPICA: Create auxiliary ACPI_TPR_AUX_SR structure for iASL compiler
Define unofficial structure ACPI_TPR_AUX_SR, which holds information
about the number of serialization registers for TPRs.

It simplifies DTPR Serialization Request Info Table compilation.

Link: 31f470e708
Signed-off-by: Michal Camacho Romero <michal.camacho.romero@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Link: https://patch.msgid.link/2266165.Icojqenx9y@rafael.j.wysocki
2026-01-15 18:17:49 +01:00
Pawel Chmielewski
f259664b88 ACPICA: ACPI 6.6: Add _VDM (Voltage Domain) object
A processor voltage domain is an identifier that specifies the voltage
plane associated with a given group of processors.

Refer to section 6.2.10. _VDM (Voltage Domain) of ACPI 6.6 specification
for more information.

Link: d0dbb15764
Signed-off-by: Pawel Chmielewski <pawel.chmielewski@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Link: https://patch.msgid.link/1921526.atdPhlSkOF@rafael.j.wysocki
2026-01-15 18:17:49 +01:00
Pawel Chmielewski
146b5e78b3 ACPICA: actbl3.h: ACPI 6.6: SRAT: New flag in Memory Affinity Structure
ACPI 6.6 introduces Specific-Purpose flag to Memory Affinity structure.

Link: cfce3b689b
Signed-off-by: Pawel Chmielewski <pawel.chmielewski@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Link: https://patch.msgid.link/3868802.MHq7AAxBmi@rafael.j.wysocki
2026-01-15 18:17:49 +01:00
Pawel Chmielewski
8059c62306 ACPICA: actbl2.h: ACPI 6.6: RAS2: Update Parameter Block structure
ACPI 6.6 introduces RAS2 enhancements for patrol scrub functionality,
adding new fields to the Parameter Block structure. These fields are
applicable only in the response to the GET_PATROL_PARAMETERS command.

Link: 0628420240
Signed-off-by: Pawel Chmielewski <pawel.chmielewski@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Link: https://patch.msgid.link/2263284.Mh6RI2rZIc@rafael.j.wysocki
2026-01-15 18:17:49 +01:00
Jose Marinho
522ceeceff ACPICA: Add Arm IORT IWB node definitions
The IORT IUWB node is defined in IORT issue E.g
See https://developer.arm.com/documentation/den0049/eg

Link: a90dc2f538
Signed-off-by: Jose Marinho <jose.marinho@arm.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Link: https://patch.msgid.link/2691130.Lt9SDvczpP@rafael.j.wysocki
2026-01-15 18:17:49 +01:00
Jose Marinho
0cc5b091ec ACPICA: Add GICv5 MADT structures
The GICv5 adds the following MADT structures:
 - IRS
 - ITS Config Frame
 - ITS Translate Frame

The ACPI spec ECR is at https://github.com/tianocore/edk2/issues/11148

Link: 69cca52ddf
Signed-off-by: Jose Marinho <jose.marinho@arm.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Link: https://patch.msgid.link/1953107.CQOukoFCf9@rafael.j.wysocki
2026-01-15 18:17:49 +01:00
Armin Wolf
c3bc5f6d89 ACPICA: Fix asltests using the Fatal() opcode
Some asltests test the behavior of the Fatal() opcode and thus require
that said opcode does not return an error when called.

Introduce a compile-time option called ACPI_CONTINUE_ON_FATAL to
instruct the executor to continue the execution of AML bytecode when
encountering a Fatal() opcode. Also update the asltest to use this
new option.

Fixes: ("Abort AML bytecode execution when executing AML_FATAL_OP")
Link: 428b3410c4
Signed-off-by: Armin Wolf <W_Armin@gmx.de>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Link: https://patch.msgid.link/2052065.usQuhbGJ8B@rafael.j.wysocki
2026-01-15 18:17:48 +01:00
Ben Horgan
091c4af356 ACPICA: ACPI 6.4: PPTT: include all fields in subtable type1
In PPTT version 3 an extra field, Cache ID, was added to the Cache Type
Structure.  The struct, struct acpi_pptt_cache_v1, contains only this field. This
differs from the treatment of other versioned structures and is unexpected
for linux which reuses the actbl2.h header file. Include all the fields of
the new Cache Type Structure in struct acpi_pptt_cache_v1 and fix up all uses.

Link: a9ec9105f5
Signed-off-by: Ben Horgan <ben.horgan@arm.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Link: https://patch.msgid.link/1851677.VLH7GnMWUR@rafael.j.wysocki
2026-01-15 18:17:48 +01:00
Armin Wolf
026ad376a6 ACPICA: Abort AML bytecode execution when executing AML_FATAL_OP
The ACPI specification states that when executing AML_FATAL_OP,
the OS should log the fatal error event and shutdown in a timely
fashion.

Windows complies with this requirement by immediatly entering a
Bso_d, effectively aborting the execution of the AML bytecode in
question.

ACPICA however might continue with the AML bytecode execution
should acpi_os_signal() simply return AE_OK. This will cause issues
because ACPI BIOS implementations might assume that the Fatal()
operator does not return.

Fix this by aborting the AML bytecode execution in such a case
by returning AE_ERROR. Also turn struct acpi_signal_fatal_info into a
local variable because of its small size (12 bytes) and to ensure
that acpi_os_signal() always receives valid information about the
fatal ACPI BIOS error.

Link: d516c7758b
Signed-off-by: Armin Wolf <W_Armin@gmx.de>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Link: https://patch.msgid.link/3325491.5fSG56mABF@rafael.j.wysocki
2026-01-15 18:17:48 +01:00
Michal Camacho Romero
30c2a333aa ACPICA: Define DTPR structure related info tables and data template
* DTPR Table Info
 * TPR Instance Table Info
 * TPR Array Table Info
 * TPR Serialize Request Table Info
 * DTPR Table Data Template

Link: abadf1d347
Signed-off-by: Michal Camacho Romero <michal.camacho.romero@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Link: https://patch.msgid.link/3676546.iIbC2pHGDl@rafael.j.wysocki
2026-01-15 18:17:48 +01:00
Michal Camacho Romero
c5ecbc65bb ACPICA: Add DTPR table support for the ASL compiler
Define DTPR related structures offsets.

Link: c6fc16c893
Signed-off-by: Michal Camacho Romero <michal.camacho.romero@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Link: https://patch.msgid.link/7902293.EvYhyI6sBW@rafael.j.wysocki
2026-01-15 18:17:48 +01:00
Xianglai Li
75c3b2d97c ACPICA: iASL: Add definitions for the IOVT table
Add definitions for the IOVT table and its subtables.

Link: 14c0def532
Signed-off-by: Xianglai Li <lixianglai@loongson.cn>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Link: https://patch.msgid.link/2031013.PYKUYFuaPT@rafael.j.wysocki
2026-01-15 18:17:48 +01:00
Armin Wolf
78ebefd2cb ACPICA: Add support for the Microsoft display mux _OSI string
As per [1].

Link: https://learn.microsoft.com/en-us/windows-hardware/drivers/display/automatic-display-switch [1]
Link: 28b644211f
Signed-off-by: Armin Wolf <W_Armin@gmx.de>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Link: https://patch.msgid.link/10790566.nUPlyArG6x@rafael.j.wysocki
2026-01-15 18:17:48 +01:00
Dave Jiang
55e81991e1 ACPICA: Add KEYP table definition
Software uses this table to discover the base address of the Key
Configuration Unit (KCU) register block associated with each IDE capable
host bridge.

[1]: Root Complex IDE Key Configuration Unit Software Programming Guide
     https://cdrdv2.intel.com/v1/dl/getContent/732838

Link: af970172e2
Signed-off-by: Dave Jiang <dave.jiang@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Link: https://patch.msgid.link/3401908.44csPzL39Z@rafael.j.wysocki
2026-01-15 18:17:48 +01:00
Alexey Simakov
f851e03bce ACPICA: Fix NULL pointer dereference in acpi_ev_address_space_dispatch()
Cover a missed execution path with a new check.

Fixes: 0acf24ad7e ("ACPICA: Add support for PCC Opregion special context data")
Link: f421dd9dd8
Signed-off-by: Alexey Simakov <bigalex934@gmail.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Link: https://patch.msgid.link/3030574.e9J7NaK4W3@rafael.j.wysocki
2026-01-15 18:17:47 +01:00
Armin Wolf
ce04af0a1b ACPICA: Add UUIDs associated with TPM 2.0 devices
The Trusted Computing Group has designed multiple interface extensions
around TPM 2.0 devices including the ACPI start method, hardware
information and memory clear features. Add the associated UUIDs to the
list of known UUIDs so that the ASL compiler stops complaining about
them.

Link: 0e8b10b058
Signed-off-by: Armin Wolf <W_Armin@gmx.de>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Link: https://patch.msgid.link/2254685.irdbgypaU6@rafael.j.wysocki
2026-01-15 18:17:47 +01:00
Armin Wolf
19df9f21ca ACPICA: Add UUID for Microsoft fan extensions
Microsoft has designed an interface for reading/writing fan speed
trip points. Add the associated UUID to the list of known UUIDs so
that the ASL compiler stops complaining about it.

Link: 67f0202c0f
Signed-off-by: Armin Wolf <W_Armin@gmx.de>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Link: https://patch.msgid.link/5045837.GXAFRqVoOG@rafael.j.wysocki
2026-01-15 18:17:47 +01:00
Zilin Guan
05390d31d7 ACPICA: ACPICA: replace ACPI_FREE() with acpi_ut_delete_object_desc()
acpi_ut_create_internal_object() may allocate memory from a slab cache
via kmem_cache_zalloc(), but the code currently frees it with ACPI_FREE(),
which calls kfree().

This mismatch prevents the object from being released properly and may
lead to memory leaks or other issues.

Fix this by replacing ACPI_FREE() with acpi_ut_delete_object_desc(),
which matches the allocation method used for internal objects.

Link: a1c55dfea1
Signed-off-by: Zilin Guan <zilin@seu.edu.cn>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Link: https://patch.msgid.link/4710853.LvFx2qVVIh@rafael.j.wysocki
2026-01-15 18:17:47 +01:00
Michal Camacho Romero
d6f6bae3ec ACPICA: Add support for the new ACPI Table: DTPR
Define a new the ACPI Table, structure and registers, related with it, according
to the latest version of the Intel TXT DMA Protection Ranges (TPR) specification
(Revision 0.73):

*    DTPR ACPI Table
*    TPR Base Register
*    TPR Serialize Request Register
*    TPR Limit Register
*    TPR Instance Structure
*    DMAR TXT Protected Reporting Structure

These structures will be used to handle TPRs on the Intel CPU's.

Link: 10e7a88f70
Link: https://uefi.org/sites/default/files/resources/633933_Intel_TXT_DMA_Protection_Ranges_rev_0p73.pdf
Signed-off-by: Michal Camacho Romero <michal.camacho.romero@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Link: https://patch.msgid.link/6234415.lOV4Wx5bFT@rafael.j.wysocki
2026-01-15 18:17:47 +01:00