coreboot-kgpe-d16/src/soc/intel/baytrail
Julius Werner 1de8708fe5 cbfs: Remove prog_locate() for stages and rmodules
This patch removes the prog_locate() step for stages and rmodules.
Instead, the stage and rmodule loading functions will now perform the
locate step directly together with the actual loading. The long-term
goal of this is to eliminate prog_locate() (and the rdev member in
struct prog that it fills) completely in order to make CBFS verification
code safer and its security guarantees easier to follow. prog_locate()
is the main remaining use case where a raw rdev of CBFS file data
"leaks" out of cbfs.c into other code, and that other code needs to
manually make sure that the contents of the rdev get verified during
loading. By eliminating this step and moving all code that directly
deals with file data into cbfs.c, we can concentrate the code that needs
to worry about file data hashing (and needs access to cbfs_private.h
APIs) into one file, making it easier to keep track of and reason about.

This patch is the first step of this move, later patches will do the
same for SELFs and other program types.

Signed-off-by: Julius Werner <jwerner@chromium.org>
Change-Id: Ia600e55f77c2549a00e2606f09befc1f92594a3a
Reviewed-on: https://review.coreboot.org/c/coreboot/+/49335
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2021-03-16 21:45:34 +00:00
..
acpi soc/intel/baytrail,braswell: Drop aliases on MMCONF_BASE_ADDRESS 2021-02-16 08:08:01 +00:00
bootblock src: Include <arch/io.h> when appropriate 2020-10-26 06:44:40 +00:00
include/soc soc/intel/baytrail,braswell: Drop aliases on MMCONF_BASE_ADDRESS 2021-02-16 08:08:01 +00:00
romstage soc/intel/baytrail: Use cbmem_recovery() 2021-02-23 02:35:08 +00:00
acpi.c ACPI: Add acpi_reset_gnvs_for_wake() 2021-02-16 09:28:42 +00:00
chip.c src/soc/intel: Drop unneeded empty lines 2020-09-21 16:15:25 +00:00
chip.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
cpu.c cpu/x86/mpinit: Serialize microcode updates for HT threads 2021-01-15 11:20:41 +00:00
dptf.c src: Remove unused '#include <stdint.h>' 2020-05-13 08:48:17 +00:00
ehci.c soc/intel/baytrail: Rename "pmc.h" to "pm.h" 2020-07-09 12:46:35 +00:00
elog.c soc/intel: Remove unused <console/console.h> 2021-02-15 10:50:09 +00:00
emmc.c soc/intel: Replace <soc/nvs.h> with <soc/device_nvs.h> 2021-01-03 11:35:51 +00:00
fadt.c src: Use ACPI macros 2020-07-21 18:26:47 +00:00
gfx.c {sb,soc}/intel/**/*.c: Use macros for PCI COMMAND bits 2020-07-26 21:17:50 +00:00
gpio.c soc/intel/baytrail: Rename "pmc.h" to "pm.h" 2020-07-09 12:46:35 +00:00
hda.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
iosf.c soc/intel/baytrail: Add native refcode replacement 2020-08-02 12:07:08 +00:00
Kconfig vc/google/chromeos: Always use CHROMEOS_RAMOOPS_DYNAMIC 2021-02-16 09:39:04 +00:00
lpe.c ACPI: Separate device_nvs_t 2021-01-27 10:25:03 +00:00
lpss.c ACPI: Separate device_nvs_t 2021-01-27 10:25:03 +00:00
Makefile.inc soc/intel/baytrail: Add native refcode replacement 2020-08-02 12:07:08 +00:00
memmap.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
modphy_table.c soc/intel/baytrail: Add native refcode replacement 2020-08-02 12:07:08 +00:00
northcluster.c nb,soc/intel: Switch to CHROMEOS_RAMOOPS_DYNAMIC 2021-02-16 09:38:29 +00:00
pcie.c src: Use pci_dev_ops_pci where applicable 2020-06-06 20:36:51 +00:00
perf_power.c src/soc/intel: Drop unneeded empty lines 2020-09-21 16:15:25 +00:00
placeholders.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
pmutil.c ACPI: Add helpers for CBMEM_ID_POWER_STATE 2021-01-23 20:31:09 +00:00
ramstage.c soc/intel/{baytrail,braswell,broadwell}: Remove unused <string.h> 2021-02-16 17:28:12 +00:00
refcode.c cbfs: Remove prog_locate() for stages and rmodules 2021-03-16 21:45:34 +00:00
refcode_native.c soc/intel/baytrail: Add native refcode replacement 2020-08-02 12:07:08 +00:00
sata.c soc/intel/baytrail/sata.c: Fix SATA init sequence 2020-08-02 12:18:40 +00:00
scc.c ACPI: Separate device_nvs_t 2021-01-27 10:25:03 +00:00
sd.c soc/intel: Replace <soc/nvs.h> with <soc/device_nvs.h> 2021-01-03 11:35:51 +00:00
smihandler.c ACPI: Separate device_nvs_t 2021-01-27 10:25:03 +00:00
smm.c soc/intel/baytrail/smm.c: Align with Braswell 2020-07-25 10:22:52 +00:00
southcluster.c soc/intel/{baytrail,braswell,broadwell}: Remove unused <string.h> 2021-02-16 17:28:12 +00:00
tsc_freq.c src: Remove unused '#include <stdint.h>' 2020-05-13 08:48:17 +00:00
xhci.c soc/intel/baytrail: Rename "pmc.h" to "pm.h" 2020-07-09 12:46:35 +00:00