kernel_samsung_a53x/drivers/firmware
Kathiravan Thirumoorthy f77b37218c firmware: qcom_scm: use 64-bit calling convention only when client is 64-bit
commit 3337a6fea25370d3d244ec6bb38c71ee86fcf837 upstream.

Per the "SMC calling convention specification", the 64-bit calling
convention can only be used when the client is 64-bit. Whereas the
32-bit calling convention can be used by either a 32-bit or a 64-bit
client.

Currently during SCM probe, irrespective of the client, 64-bit calling
convention is made, which is incorrect and may lead to the undefined
behaviour when the client is 32-bit. Let's fix it.

Cc: stable@vger.kernel.org
Fixes: 9a434cee773a ("firmware: qcom_scm: Dynamically support SMCCC and legacy conventions")
Reviewed-By: Elliot Berman <quic_eberman@quicinc.com>
Signed-off-by: Kathiravan Thirumoorthy <quic_kathirav@quicinc.com>
Link: https://lore.kernel.org/r/20230925-scm-v3-1-8790dff6a749@quicinc.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-11-18 11:43:25 +01:00
..
arm_scmi Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
broadcom Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
efi Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
google Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
imx Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
meson Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
psci Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
smccc Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
tegra Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
xilinx Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
arm_scpi.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
arm_sdei.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dmi-id.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dmi-sysfs.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dmi_scan.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
edd.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
iscsi_ibft.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
iscsi_ibft_find.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Kconfig Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Makefile Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
memmap.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pcdp.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
pcdp.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
qcom_scm-legacy.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
qcom_scm-smc.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
qcom_scm.c firmware: qcom_scm: use 64-bit calling convention only when client is 64-bit 2024-11-18 11:43:25 +01:00
qcom_scm.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
qemu_fw_cfg.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
raspberrypi.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
scpi_pm_domain.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
stratix10-rsu.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
stratix10-svc.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
ti_sci.c firmware: ti_sci: Mark driver as non removable 2024-11-18 11:43:02 +01:00
ti_sci.h Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
trusted_foundations.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
turris-mox-rwtm.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00