uboot/include
Alexander Graf 5d00995c36 efi_loader: Implement memory allocation and map
The EFI loader needs to maintain views of memory - general system memory
windows as well as used locations inside those and potential runtime service
MMIO windows.

To manage all of these, add a few helpers that maintain an internal
representation of the map the similar to how the EFI API later on reports
it to the application.

For allocations, the scheme is very simple. We basically allow allocations
to replace chunks of previously done maps, so that a new LOADER_DATA
allocation for example can remove a piece of the RAM map. When no specific
address is given, we just take the highest possible address in the lowest
RAM map that fits the allocation size.

Signed-off-by: Alexander Graf <agraf@suse.de>
Tested-by: Simon Glass <sjg@chromium.org>
2016-03-15 21:30:10 -04:00
..
andestech
asm-generic Remove unused CONFIG_MODEM_SUPPORT option and associated dead code. 2016-02-08 10:22:44 -05:00
bedbug
cavium armv8: cavium: Add an implementation of ATF calling functions 2016-01-19 22:26:12 +00:00
configs arm64: Remove non-full-va map code 2016-03-15 15:13:10 -04:00
cramfs
dm dm: blk: Add a block-device uclass 2016-03-14 15:34:50 -06:00
dt-bindings rockchip: Add a binding file for rk3288 video 2016-03-14 22:03:11 +01:00
faraday
fsl-mc driver: net: fsl-mc: flib changes for MC FW 9.0.0 2016-01-27 08:13:10 -08:00
grlib
jffs2
linux compiler*.h: sync include/linux/compiler*.h with Linux 4.5-rc6 2016-02-29 11:43:24 -05:00
lzma
mtd
net
pcmcia
power pmic: tps65218: add useful functions and defines 2016-02-24 18:44:07 -05:00
samsung
synopsys
test
u-boot Kconfig: Move CONFIG_FIT and related options to Kconfig 2016-03-14 19:18:07 -04:00
usb Add more SPDX-License-Identifier tags 2016-01-19 08:31:21 -05:00
zfs
.gitignore
ACEX1K.h
MCD_dma.h
MCD_progCheck.h
MCD_tasksInit.h
SA-1100.h
_exports.h
adc.h
addr_map.h Add more SPDX-License-Identifier tags 2016-01-19 08:31:21 -05:00
aes.h
ahci.h dm: ahci: Convert to use new DM PCI API 2016-01-12 10:19:09 -07:00
ali512x.h
altera.h
ambapp.h
ambapp_ids.h
android_image.h
ansi.h
api_public.h
armcoremodule.h
asm-offsets.h
ata.h
atmel_hlcdc.h
atmel_lcd.h
atmel_lcdc.h
atmel_mci.h
autoboot.h
axp152.h
axp209.h
axp221.h sunxi: Implement poweroff support for axp221 pmic 2016-01-26 16:20:04 +01:00
axp818.h power: axp818: Remove duplicate register definition macros 2016-01-26 16:20:05 +01:00
axp_pmic.h power: axp: merge separate DLDO functions into 1 2016-01-26 16:20:05 +01:00
backlight.h dm: backlight: Add a backlight uclass 2016-01-21 20:42:36 -07:00
bcd.h
bios_emul.h dm: pci: Convert bios_emu to use the driver model PCI API 2016-01-24 12:07:19 +08:00
bitfield.h
blk.h dm: blk: Add a block-device uclass 2016-03-14 15:34:50 -06:00
bmp_layout.h
bootcount.h
bootm.h
bootretry.h
bootstage.h
bouncebuf.h
bus_vcxk.h
bzlib.h bzip2: Support compression for sandbox 2016-01-20 19:06:23 -07:00
cbfs.h
circbuf.h
cli.h
cli_hush.h
clk.h dm: clk: Add support for decoding clocks from the device tree 2016-01-21 19:47:29 -07:00
cmd_spl.h
command.h cmd_boot: Add a poweroff command 2016-01-13 21:05:25 -05:00
common.h Merge git://git.denx.de/u-boot-dm 2016-03-14 19:21:44 -04:00
common_timing_params.h Add more SPDX-License-Identifier tags 2016-01-19 08:31:21 -05:00
commproc.h
compiler.h
config_cmd_all.h Remove unused CONFIG_CMD_HWFLOW option and associated dead code. 2016-02-08 10:22:44 -05:00
config_defaults.h
config_distro_bootcmd.h distro bootcmd: enumerate PCI before network operations 2016-01-28 21:01:23 -07:00
config_distro_defaults.h Move CONFIG_OF_LIBFDT to Kconfig 2016-03-14 14:50:25 -04:00
config_fallbacks.h
config_fsl_chain_trust.h secure_boot: split the secure boot functionality in two parts 2016-01-27 08:12:32 -08:00
config_phylib_all_drivers.h
config_uncmd_spl.h spl: dm: Add SPL_DM_SEQ_ALIAS config option 2016-01-13 13:20:02 +01:00
console.h
cortina.h
cpsw.h
cpu.h
crc.h include/crc.h: Remove unreferenced cyg_xxx() prototypes 2016-03-14 19:18:42 -04:00
cros_ec.h
cros_ec_message.h
dataflash.h
ddr_spd.h Add more SPDX-License-Identifier tags 2016-01-19 08:31:21 -05:00
debug_uart.h debug_uart: output CR along with LF 2016-03-14 15:34:50 -06:00
dfu.h dfu: usb: f_dfu: Set deferred call for dfu_flush() function 2016-02-24 19:12:32 +01:00
dialog_pmic.h
display.h dm: video: Add a operation to display uclass 2016-03-14 22:01:26 +01:00
display_options.h
div64.h
dm-demo.h
dm.h
dm9000.h
dma.h dm: implement a DMA uclass 2016-02-23 16:14:45 +05:30
dp83848.h
ds1722.h
ds4510.h Add more SPDX-License-Identifier tags 2016-01-19 08:31:21 -05:00
dtt.h
dwc3-omap-uboot.h
dwc3-uboot.h
dwmmc.h
e500.h
ec_commands.h
edid.h dm: video: Repurpose the 'displayport' uclass to 'display' 2016-01-21 20:42:36 -07:00
efi.h include/efi_api.h: Add more detailed API definitions 2016-03-15 15:19:23 -04:00
efi_api.h include/efi_api.h: Add more detailed API definitions 2016-03-15 15:19:23 -04:00
efi_loader.h efi_loader: Implement memory allocation and map 2016-03-15 21:30:10 -04:00
elf.h
env_attr.h
env_callback.h
env_default.h
env_flags.h tools: env validate: pass values as 0-based array 2016-02-08 10:10:29 -05:00
environment.h
errno.h
ethsw.h drivers: net: vsc9953: Add LAG support 2016-01-28 12:22:19 -06:00
exports.h
ext4fs.h dm: Drop the block_dev_desc_t typedef 2016-03-14 15:34:50 -06:00
ext_common.h
exynos_lcd.h
fastboot.h
fat.h dm: Drop the block_dev_desc_t typedef 2016-03-14 15:34:50 -06:00
fb_mmc.h
fb_nand.h
fdt.h
fdt_simplefb.h
fdt_support.h
fdtdec.h tegra: nyan-big: Move the LCD driver to driver model 2016-02-16 09:17:51 -07:00
fis.h
flash.h
fm_eth.h
fpga.h fpga: Add bitstream type BIT_NONE 2016-01-27 15:55:54 +01:00
fs.h Add more SPDX-License-Identifier tags 2016-01-19 08:31:21 -05:00
fsl_csu.h
fsl_dcu_fb.h
fsl_ddr.h Add more SPDX-License-Identifier tags 2016-01-19 08:31:21 -05:00
fsl_ddr_dimm_params.h Add more SPDX-License-Identifier tags 2016-01-19 08:31:21 -05:00
fsl_ddr_sdram.h driver/ddr/fsl: Add workaround for A009663 2016-01-25 08:24:15 -08:00
fsl_ddrc_version.h
fsl_debug_server.h
fsl_devdis.h
fsl_diu_fb.h
fsl_dspi.h
fsl_dtsec.h
fsl_errata.h
fsl_esdhc.h ARM: imx: fsl_esdhc: fix usage of low 4 bits of sysctl register 2016-01-03 15:21:21 +01:00
fsl_fman.h fm: fdt: Move fman ucode fixup to driver code 2016-02-24 08:51:13 -08:00
fsl_ifc.h
fsl_immap.h
fsl_mdio.h net: tsec: fsl_mdio: Fix several cosmetic issues 2016-01-28 12:22:49 -06:00
fsl_memac.h
fsl_pmic.h
fsl_qe.h qe: move drivers/qe/qe.h to include/fsl_qe.h 2016-02-24 08:51:13 -08:00
fsl_sec.h imx: Refactoring CAAM Job Ring structure and Secure Memory for imx7 2016-02-21 11:20:54 +01:00
fsl_sec_mon.h
fsl_secboot_err.h
fsl_sfp.h
fsl_tgec.h
fsl_usb.h
fsl_validate.h secure_boot: enable chain of trust for ARM platforms 2016-01-27 08:12:49 -08:00
fsl_wdog.h imx_watchdog: always set minimal timeout in reset_cpu 2016-01-07 17:54:53 +01:00
fuse.h
g_dnl.h
gdsys_fpga.h
gt64120.h
hash.h hash.c: Conditionally compile hash_command, static hash_show 2016-01-13 21:05:08 -05:00
hw_sha.h
hwconfig.h
i2c.h
i2c_eeprom.h
i2s.h
i8042.h
ide.h dm: Add a new header for block devices 2016-03-14 15:34:50 -06:00
image-sparse.h
image.h spl: Add an option to load a FIT containing U-Boot 2016-03-14 19:18:30 -04:00
imx_thermal.h
initcall.h
input.h
inttypes.h
iomux.h
ioports.h
iotrace.h
ipu_pixfmt.h
key_matrix.h
keyboard.h
kgdb.h
lattice.h
lcd.h lcd: fix the color testpattern in 16bit mode 2016-01-24 00:38:40 +01:00
lcd_console.h
lcdvideo.h
ld9040.h
led-display.h
led.h
libata.h
libfdt.h libfdt: Add a function to write a property placeholder 2016-03-14 14:19:11 -04:00
libfdt_env.h
libtizen.h
linker_lists.h
linux_logo.h
lmb.h
logbuff.h
lxt971a.h
lynxkdi.h
malloc.h malloc: use hidden visibility 2016-03-08 15:01:47 -05:00
mapmem.h
mb862xx.h
mc9sdz60.h
mc13783.h
mc13892.h
mc34704.h
memalign.h
membuff.h
menu.h
micrel.h
mii_phy.h
miiphy.h
mipi_display.h
misc.h include: Correct "requset" typoes in misc.h 2016-01-08 10:15:42 -05:00
mk48t59.h
mmc.h dm: Drop the block_dev_desc_t typedef 2016-03-14 15:34:50 -06:00
mpc5xx.h
mpc5xxx.h
mpc5xxx_sdma.h
mpc8xx.h
mpc8xx_irq.h
mpc83xx.h powerpc/83xx: fix build failure 2016-01-20 10:19:40 -05:00
mpc85xx.h
mpc86xx.h
mpc106.h
mpc823_lcd.h
mpc8260.h
mpc8260_irq.h
msc01.h
mtd.h
mtd_node.h
mv88e6352.h
mvebu_mmc.h
mvmfp.h
nand.h Add more SPDX-License-Identifier tags 2016-01-19 08:31:21 -05:00
net.h Merge branch 'master' of git://git.denx.de/u-boot-net 2016-01-28 18:42:10 -05:00
netdev.h net: emaclite: Move driver to DM 2016-01-27 15:55:52 +01:00
ns16550.h Revert "dm: ns16550: Add support for reg-offset property" 2016-02-29 10:26:20 -05:00
ns87308.h
onenand_uboot.h
os.h
palmas.h
panel.h dm: panel: Add a panel uclass 2016-01-21 20:42:36 -07:00
part.h disk/part.c: Expose list of available block drivers 2016-03-15 15:19:22 -04:00
part_efi.h
pc_keyb.h
pca953x.h Add more SPDX-License-Identifier tags 2016-01-19 08:31:21 -05:00
pca9564.h
pca9698.h
pch.h dm: pch: Add get_io_base op 2016-02-05 12:47:21 +08:00
pci.h dm: pci: Add missing forward declarations 2016-02-05 12:47:24 +08:00
pci_gt64120.h
pci_ids.h
pci_msc01.h
pci_rom.h dm: pci: video: Convert video and pci_rom to use DM PCI API 2016-01-12 10:19:09 -07:00
pcmcia.h
pe.h efi_loader: Add PE image loader 2016-03-15 15:19:23 -04:00
phy.h net: phy: introduce a quirk PHY_FLAG_BROKEN_RESET 2016-01-28 13:20:30 -06:00
phys2bus.h
physmem.h
post.h
ppc_asm.tmpl
ppc_defs.h
ps2mult.h
pwm.h dm: pwm: Add a PWM uclass 2016-01-21 20:42:36 -07:00
pwrseq.h dm: Add a power sequencing uclass 2016-01-21 20:42:34 -07:00
pxa_lcd.h
radeon.h
ram.h
rc4.h
regmap.h
reiserfs.h dm: Drop the block_dev_desc_t typedef 2016-03-14 15:34:50 -06:00
remoteproc.h
reset.h
rtc.h
rtc_def.h
s6e63d6.h
s_record.h
samsung-usb-phy-uboot.h
sandbox-adc.h
sandboxblockdev.h dm: sandbox: Add driver-model block-device support for sandbox 2016-03-14 15:34:50 -06:00
sandboxfs.h dm: Drop the block_dev_desc_t typedef 2016-03-14 15:34:50 -06:00
sata.h dm: Drop the block_dev_desc_t typedef 2016-03-14 15:34:50 -06:00
scf0403_lcd.h
scsi.h
sdhci.h
search.h
sed156x.h
sed13806.h
serial.h
sh_pfc.h
sh_tmu.h
sja1000.h
slre.h
sm501.h
smsc_lpc47m.h
smsc_sio1007.h superio: Add SMSC SIO1007 driver 2016-02-21 13:42:52 +08:00
sound.h
sparse_defs.h
sparse_format.h
spartan2.h
spartan3.h
spd.h
spd_sdram.h
spi.h spi: Add support for dual and quad mode 2016-01-13 18:47:27 +05:30
spi_flash.h Add more SPDX-License-Identifier tags 2016-01-19 08:31:21 -05:00
spl.h Merge git://git.denx.de/u-boot-dm 2016-03-14 19:21:44 -04:00
splash.h
status_led.h
stdio_dev.h
stdlib.h
stratixII.h
sx151x.h
sy8106a.h sunxi: power: add support for sy8106a driver 2016-02-23 20:50:07 +01:00
sym53c8xx.h
syscon.h dm: syscon: Allow finding devices by driver data 2016-01-24 12:07:19 +08:00
systemace.h dm: Drop the block_dev_desc_t typedef 2016-03-14 15:34:50 -06:00
tca642x.h
tegra-kbc.h
thermal.h
thor.h
ti-usb-phy-uboot.h
timer.h timer: Provide an early timer 2016-02-26 08:53:10 -07:00
timestamp.h
tmu.h
tpm.h
tps6586x.h
trace.h
tsec.h net: tsec: Use priv->tbiaddr to initialize TBI PHY address 2016-01-28 12:23:19 -06:00
tsi108.h
tsi148.h
twl4030.h
twl6030.h input: TWL6030 input support for power button, USB and charger 2016-03-15 15:12:57 -04:00
tws.h
ubi_uboot.h
ubifs_uboot.h dm: Drop the block_dev_desc_t typedef 2016-03-14 15:34:50 -06:00
universe.h
usb.h dm: Drop the block_dev_desc_t typedef 2016-03-14 15:34:50 -06:00
usb_cdc_acm.h
usb_defs.h
usb_ether.h usb: eth: add Realtek RTL8152B/RTL8153 DRIVER 2016-01-23 16:22:34 +01:00
usb_mass_storage.h dm: Drop the block_dev_desc_t typedef 2016-03-14 15:34:50 -06:00
usbdescriptors.h
usbdevice.h
usbroothubdes.h
uuid.h
vbe.h
version.h
video.h video: Correct 'tor' typo in comment 2016-01-30 10:58:47 +01:00
video_bridge.h
video_console.h video: Provide a backspace method 2016-01-30 10:55:37 +01:00
video_easylogo.h
video_fb.h
video_font.h
video_font_4x6.h
video_font_data.h
video_logo.h
virtex2.h
vsc7385.h
vsc9953.h drivers: net: vsc9953: Add LAG support 2016-01-28 12:22:19 -06:00
vsprintf.h vsprintf.c: Always enable CONFIG_SYS_VSNPRINTF 2016-01-19 08:31:16 -05:00
vxworks.h
w83c553f.h
wait_bit.h lib: Add wait_for_bit 2016-01-25 10:39:47 -05:00
watchdog.h
winbond_w83627.h misc: Add simple driver to enable the legacy UART on Winbond Super IO chips 2016-01-28 13:53:30 +08:00
xilinx.h
xyzModem.h
zfs_common.h dm: Drop the block_dev_desc_t typedef 2016-03-14 15:34:50 -06:00
zynqpl.h