Cristian Marussi
cc10a352e2
firmware: arm_scmi: Reset Rx buffer to max size during async commands
...
[ Upstream commit 0cb7af474e0dbb2f500c67aa62b6db9fafa74de2 ]
During an async commands execution the Rx buffer length is at first set
to max_msg_sz when the synchronous part of the command is first sent.
However once the synchronous part completes the transport layer waits
for the delayed response which will be processed using the same xfer
descriptor initially allocated. Since synchronous response received at
the end of the xfer will shrink the Rx buffer length to the effective
payload response length, it needs to be reset again.
Raise the Rx buffer length again to max_msg_sz before fetching the
delayed response to ensure full response is read correctly from the
shared memory.
Link: https://lore.kernel.org/r/20210601102421.26581-2-cristian.marussi@arm.com
Fixes: 58ecdf03db ("firmware: arm_scmi: Add support for asynchronous commands and delayed response")
Signed-off-by: Cristian Marussi <cristian.marussi@arm.com>
[sudeep.holla: moved reset to scmi_handle_response as it could race with
do_xfer_with_response]
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2021-07-20 16:10:52 +02:00
..
accessibility
acpi
ACPI: video: Add quirk for the Dell Vostro 3350
2021-07-20 16:10:48 +02:00
amba
android
ata
ata: ahci_sunxi: Disable DIPM
2021-07-19 08:53:15 +02:00
atm
atm: nicstar: register the interrupt handler in the right place
2021-07-19 08:53:12 +02:00
auxdisplay
base
PM: runtime: Fix unpaired parent child_count for force_resume
2021-05-19 10:08:20 +02:00
bcma
block
virtio-blk: Fix memory leak among suspend/resume procedure
2021-07-20 16:10:48 +02:00
bluetooth
Bluetooth: btusb: fix bt fiwmare downloading failure issue for qca btsoc.
2021-07-19 08:53:13 +02:00
bus
bus: ti-sysc: Fix flakey idling of uarts and stop using swsup_sidle_act
2021-06-10 13:37:08 +02:00
cdrom
cdrom: gdrom: initialize global variable at init time
2021-05-26 12:05:19 +02:00
char
virtio_console: Assure used length from device is limited
2021-07-20 16:10:49 +02:00
clk
clk: tegra: Ensure that PLLU configuration is applied properly
2021-07-19 08:53:09 +02:00
clocksource
clocksource/arm_arch_timer: Improve Allwinner A64 timer workaround
2021-07-19 08:53:15 +02:00
connector
counter
cpufreq
cpufreq: Make cpufreq_online() call driver->offline() on errors
2021-07-14 16:53:25 +02:00
cpuidle
crypto
crypto: ccp - Annotate SEV Firmware file names
2021-07-19 08:53:14 +02:00
dax
dca
devfreq
PM / devfreq: Use more accurate returned new_freq as resume_freq
2021-05-14 09:44:20 +02:00
dio
dma
dmaengine: fsl-qdma: check dma_set_mask return value
2021-07-20 16:10:40 +02:00
dma-buf
edac
EDAC/Intel: Do not load EDAC driver when running as a guest
2021-07-14 16:53:18 +02:00
eisa
extcon
extcon: intel-mrfld: Sync hardware and software state on init
2021-07-19 08:53:16 +02:00
firewire
firmware
firmware: arm_scmi: Reset Rx buffer to max size during async commands
2021-07-20 16:10:52 +02:00
fpga
fpga: stratix10-soc: Add missing fpga_mgr_free() call
2021-07-19 08:53:15 +02:00
fsi
fsi/sbefifo: Fix reset timeout
2021-07-14 16:53:42 +02:00
gnss
gpio
gpio: pca953x: Add support for the On Semi pca9655
2021-07-20 16:10:44 +02:00
gpu
drm/arm/malidp: Always list modifiers
2021-07-19 08:53:15 +02:00
greybus
hid
HID: wacom: Correct base usage for capacitive ExpressKey status bits
2021-07-14 16:53:19 +02:00
hsi
HSI: core: fix resource leaks in hsi_add_client_from_dt()
2021-05-14 09:44:25 +02:00
hv
hv_utils: Fix passing zero to 'PTR_ERR' warning
2021-07-14 16:53:16 +02:00
hwmon
hwmon: (max31790) Fix fan speed reporting for fan7..12
2021-07-14 16:53:23 +02:00
hwspinlock
hwtracing
intel_th: Wait until port is in reset before programming it
2021-07-20 16:10:46 +02:00
i2c
i2c: core: Disable client irq on reboot/shutdown
2021-07-20 16:10:46 +02:00
i3c
Revert "i3c master: fix missing destroy_workqueue() on error in i3c_master_register"
2021-05-14 09:44:15 +02:00
ide
idle
iio
iio: magn: bmc150: Balance runtime pm + use pm_runtime_resume_and_get()
2021-07-20 16:10:41 +02:00
infiniband
RDMA/cma: Fix rdma_resolve_route() memory leak
2021-07-19 08:53:13 +02:00
input
Input: hideep - fix the uninitialized use in hideep_nvm_unlock()
2021-07-20 16:10:45 +02:00
interconnect
interconnect: core: fix error return code of icc_link_destroy()
2021-04-16 11:46:37 +02:00
iommu
iommu/arm-smmu: Fix arm_smmu_device refcount leak in address translation
2021-07-20 16:10:44 +02:00
ipack
ipack/carriers/tpci200: Fix a double free in tpci200_pci_probe
2021-07-19 08:53:17 +02:00
irqchip
irqchip/gic-v3: Fix OF_BAD_ADDR error handling
2021-05-14 09:44:20 +02:00
isdn
mISDN: fix possible use-after-free in HFC_cleanup()
2021-07-19 08:53:08 +02:00
leds
leds: ktd2692: Fix an error handling path
2021-07-14 16:53:47 +02:00
lightnvm
macintosh
mailbox
mcb
md
dm btree remove: assign new_root only when removal succeeds
2021-07-19 08:53:17 +02:00
media
media: uvcvideo: Fix pixel format change for Elgato Cam Link 4K
2021-07-19 08:53:18 +02:00
memory
memory: pl353: Fix error return code in pl353_smc_probe()
2021-07-20 16:10:51 +02:00
memstick
memstick: rtsx_usb_ms: fix UAF
2021-07-14 16:53:13 +02:00
message
mfd
mfd: cpcap: Fix cpcap dmamask not set warnings
2021-07-20 16:10:43 +02:00
misc
misc: alcor_pci: fix null-ptr-deref when there is no PCI bridge
2021-07-20 16:10:41 +02:00
mmc
mmc: core: Allow UHS-I voltage switch for SDSC cards if supported
2021-07-19 08:53:15 +02:00
mtd
mtd: rawnand: marvell: add missing clk_disable_unprepare() on error in marvell_nfc_resume()
2021-07-14 16:53:45 +02:00
mux
net
virtio_net: move tx vq operation under tx queue lock
2021-07-20 16:10:50 +02:00
nfc
nfc: pn533: prevent potential memory corruption
2021-05-14 09:44:27 +02:00
ntb
nubus
nvdimm
libnvdimm/region: Fix nvdimm_has_flush() to handle ND_REGION_ASYNC
2021-04-21 12:56:16 +02:00
nvme
nvme-tcp: can't set sk_user_data without write_lock
2021-07-20 16:10:50 +02:00
nvmem
nvmem: core: add a missing of_node_put
2021-07-19 08:53:16 +02:00
of
of: Fix truncation of memory sizes on 32-bit platforms
2021-07-14 16:53:45 +02:00
opp
oprofile
parisc
parport
pci
PCI: iproc: Support multi-MSI only on uniprocessor kernel
2021-07-20 16:10:50 +02:00
pcmcia
perf
drivers/perf: fix the missed ida_simple_remove() in ddr_perf_probe()
2021-07-14 16:53:14 +02:00
phy
phy: ti: dm816x: Fix the error handling path in 'dm816x_usb_phy_probe()
2021-07-14 16:53:46 +02:00
pinctrl
pinctrl: mcp23s08: Fix missing unlock on error in mcp23s08_irq()
2021-07-19 08:53:18 +02:00
platform
platform/x86: toshiba_acpi: Fix missing error code in toshiba_acpi_setup_keyboard()
2021-07-14 16:53:18 +02:00
pnp
power
power: supply: rt5033_battery: Fix device tree enumeration
2021-07-20 16:10:49 +02:00
powercap
pps
ps3
ptp
ptp: improve max_adj check against unreasonable values
2021-06-23 14:41:26 +02:00
pwm
pwm: imx1: Don't disable clocks at device remove time
2021-07-20 16:10:50 +02:00
rapidio
rapidio: handle create_workqueue() failure
2021-05-26 12:05:17 +02:00
ras
RAS/CEC: Correct ce_add_elem()'s returned values
2021-04-14 08:24:18 +02:00
regulator
regulator: hi655x: Fix pass wrong pointer to config.driver_data
2021-07-14 16:53:23 +02:00
remoteproc
reset
reset: brcmstb: Add missing MODULE_DEVICE_TABLE
2021-07-20 16:10:51 +02:00
rpmsg
rpmsg: qcom_glink_native: fix error return code of qcom_glink_rx_data()
2021-05-19 10:08:25 +02:00
rtc
rtc: fix snprintf() checking in is_rtc_hctosys()
2021-07-20 16:10:51 +02:00
s390
s390/sclp_vt220: fix console name to match device
2021-07-20 16:10:43 +02:00
sbus
scsi
scsi: qedi: Fix null ref during abort handling
2021-07-20 16:10:43 +02:00
sfi
sh
siox
slimbus
soc
soc: aspeed: fix a ternary sign expansion bug
2021-05-14 09:44:23 +02:00
soundwire
soundwire: stream: Fix test for DP prepare complete
2021-07-14 16:53:45 +02:00
spi
spi: spi-sun6i: Fix chipselect/clock bug
2021-07-14 16:53:24 +02:00
spmi
ssb
ssb: Fix error return code in ssb_bus_scan()
2021-07-14 16:53:29 +02:00
staging
staging: rtl8723bs: fix macro value for 2.4Ghz only device
2021-07-20 16:10:46 +02:00
target
scsi: target: cxgbit: Unmap DMA buffer before calling target_execute_cmd()
2021-07-14 16:53:48 +02:00
tc
tee
tee: optee: do not check memref size on return from Secure World
2021-05-11 14:04:06 +02:00
thermal
thermal/drivers/int340x/processor_thermal: Fix tcc setting
2021-07-19 08:53:16 +02:00
thunderbolt
thunderbolt: dma_port: Fix NVM read buffer bounds and offset issue
2021-06-03 08:59:03 +02:00
tty
serial: tty: uartlite: fix console setup
2021-07-20 16:10:43 +02:00
uio
uio_hv_generic: Fix a memory leak in error handling paths
2021-05-26 12:05:17 +02:00
usb
usb: gadget: hid: fix error return code in hid_bind()
2021-07-20 16:10:45 +02:00
vfio
vfio/pci: Handle concurrent vma faults
2021-07-14 16:53:47 +02:00
vhost
video
backlight: lm3630a: Fix return code of .update_status() callback
2021-07-20 16:10:45 +02:00
virt
virtio
visorbus
visorbus: fix error return code in visorchipset_init()
2021-07-14 16:53:42 +02:00
vlynq
vme
w1
w1: ds2438: fixing bug that would always get page0
2021-07-20 16:10:41 +02:00
watchdog
watchdog: aspeed: fix hardware timeout calculation
2021-07-20 16:10:49 +02:00
xen
xen/events: reset active flag for lateeoi events later
2021-07-11 12:52:08 +02:00
zorro
Kconfig
Makefile