coreboot-kgpe-d16/src/include
Ronald G. Minnich c308554c10 selfboot: create selfboot_check function, remove check param
The selfboot function was changed at some point to take a parameter
which meant "check the allocated descriptors to see if they target
regions of real memory."

The region check had to be buried deep in the last step of loading since
that is where those descriptors were created and used.

An issue with the use of the parameter was that it was not possible
for compilers to easily divine whether the check code was used,
and it was hence possible for the code, and its dependencies, to be
compiled in even if never used (which caused problems for the
rampayload code).

Now that bounce buffers are gone, we can hoist the check code
to the outermost level. Further, by creating a selfload_check
and selfload function, we can make it easy for compilers
to discard unused code: if selfload_check is never called, all
the code it uses can be discarded too.

Change-Id: Id5b3f450fd18480d54ffb6e395429fba71edcd77
Signed-off-by: Ronald G. Minnich <rminnich@gmail.com>
Reviewed-on: https://review.coreboot.org/29259
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
2018-10-25 16:57:51 +00:00
..
boot write_tables: return a pointer to the table 2018-07-20 03:26:46 +00:00
console console/post_codes: Add post codes for memory param prep callback 2018-10-18 12:46:06 +00:00
cpu intel: Use CF9 reset (part 2) 2018-10-22 08:35:32 +00:00
device soc/intel/cannonlake: Add new cannon lake PCH-H support 2018-10-17 12:16:21 +00:00
pc80 Port cmos.default handling to C environment bootblock 2017-07-26 19:30:01 +00:00
smp arch/x86: Clean up CONFIG_SMP and MAX_CPUS test 2017-08-19 15:30:51 +00:00
superio
sys src/include: Add guards on all header files 2017-08-01 23:04:15 +00:00
adainit.h
assert.h assert: Add new dead_code() macro to assert dead code paths 2017-07-16 23:56:34 +00:00
b64_decode.h
base3.h
bcd.h
boardid.h ec/google/chromeec: Update google_chromeec_get_board_version prototype 2018-09-20 17:15:26 +00:00
boot_device.h
bootblock_common.h src/include: Fix typo 2018-08-09 15:56:52 +00:00
bootmem.h selfboot: remove bounce buffers 2018-10-11 17:42:41 +00:00
bootmode.h vboot: Remove get_sw_write_protect_state callback 2017-07-18 23:24:01 +00:00
bootstate.h src: Get rid of unneeded whitespace 2018-06-14 09:32:34 +00:00
cbfs.h cbfs: Add cbfs_boot_load_file() 2018-04-17 10:46:13 +00:00
cbmem.h lib/fit_payload: Add coreboot tables support for FDT. 2018-08-22 08:18:54 +00:00
cper.h include/cper.h: Add max of enum 2018-09-07 14:49:51 +00:00
delay.h
device_tree.h device_tree/fit: Constify data structures 2018-08-24 11:38:28 +00:00
dimm_info_util.h src/*: normalize Google copyright headers 2018-09-28 07:13:00 +00:00
edid.h
elog.h Move compiler.h to commonlib 2018-10-08 16:57:27 +00:00
endian.h
fallback.h
fit.h device_tree/fit: Constify data structures 2018-08-24 11:38:28 +00:00
fit_payload.h lib: Add FIT payload support 2018-06-19 18:10:05 +00:00
fmap.h
gic.h
gpio.h gpio: Change gpio_baseX_value() function return types to unsigned 2018-08-03 18:10:02 +00:00
halt.h Move compiler.h to commonlib 2018-10-08 16:57:27 +00:00
imd.h
inttypes.h
ip_checksum.h
kconfig.h
lib.h
list.h lib/devicetree: Integrate flattened devicetree support 2018-04-30 09:33:32 +00:00
main_decl.h
memlayout.h Introduce bootblock self-decompression 2018-05-22 02:44:14 +00:00
memory_info.h lib: increase part number size in memory_info/dimm_info 2018-10-10 18:07:57 +00:00
memrange.h lib/memrange: Introduce method to clone memrange 2018-04-11 15:11:04 +00:00
mrc_cache.h drivers/mrc_cache: Add missing include file to mrc_cache.h 2017-12-18 16:07:09 +00:00
nhlt.h lib/nhlt: add support for passing subsystem_id to endpoint's structure 2018-05-09 10:06:04 +00:00
option.h src/include: add IS_ENABLED() around Kconfig symbol references 2017-07-13 23:55:05 +00:00
program_loading.h selfboot: create selfboot_check function, remove check param 2018-10-25 16:57:51 +00:00
random.h
reg_script.h Rename __attribute__((packed)) --> __packed 2017-07-13 19:45:59 +00:00
region_file.h
reset.h intel: Use CF9 reset (part 2) 2018-10-22 08:35:32 +00:00
rmodule.h src/*: normalize Google copyright headers 2018-09-28 07:13:00 +00:00
romstage_handoff.h src/*: normalize Google copyright headers 2018-09-28 07:13:00 +00:00
rtc.h
rules.h Introduce bootblock self-decompression 2018-05-22 02:44:14 +00:00
sar.h Move compiler.h to commonlib 2018-10-08 16:57:27 +00:00
sdram_mode.h
smbios.h Move compiler.h to commonlib 2018-10-08 16:57:27 +00:00
smmstore.h smmstore: Add a key/val store facility in flash, mediated through SMM 2018-10-08 09:46:30 +00:00
spd.h src/lib/dimm_info_util.c: Add methods to convert from SMBIOS to SPD 2018-04-11 14:41:59 +00:00
spd_bin.h lib/spd_bin: Use proper I2C addresses 2017-06-29 15:41:02 +00:00
spd_ddr2.h src/include: Add guards on all header files 2017-08-01 23:04:15 +00:00
spi-generic.h drivers/spi: reduce confusion in the API 2018-04-23 20:58:58 +00:00
spi_bitbang.h spi: Add helper functions for bit-banging 2018-04-03 00:34:52 +00:00
spi_flash.h drivers/spi: Read Winbond's flash protection bits 2018-09-16 13:02:50 +00:00
stage_cache.h lib/stage_cache: Add save/get raw storage 2018-02-07 16:22:40 +00:00
stddef.h src/include: add IS_ENABLED() around Kconfig symbol references 2017-07-13 23:55:05 +00:00
stdlib.h
string.h console: Expose vsnprintf 2018-04-09 08:18:16 +00:00
swab.h
symbols.h Introduce bootblock self-decompression 2018-05-22 02:44:14 +00:00
thread.h src/include: add IS_ENABLED() around Kconfig symbol references 2017-07-13 23:55:05 +00:00
timer.h include/timer.h: add NSECS_PER_SEC macro 2017-11-19 01:50:13 +00:00
timestamp.h src: Fix all Siemens copyrights 2017-11-07 12:33:51 +00:00
trace.h src/include: add IS_ENABLED() around Kconfig symbol references 2017-07-13 23:55:05 +00:00
types.h src/include: Fix typo 2018-08-09 15:56:52 +00:00
uuid.h src/include: Introduce guid_t type 2018-09-06 10:24:09 +00:00
vbe.h Move compiler.h to commonlib 2018-10-08 16:57:27 +00:00
version.h
watchdog.h src/include: add IS_ENABLED() around Kconfig symbol references 2017-07-13 23:55:05 +00:00
wrdd.h