linux-yocto/drivers
Sibi Sankar 9429f3e816 firmware: arm_scmi: Ensure that the message-id supports fastchannel
commit 94a263f981 upstream.

Currently the perf and powercap protocol relies on the protocol domain
attributes, which just ensures that one fastchannel per domain, before
instantiating fastchannels for all possible message-ids. Fix this by
ensuring that each message-id supports fastchannel before initialization.

Logs:
  |  scmi: Failed to get FC for protocol 13 [MSG_ID:6 / RES_ID:0] - ret:-95. Using regular messaging
  |  scmi: Failed to get FC for protocol 13 [MSG_ID:6 / RES_ID:1] - ret:-95. Using regular messaging
  |  scmi: Failed to get FC for protocol 13 [MSG_ID:6 / RES_ID:2] - ret:-95. Using regular messaging

CC: stable@vger.kernel.org
Reported-by: Johan Hovold <johan+linaro@kernel.org>
Closes: https://lore.kernel.org/lkml/ZoQjAWse2YxwyRJv@hovoldconsulting.com/
Fixes: 6f9ea4dabd ("firmware: arm_scmi: Generalize the fast channel support")
Reviewed-by: Johan Hovold <johan+linaro@kernel.org>
Tested-by: Johan Hovold <johan+linaro@kernel.org>
Signed-off-by: Sibi Sankar <quic_sibis@quicinc.com>
[Cristian: Modified the condition checked to establish support or not]
Signed-off-by: Cristian Marussi <cristian.marussi@arm.com>
Message-Id: <20250429141108.406045-2-cristian.marussi@arm.com>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2025-07-06 10:58:04 +02:00
..
accessibility
acpi ACPI: battery: negate current when discharging 2025-06-27 11:07:32 +01:00
amba
android
ata ata: pata_via: Force PIO for ATAPI devices on VT6415/VT6330 2025-06-27 11:07:28 +01:00
atm atm: atmtcp: Free invalid length skb in atmtcp_c_send(). 2025-06-27 11:07:39 +01:00
auxdisplay auxdisplay: charlcd: Partially revert "Move hwidth and bwidth to struct hd44780_common" 2025-06-04 14:40:07 +02:00
base software node: Correct a OOB check in software_node_get_reference_args() 2025-06-27 11:07:35 +01:00
bcma
block aoe: clean device rq_list in aoedev_downdev() 2025-06-27 11:07:39 +01:00
bluetooth Bluetooth: hci_qca: move the SoC type check to the right place 2025-06-27 11:07:05 +01:00
bus Revert "bus: ti-sysc: Probe for l4_wkup and l4_cfg interconnect devices first" 2025-06-27 11:07:36 +01:00
cdrom
char tpm: tis: Double the timeout B to 4s 2025-05-22 14:10:00 +02:00
clk clk: rockchip: rk3036: mark ddrphy as critical 2025-06-27 11:07:34 +01:00
clocksource clocksource: mips-gic-timer: Enable counter when CPUs start 2025-06-04 14:40:12 +02:00
comedi comedi: jr3_pci: Fix synchronous deletion of timer 2025-05-02 07:47:08 +02:00
connector
counter counter: interrupt-cnt: Protect enable/disable OPs with mutex 2025-06-27 11:07:16 +01:00
cpufreq Revert "cpufreq: tegra186: Share policy per cluster" 2025-06-27 11:07:40 +01:00
cpuidle cpuidle: menu: Avoid discarding useful information 2025-06-04 14:40:11 +02:00
crypto crypto: marvell/cesa - Do not chain submitted requests 2025-06-27 11:07:25 +01:00
cxl
dax
dca
devfreq
dio
dma dmaengine: xilinx_dma: Set dma_device directions 2025-07-06 10:57:54 +02:00
dma-buf udmabuf: use sgtable-based scatterlist wrappers 2025-06-27 11:07:37 +01:00
edac EDAC/altera: Use correct write width with the INTTEST register 2025-06-27 11:07:29 +01:00
eisa
extcon
firewire
firmware firmware: arm_scmi: Ensure that the message-id supports fastchannel 2025-07-06 10:58:04 +02:00
fpga fpga: altera-cvp: Increase credit timeout 2025-06-04 14:40:10 +02:00
fsi
gnss
gpio gpio: pca953x: fix IRQ storm on system wake up 2025-06-04 14:40:01 +02:00
gpu drm/amdgpu: Add kicker device detection 2025-07-06 10:58:03 +02:00
greybus
hid HID: wacom: fix kobject reference count leak 2025-07-06 10:58:01 +02:00
hsi HSI: ssi_protocol: Fix use after free vulnerability in ssi_protocol Driver Due to Race Condition 2025-04-25 10:43:47 +02:00
hte
hv Drivers: hv: vmbus: Add utility function for querying ring size 2025-07-06 10:57:58 +02:00
hwmon hwmon: (pmbus/max34440) Fix support for max34451 2025-07-06 10:57:54 +02:00
hwspinlock
hwtracing coresight: Only check bottom two claim bits 2025-07-06 10:57:55 +02:00
i2c i2c: robotfuzz-osif: disable zero-length read messages 2025-07-06 10:57:59 +02:00
i3c i3c: master: svc: Fix implicit fallthrough in svc_i3c_master_ibi_work() 2025-06-04 14:40:22 +02:00
idle cpuidle, intel_idle: Fix CPUIDLE_FLAG_IBRS 2025-03-13 12:53:11 +01:00
iio iio: adc: ad_sigma_delta: Fix use of uninitialized status_pos 2025-07-06 10:57:55 +02:00
infiniband RDMA/iwcm: Fix use-after-free of work objects after cm_id destruction 2025-06-27 11:07:30 +01:00
input Input: sparcspkr - avoid unannotated fall-through 2025-06-27 11:07:37 +01:00
interconnect
iommu iommu/amd: Ensure GA log notifier callbacks finish running before module unload 2025-06-27 11:07:34 +01:00
ipack
irqchip irqchip/gic-v2m: Prevent use after free of gicv2m_get_fwnode() 2025-05-09 09:41:45 +02:00
isdn
leds leds: multicolor: Fix intensity setting while SW blinking 2025-07-06 10:57:54 +02:00
macintosh
mailbox mailbox: Not protect module_put with spin_lock_irqsave 2025-07-06 10:57:54 +02:00
mcb mcb: fix a double free bug in chameleon_parse_gdd() 2025-05-02 07:46:57 +02:00
md dm-raid: fix variable in journal device check 2025-07-06 10:58:01 +02:00
media media: uvcvideo: Rollback non processed entities on error 2025-07-06 10:58:03 +02:00
memory memory: omap-gpmc: drop no compatible check 2025-04-10 14:33:39 +02:00
memstick memstick: rtsx_usb_ms: Fix slab-use-after-free in rtsx_usb_ms_drv_remove 2025-04-07 10:05:46 +02:00
message
mfd mfd: max14577: Fix wakeup source leaks on device unbind 2025-07-06 10:57:54 +02:00
misc VMCI: fix race between vmci_host_setup_notify and vmci_ctx_unset_notify 2025-06-27 11:07:25 +01:00
mmc mmc: Add quirk to disable DDR50 tuning 2025-06-27 11:07:32 +01:00
most
mtd mtd: nand: sunxi: Add randomizer configuration before randomizer enable 2025-06-27 11:07:30 +01:00
mux
net bnxt_en: Fix W=stringop-overflow warning in bnxt_dcb.c 2025-07-06 10:58:03 +02:00
nfc
ntb ntb_hw_amd: Add NTB PCI ID for new gen CPU 2025-05-02 07:47:04 +02:00
nubus
nvdimm libnvdimm/labels: Fix divide error in nd_label_data_init() 2025-06-04 14:40:04 +02:00
nvme nvme: always punt polled uring_cmd end_io work to task_work 2025-07-06 10:58:04 +02:00
nvmem
of of: module: add buffer overflow check in of_modalias() 2025-05-02 07:47:08 +02:00
opp
parisc
parport
pci PCI: apple: Set only available ports up 2025-07-06 10:57:58 +02:00
pcmcia
peci
perf perf/arm-cmn: Initialise cmn->cpu earlier 2025-06-04 14:40:25 +02:00
phy phy: qcom-qmp-usb: Fix an NULL vs IS_ERR() bug 2025-06-27 11:07:16 +01:00
pinctrl pinctrl: mcp23s08: Reset all pins to input at probe 2025-06-27 11:07:35 +01:00
platform platform/loongarch: laptop: Add backlight power control support 2025-06-27 11:07:40 +01:00
pnp
power power: supply: bq27xxx: Retrieve again when busy 2025-06-27 11:07:32 +01:00
powercap powercap: call put_device() on an error path in powercap_register_control_type() 2025-03-28 21:58:50 +01:00
pps
ps3
ptp ptp: allow reading of currently dialed frequency to succeed on free-running clocks 2025-06-27 11:07:39 +01:00
pwm pwm: fsl-ftm: Handle clk_get_rate() returning 0 2025-04-25 10:43:34 +02:00
rapidio drivers/rapidio/rio_cm.c: prevent possible heap overwrite 2025-06-27 11:07:36 +01:00
ras
regulator regulator: max14577: Add error check for max14577_read_reg() 2025-06-27 11:07:30 +01:00
remoteproc remoteproc: core: Release rproc->clean_table after rproc_attach() fails 2025-06-27 11:07:31 +01:00
reset
rpmsg rpmsg: qcom_smd: Fix uninitialized return variable in __qcom_smd_send() 2025-06-27 11:07:15 +01:00
rtc rtc: sh: assign correct interrupts with DT 2025-06-27 11:07:15 +01:00
s390 s390/pkey: Prevent overflow in size calculation for memdup_user() 2025-07-06 10:57:59 +02:00
sbus
scsi scsi: megaraid_sas: Fix invalid node index 2025-07-06 10:58:01 +02:00
sh
siox
slimbus slimbus: messaging: Free transaction ID in delayed interrupt scenario 2025-03-13 12:53:22 +01:00
soc soc: aspeed: Add NULL check in aspeed_lpc_enable_snoop() 2025-06-27 11:07:14 +01:00
soundwire soundwire: slave: fix an OF node reference leak in soundwire slave device 2025-04-10 14:33:35 +02:00
spi spi: bcm63xx-hsspi: fix shared reset 2025-06-27 11:07:17 +01:00
spmi
ssb
staging staging: rtl8723bs: Avoid memset() in aes_cipher() and aes_decipher() 2025-07-06 10:58:01 +02:00
target scsi: target: iscsi: Fix timeout on deleted connection 2025-06-04 14:40:01 +02:00
tc
tee tee: Prevent size calculation wraparound on 32-bit kernels 2025-06-27 11:07:36 +01:00
thermal thermal/drivers/qoriq: Power down TMU on system suspend 2025-06-04 14:40:03 +02:00
thunderbolt thunderbolt: Do not double dequeue a configuration request 2025-06-27 11:07:06 +01:00
tty serial: imx: Restore original RXTL for console to fix data loss 2025-07-06 10:58:01 +02:00
ufs scsi: core: ufs: Fix a hang in the error handler 2025-06-27 11:07:21 +01:00
uio uio_hv_generic: Align ring size to system page 2025-07-06 10:57:58 +02:00
usb usb: typec: mux: do not return on EOPNOTSUPP in {mux, switch}_set 2025-07-06 10:57:56 +02:00
vdpa vdpa/mlx5: Fix oversized null mkey longer than 32bit 2025-04-25 10:43:40 +02:00
vfio vfio/type1: Fix error unwind in migration dirty bitmap allocation 2025-06-27 11:07:11 +01:00
vhost
video fbdev: hyperv_fb: Convert comma to semicolon 2025-07-06 10:58:03 +02:00
virt drivers: virt: acrn: hsm: Use kzalloc to avoid info leak in pmcmd_ioctl 2025-03-13 12:53:23 +01:00
virtio virtio_ring: Fix data race by tagging event_triggered as racy for KCSAN 2025-06-04 14:40:01 +02:00
vlynq
w1
watchdog watchdog: da9052_wdt: respect TWDMIN 2025-06-27 11:07:35 +01:00
xen xenbus: Allow PVH dom0 a non-local xenstore 2025-06-04 14:40:18 +02:00
zorro
Kconfig
Makefile