linux/drivers/firmware
Arnd Bergmann 7c4856193d Arm SCMI updates/fixes for v7.3
A collection of SCMI core and transport fixes addressing resource
 lifetimes, teardown races and error handling. Most of these issues
 are reported by Sashiko as existing issues while reviewing new feature
 additions to SCMI.
 
 The changes:
 - publish channel state before mailbox and SMC callbacks can run,
 - quiesce notification work before tearing down transport channels,
 - fix partial channel setup and mailbox allocation cleanup,
 - make IDR iteration and shared-channel teardown safe,
 - correct SCMI device, OF node, handle, bus ID and SystemPower lifetimes;,
 - harden requested-device registration and removal against races and
   partial failures,
 - reject out-of-range DT protocol IDs, and
 - simplify notification allocations using flexible arrays.
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEunHlEgbzHrJD3ZPhAEG6vDF+4pgFAmpjMg8ACgkQAEG6vDF+
 4pg3Kw/+N09f4Zd1c8xwQi5NEfwv8uEKRE73VSAL18aNn89mGj6J1cGOs1NWHJ0b
 bKDOuhoJWYynHDGbaZGFVLhh3l2Jj2yE+Hr9sq2nOHktA7HFqSVV5ea8RuRD/XHt
 3rNIX6UBLSEp7N40ehkwD506zr3eRcfwtUwS8taEvl0NWNKrPJ+TpMxN3LBGWzBq
 oXaD7642Mb9rDyApuwOGWlHitDPU1qQv5JrLLWP8/Nx4PQlb1TX6171FXvrMdjdx
 qKUiUBZM9Q9w4gaKgnIEcq0KCBWdxa5ZKPupZTUzt60NEpkemjYcmjxoJFDIArGC
 013Z/dXhynkigaEjfvWPhoNaoLx1Q3NTk5ChljaKLizI6sE0N02wuax8rHIuKSnL
 fhbyNcpmsEgiVwnX4zw6l44AakWHx8qkE3avtx0yks+joAWt8ERzIHCd+uWF1z15
 b18humBSxcs3DmmejH8JMMCTpL7OxI3PHtdntttXWpvM43/pZnO6vF23Nfo0KQ3q
 ZrOD15W4qQ8M9nGKmpaa6f6tDPoWuULLcMhMHZo3FLdOYa5lnGtAs1Rj7MvJ5I0b
 u8/t4P2hoCskSVN973P51ZA3r1NI9ZK+uZ3Krq9TFEvgI5ZZQTfDoz6Zc4q9/ERV
 80k8/wRP8vCjBM2mQ+WVlWG1gJEq487t6bBPfQVeHmS+/BI0g+s=
 =w04g
 -----END PGP SIGNATURE-----
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEo6/YBQwIrVS28WGKmmx57+YAGNkFAmpjjIsACgkQmmx57+YA
 GNmWgQ//e5oKyKC8Ac6vcjbRbwb6joIX0u0N8slFoKi3rano2Hb0e0TOLSywjCq8
 w2G/n5tBjZKfp9RSqSWY0lZHjZhyyokosiSldtr8rX6v0LLQurHIPHakFHI0uW1h
 1iquU37P+TJ8C/EcBHcG/3jrvMGPO2PFln7+XVNE2eG2Q79E26NcU9sNoLJeBTlt
 AZrwpJ9jnUnay+zbc5jtqxqN50cam5I+lNNu+sZmDd67rN+wOUX68yn8vE6Buk+5
 li1Ni0W6sKTbMchx+G56ibqnvTcLnouD5wvSNcgJOVycYsykzMB6pSKgqnUGqBTu
 uHtvRJ1/Nzp+iQqdiGnzGw4x4bB7tackKIQtOww2wUYuE9KY+OCmnieS3hPpg/Od
 kRBHrxaZ6fyfb++Mw+Ze5gwFEwhQDI0UgGAqu7DsSAuWefcCdPTo4ia9G+HGS1ID
 80SNS/GdUmtLdCfsVIqOtvOY2TKwgfsqBWgimyF2apl3nQgbAUkjUlLTUTIFbhXo
 em2oi6yLQVvte3HGc5r9NbmBnO3KRYIXYRU+t73bOBYeAKNdIPsA357dcrx/5MnN
 eGli+DrKk/oC1zrvl9OjpAcD83enZ76EPHKRav8zGAnYQ1sLS+GweJsbSg9Yj4Dq
 XbJGb8LM7mCFefrDvZKOVSWy5DMazHiofguPBOSgEnqASdp+Ydo=
 =JO1v
 -----END PGP SIGNATURE-----

Merge tag 'scmi-updates-7.3' of https://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux into soc/drivers

Arm SCMI updates/fixes for v7.3

A collection of SCMI core and transport fixes addressing resource
lifetimes, teardown races and error handling. Most of these issues
are reported by Sashiko as existing issues while reviewing new feature
additions to SCMI.

The changes:
- publish channel state before mailbox and SMC callbacks can run,
- quiesce notification work before tearing down transport channels,
- fix partial channel setup and mailbox allocation cleanup,
- make IDR iteration and shared-channel teardown safe,
- correct SCMI device, OF node, handle, bus ID and SystemPower lifetimes;,
- harden requested-device registration and removal against races and
  partial failures,
- reject out-of-range DT protocol IDs, and
- simplify notification allocations using flexible arrays.

