linux/drivers/firmware
Ard Biesheuvel 37926f9630 efi: runtime: Don't assume virtual mappings are missing if VA == PA == 0
The generic EFI stub can be instructed to avoid SetVirtualAddressMap(),
and simply run with the firmware's 1:1 mapping. In this case, it
populates the virtual address fields of the runtime regions in the
memory map with the physical address of each region, so that the mapping
code has to be none the wiser. Only if SetVirtualAddressMap() fails, the
virtual addresses are wiped and the kernel code knows that the regions
cannot be mapped.

However, wiping amounts to setting it to zero, and if a runtime region
happens to live at physical address 0, its valid 1:1 mapped virtual
address could be mistaken for a wiped field, resulting on loss of access
to the EFI services at runtime.

So let's only assume that VA == 0 means 'no runtime services' if the
region in question does not live at PA 0x0.

Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
2022-10-21 11:09:41 +02:00
..
arm_ffa firmware: arm_ffa: Split up ffa_ops into info, message and memory operations 2022-09-08 11:34:04 +01:00
arm_scmi MMC core: 2022-09-28 11:36:31 -07:00
broadcom
cirrus firmware: cs_dsp: Add memory chunk helpers 2022-07-22 13:40:00 +01:00
efi efi: runtime: Don't assume virtual mappings are missing if VA == PA == 0 2022-10-21 11:09:41 +02:00
google firmware: google: Test spinlock on panic path to avoid lockups 2022-09-24 14:59:44 +02:00
imx
meson
psci ARM: driver updates for 6.1 2022-10-06 11:04:57 -07:00
smccc printk: stop including cache.h from printk.h 2022-05-13 07:20:07 -07:00
tegra firmware: tegra: Switch over to memdup_user() 2022-09-15 12:45:42 +02:00
xilinx firmware: xilinx: add support for sd/gem config 2022-09-20 08:33:04 -07:00
arm_scpi.c firmware: arm_scpi: Ensure scpi_info is not assigned if the probe fails 2022-07-04 14:28:42 +01:00
arm_sdei.c
dmi_scan.c firmware: dmi: Fortify entry point length checks 2022-09-23 14:53:14 +02:00
dmi-id.c
dmi-sysfs.c firmware: dmi-sysfs: Fix memory leak in dmi_sysfs_register_handle 2022-05-19 18:56:56 +02:00
edd.c edd: simplify the check of 'attr->test' in edd_populate_dir() 2022-05-19 18:57:04 +02:00
iscsi_ibft_find.c
iscsi_ibft.c
Kconfig sound updates for 5.19-rc1 2022-05-25 16:55:16 -07:00
Makefile Follow-up tweaks for the EFI changes in v5.19 2022-06-03 13:39:30 -07:00
memmap.c
mtk-adsp-ipc.c firmware: mediatek: Use meaningful names for mbox 2022-06-22 13:39:30 +01:00
pcdp.c
pcdp.h
qcom_scm-legacy.c firmware: qcom_scm-legacy: correct kerneldoc 2022-06-25 22:04:31 -05:00
qcom_scm-smc.c
qcom_scm.c firmware: qcom_scm: Add bw voting support to the SCM interface 2022-06-29 21:48:32 -05:00
qcom_scm.h firmware: qcom: scm: remove unused __qcom_scm_init declaration 2022-09-13 15:14:54 -05:00
qemu_fw_cfg.c
raspberrypi.c
scpi_pm_domain.c
stratix10-rsu.c firmware: stratix10-rsu: extend RSU driver to get DCMF status 2022-07-14 16:55:09 +02:00
stratix10-svc.c firmware: stratix10-svc: To support a command ATF Get Version 2022-07-14 16:55:09 +02:00
sysfb_simplefb.c firmware: sysfb: Make sysfb_create_simplefb() return a pdev pointer 2022-06-29 09:51:31 +02:00
sysfb.c fbdev/vga16fb: Create EGA/VGA devices in sysfb code 2022-07-19 13:19:11 +02:00
ti_sci.c
ti_sci.h
trusted_foundations.c
turris-mox-rwtm.c