remarkable-linux/drivers/firmware
Ard Biesheuvel dce48e351c efi: Replace runtime services spinlock with semaphore
The purpose of the efi_runtime_lock is to prevent concurrent calls into
the firmware. There is no need to use spinlocks here, as long as we ensure
that runtime service invocations from an atomic context (i.e., EFI pstore)
cannot block.

So use a semaphore instead, and use down_trylock() in the nonblocking case.
We don't use a mutex here because the mutex_trylock() function must not
be called from interrupt context, whereas the down_trylock() can.

Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Leif Lindholm <leif.lindholm@linaro.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Sylvain Chouleur <sylvain.chouleur@gmail.com>
Signed-off-by: Matt Fleming <matt@codeblueprint.co.uk>
2016-09-09 16:08:43 +01:00
..
broadcom tree-wide: replace config_enabled() with IS_ENABLED() 2016-08-04 08:50:07 -04:00
efi efi: Replace runtime services spinlock with semaphore 2016-09-09 16:08:43 +01:00
google
arm_scpi.c firmware: arm_scpi: add support for device power state management 2016-06-21 10:15:56 +01:00
dcdbas.c firmware: drop owner assignment from platform_drivers 2014-10-20 16:20:31 +02:00
dcdbas.h
dell_rbu.c
dmi-id.c
dmi-sysfs.c firmware: dmi_scan: add SBMIOS entry and DMI tables 2015-06-25 09:06:56 +02:00
dmi_scan.c firmware: dmi_scan: Save SMBIOS Type 9 System Slots 2016-01-15 22:08:45 +01:00
edd.c
iscsi_ibft.c ibft: Expose iBFT acpi header via sysfs 2016-05-16 11:14:29 -04:00
iscsi_ibft_find.c
Kconfig firmware: scpi: add CONFIG_OF dependency 2016-07-07 14:58:14 +02:00
Makefile firmware: scpi: add device power domain support using genpd 2016-06-21 10:26:51 +01:00
memmap.c drivers/firmware/memmap.c: fix kernel-doc format 2015-06-25 17:00:41 -07:00
pcdp.c serial: 8250_early: Remove setup_early_serial8250_console() 2015-03-26 17:25:27 +01:00
pcdp.h
psci.c drivers: firmware: psci: initialise idle states using ACPI LPI 2016-07-21 23:29:38 +02:00
qcom_scm-32.c firmware: qcom: scm: Expose PAS command 10 as reset-controller 2016-06-24 22:53:52 -05:00
qcom_scm-64.c firmware: qcom: scm: Expose PAS command 10 as reset-controller 2016-06-24 22:53:52 -05:00
qcom_scm.c firmware: qcom: scm: Change initcall to subsys 2016-07-05 16:29:25 -05:00
qcom_scm.h firmware: qcom: scm: Expose PAS command 10 as reset-controller 2016-06-24 22:53:52 -05:00
qemu_fw_cfg.c driver core update for 4.7-rc1 2016-05-20 21:26:15 -07:00
raspberrypi.c ARM: bcm2835: Add the Raspberry Pi firmware driver 2015-10-14 15:30:06 -07:00
scpi_pm_domain.c firmware: scpi: add device power domain support using genpd 2016-06-21 10:26:51 +01:00