* tag 'scmi-updates-7.3' of https://git.kernel.org/pub/scm/linux/kernel/git/sudeep.holla/linux: (25 commits)
  firmware: arm_scmi: Unrequest devices if driver registration fails
  firmware: arm_scmi: Roll back partial protocol table registration
  firmware: arm_scmi: Fix requested device removal race
  firmware: arm_scmi: Fix transport device teardown lookup
  firmware: arm_scmi: Fix SCMI device destroy lifetimes
  firmware: arm_scmi: Unwind P2A receiver mailbox setup failure
  firmware: arm_scmi: Unwind TX receiver mailbox setup failure
  firmware: arm_scmi: Fix OF node reference handling
  firmware: arm_scmi: Clear SystemPower flag on create failure
  firmware: arm_scmi: Drop handle on protocol bind failures
  firmware: arm_scmi: Protect device request lookup with RCU
  firmware: arm_scmi: Use channel ID for transport teardown
  firmware: arm_scmi: Reject out of range DT protocol IDs
  firmware: arm_scmi: Avoid IDR updates while cleaning channels
  firmware: arm_scmi: Free transport channel on IDR failure
  firmware: arm_scmi: Clean up channels on setup failure
  firmware: arm_scmi: Quiesce notifications before teardown
  firmware: arm_scmi: Unregister device notifier before IDR teardown
  firmware: arm_scmi: Publish channel state before callbacks
  firmware: arm_scmi: Simplify notification allocations
  ...

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2026-07-24 18:01:46 +02:00
..
arm_ffa firmware: arm_ffa: Fix NULL dereference in ffa_partition_info_get() 2026-06-30 10:18:24 +01:00
arm_scmi firmware: arm_scmi: Unrequest devices if driver registration fails 2026-07-22 20:33:43 +01:00
broadcom mm.git review status for linus..mm-nonmm-stable 2026-02-12 12:13:01 -08:00
cirrus ASoC: amd: Move to GPIO descriptors 2026-03-16 01:11:23 +00:00
efi mm.git review status for mm-hotfixes-stable..mm-nonmm-stable 2026-06-21 13:20:19 -07:00
google Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
imx soc: arm code changes for 7.2 2026-06-17 11:28:10 -07:00
meson firmware: meson: sm: Add thermal calibration SMC call 2026-05-26 13:24:33 +02:00
microchip RISC-V soc fixes for v7.0-rc6 2026-04-01 13:42:51 +02:00
psci firmware: psci: Set pm_set_resume/suspend_via_firmware() for SYSTEM_SUSPEND 2026-05-07 14:35:59 +02:00
qcom firmware: qcom: scm: Allow QSEECOM on Surface Pro 12in 2026-05-13 12:13:31 -05:00
samsung firmware: samsung: acpm: Add devm_acpm_get_by_phandle helper 2026-05-29 16:02:23 +02:00
smccc firmware: smccc: Fix Arm SMCCC SOC_ID name call 2026-05-20 09:41:44 +01:00
tegra firmware: tegra: bpmp: Add support for multi-socket platforms 2026-05-31 07:25:25 +02:00
xilinx Revert "firmware: zynqmp: Add dynamic CSU register discovery and sysfs interface" 2026-06-15 13:45:30 +02:00
arm_scpi.c firmware: arm_scpi: Fix device_node reference leak in probe path 2026-03-07 19:49:52 +00:00
arm_sdei.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
dmi_scan.c x86/CPU/AMD: Print AGESA string from DMI additional information entry 2026-04-01 20:54:16 +02:00
dmi-id.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
dmi-sysfs.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
edd.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
iscsi_ibft_find.c
iscsi_ibft.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
Kconfig virtio,vhost,vdpa: features, fixes 2026-06-17 11:49:00 -07:00
Makefile soc: driver updates for 6.15, part 1 2025-03-27 09:05:55 -07:00
memmap.c treewide: Replace kmalloc with kmalloc_obj for non-scalar types 2026-02-21 01:02:28 -08:00
mtk-adsp-ipc.c
qemu_fw_cfg.c Replace <linux/mod_devicetable.h> by more specific <linux/device-id/*.h> (c files) 2026-07-03 07:38:17 +02:00
raspberrypi.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
stratix10-rsu.c Char/Misc/IIO/FPGA/GPIB/etc driver updates for 7.2-rc1 2026-06-22 12:20:21 -07:00
stratix10-svc.c Char/Misc/IIO/FPGA/GPIB/etc driver updates for 7.2-rc1 2026-06-22 12:20:21 -07:00
sysfb_simplefb.c efi: sysfb_efi: Reduce number of references to global screen_info 2025-12-16 14:12:44 +01:00
sysfb.c sysfb: Pass sysfb_primary_display to devices 2025-12-16 14:12:44 +01:00
thead,th1520-aon.c firmware: thead: Fix buffer overflow and use standard endian macros 2026-04-01 13:03:07 +02:00
ti_sci.c firmware: ti_sci: Add support for restoring clock context during resume 2026-05-26 06:44:42 -05:00
ti_sci.h firmware: ti_sci: Add support for restoring clock context during resume 2026-05-26 06:44:42 -05:00
trusted_foundations.c
turris-mox-rwtm.c firmware: turris-mox-rwtm: Add support for ECDSA signatures with HW private key 2025-03-20 17:56:57 +01:00