linux-stable/drivers/firmware
Cohen, Eugene 540f4c0e89 efi/libstub: Skip GOP with PIXEL_BLT_ONLY format
The UEFI Specification permits Graphics Output Protocol (GOP) instances
without direct framebuffer access. This is indicated in the Mode structure
with a PixelFormat enumeration value of PIXEL_BLT_ONLY. Given that the
kernel does not know how to drive a Blt() only framebuffer (which is only
permitted before ExitBootServices() anyway), we should disregard such
framebuffers when looking for a GOP instance that is suitable for use as
the boot console.

So modify the EFI GOP initialization to not use a PIXEL_BLT_ONLY instance,
preventing attempts later in boot to use an invalid screen_info.lfb_base
address.

Signed-off-by: Eugene Cohen <eugene@hp.com>
[ Moved the Blt() only check into the loop and clarified that Blt() only GOPs are unusable by the kernel. ]
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: <stable@vger.kernel.org> # v4.7+
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Matt Fleming <matt@codeblueprint.co.uk>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: leif.lindholm@linaro.org
Cc: linux-efi@vger.kernel.org
Cc: lorenzo.pieralisi@arm.com
Fixes: 9822504c1f ("efifb: Enable the efi-framebuffer platform driver ...")
Link: http://lkml.kernel.org/r/20170404152744.26687-2-ard.biesheuvel@linaro.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
2017-04-05 09:20:18 +02:00
..
broadcom
efi efi/libstub: Skip GOP with PIXEL_BLT_ONLY format 2017-04-05 09:20:18 +02:00
google firmware-gsmi: Delete an unnecessary check before the function call "dma_pool_destroy" 2016-09-09 16:08:45 +01:00
meson
tegra sched/headers: Prepare for new header dependencies before moving code to <linux/sched/clock.h> 2017-03-02 08:42:27 +01:00
arm_scpi.c firmware: arm_scpi: fix reading sensor values on pre-1.0 SCPI firmwares 2016-12-30 14:53:36 +00:00
dcdbas.c
dcdbas.h
dell_rbu.c
dmi-id.c
dmi-sysfs.c
dmi_scan.c firmware: dmi_scan: Always show system identification string 2016-12-19 10:01:47 +01:00
edd.c
iscsi_ibft.c
iscsi_ibft_find.c
Kconfig firmware: arm_scpi: Add hardware dependencies 2017-01-30 21:09:43 -08:00
Makefile Merge branch 'for-4.10-ti-sci-base' of https://github.com/t-kristo/linux-pm into next/drivers 2016-11-30 17:13:13 +01:00
memmap.c
pcdp.c
pcdp.h
psci.c drivers: firmware: psci: Use __pa_symbol for cpu_resume 2017-01-26 12:15:07 +00:00
psci_checker.c sched/headers: Prepare for new header dependencies before moving code to <uapi/linux/sched/types.h> 2017-03-02 08:42:27 +01:00
qcom_scm-32.c firmware: qcom_scm: Add set remote state API 2017-01-16 23:45:04 -06:00
qcom_scm-64.c ARM: SoC driver updates 2017-02-23 15:57:04 -08:00
qcom_scm.c firmware: qcom_scm: Add set remote state API 2017-01-16 23:45:04 -06:00
qcom_scm.h firmware: qcom_scm: Add set remote state API 2017-01-16 23:45:04 -06:00
qemu_fw_cfg.c
raspberrypi.c
scpi_pm_domain.c
ti_sci.c firmware: ti_sci: Add support for reboot core service 2016-10-27 12:09:12 +03:00
ti_sci.h firmware: ti_sci: Add support for reboot core service 2016-10-27 12:09:12 +03:00