linux/drivers/firmware
Sameer Goel ae8a442dfd efi/libstub/arm*: Set default address and size cells values for an empty dtb
In cases where a device tree is not provided (ie ACPI based system), an
empty fdt is generated by efistub.  #address-cells and #size-cells are not
set in the empty fdt, so they default to 1 (4 byte wide).  This can be an
issue on 64-bit systems where values representing addresses, etc may be
8 bytes wide as the default value does not align with the general
requirements for an empty DTB, and is fragile when passed to other agents
as extra care is required to read the entire width of a value.

This issue is observed on Qualcomm Technologies QDF24XX platforms when
kexec-tools inserts 64-bit addresses into the "linux,elfcorehdr" and
"linux,usable-memory-range" properties of the fdt.  When the values are
later consumed, they are truncated to 32-bit.

Setting #address-cells and #size-cells to 2 at creation of the empty fdt
resolves the observed issue, and makes the fdt less fragile.

Signed-off-by: Sameer Goel <sgoel@codeaurora.org>
Signed-off-by: Jeffrey Hugo <jhugo@codeaurora.org>
Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
2017-04-05 18:32:47 +01:00
..
broadcom tree-wide: replace config_enabled() with IS_ENABLED() 2016-08-04 08:50:07 -04:00
efi efi/libstub/arm*: Set default address and size cells values for an empty dtb 2017-04-05 18:32:47 +01:00
google firmware-gsmi: Delete an unnecessary check before the function call "dma_pool_destroy" 2016-09-09 16:08:45 +01:00
meson firmware: Amlogic: Add secure monitor driver 2016-09-01 14:23:39 -07:00
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: Make use of smp_call_on_cpu() 2016-09-05 13:52:40 +02:00
dcdbas.h
dell_rbu.c
dmi_scan.c firmware: dmi_scan: Always show system identification string 2016-12-19 10:01:47 +01:00
dmi-id.c dmi-id: don't free dev structure after calling device_register 2016-09-08 10:35:50 +02:00
dmi-sysfs.c firmware: dmi_scan: add SBMIOS entry and DMI tables 2015-06-25 09:06:56 +02:00
edd.c
iscsi_ibft_find.c
iscsi_ibft.c ibft: Expose iBFT acpi header via sysfs 2016-05-16 11:14:29 -04:00
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 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_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
psci.c drivers: firmware: psci: Use __pa_symbol for cpu_resume 2017-01-26 12:15:07 +00: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 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
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