u-boot-2016/include
Philipp Tomsich 3d54eabcaf rockchip: spl: RK3399: use boot0 hook to create space for SPL magic
The SPL binary needs to be prefixed with the boot magic ('RK33' for
the RK3399) on the Rockchip platform and starts execution of the
instruction word following immediately after this boot magic.

This poses a challenge for AArch64 (ARMv8) binaries, as the .text
section would need to start on the odd address, violating natural
alignment (and potentially triggering a fault for any code that
tries to access 64bit values embedded in the .text section).

A quick and easy fix is to have the .text section include the 'RK33'
magic and pad it with a boot0 hook to insert 4 bytes of padding at the
start of the section (with the intention of having mkimage overwrite
this padding with the appropriate boot magic). This avoids having to
modify the linker scripts or more complex logic in mkimage.

X-AffectedPlatforms: RK3399-Q7
Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Tested-by: Klaus Goger <klaus.goger@theobroma-systems.com>
2017-04-04 20:01:57 -06:00
..
andestech
asm-generic spl: Add spl_early_init() 2017-03-16 16:03:43 -06:00
bedbug
cavium
configs rockchip: spl: RK3399: use boot0 hook to create space for SPL magic 2017-04-04 20:01:57 -06:00
cramfs
dm dm: Return actual bools in dm_fdt_pre_reloc 2017-03-16 16:03:47 -06:00
dt-bindings Merge branch 'master' of git://www.denx.de/git/u-boot-imx 2017-03-19 15:13:38 -04:00
environment/ti ARM: ti: consolidate dfu environment variables 2016-12-02 21:32:37 -05:00
faraday
fsl-mc arm: fsl-layerscape: Move QSGMII wriop_init to SoC file 2017-03-28 09:08:25 -07:00
grlib
jffs2
linux bitops.h: Include bitsperlong.h as needed for GENMASK_ULL 2017-03-29 07:39:32 +02:00
lzma
mtd
net
pcmcia
power pmic: pmic_mc34vr500: Add APIs to set/get SWx volt 2017-01-18 09:28:57 -08:00
samsung
spmi
synopsys
tee arm: omap5: Add TEE loading support 2016-12-03 13:21:21 -05:00
test tests: Introduce DT overlay tests 2016-08-20 11:35:07 -04:00
u-boot tools: Allow crc8 to be used 2017-02-07 10:54:32 -06:00
usb Move ENOTSUPP defines to include/linux/errno.h 2016-09-23 22:25:43 -04:00
zfs
.gitignore cmd: rework "license" command 2017-02-08 15:56:28 -05:00
_exports.h x86: Don't export interrupt handlers with x86_64 2016-10-11 11:55:33 +08:00
ACEX1K.h
adc.h
addr_map.h
aes.h
ahci.h dm: Add support for scsi/sata based devices 2016-12-20 09:15:27 +01: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
axp809.h
axp818.h
axp_pmic.h
backlight.h
bcd.h
bios_emul.h
bitfield.h
blk.h
bmp_layout.h
bootcount.h
bootm.h
bootretry.h
bootstage.h
bouncebuf.h
bus_vcxk.h
bzlib.h
cbfs.h
circbuf.h
cli.h
cli_hush.h
clk-uclass.h
clk.h Revert "ns16650: Make sure we have CONFIG_CLK set before using infrastructure" 2016-10-08 09:33:31 -04:00
cmd_spl.h
command.h
common.h dm: Add callback to modify the device tree 2017-03-29 07:38:10 +02:00
common_timing_params.h
commproc.h powerpc: Drop CONFIG_SYS_ALLOC_DPRAM 2017-01-25 17:38:42 -05:00
compiler.h compiler.h: use u-boot endian macros on OpenBSD 2016-12-02 21:32:38 -05:00
config_cmd_all.h cmd: move CONFIG_CMD_UNZIP and CONFIG_CMD_ZIP to Kconfig 2017-02-08 16:24:28 -05:00
config_defaults.h disk: convert CONFIG_PARTITIONS to Kconfig 2017-01-28 08:47:30 -05:00
config_distro_bootcmd.h cmd, disk: convert CONFIG_PARTITION_UUIDS, CMD_PART and CMD_GPT 2017-01-28 08:48:03 -05:00
config_distro_defaults.h disk: convert CONFIG_EFI_PARTITION to Kconfig 2017-01-28 08:47:42 -05:00
config_fallbacks.h cmd, disk: convert CONFIG_PARTITION_UUIDS, CMD_PART and CMD_GPT 2017-01-28 08:48:03 -05:00
config_fsl_chain_trust.h
config_phylib_all_drivers.h
config_uncmd_spl.h
console.h
cortina.h
cpsw.h driver: net: cpsw: add support for RGMII id mode support and RMII clock source selection 2016-10-13 12:25:02 -05:00
cpu.h cpu: Add get_vendor callback 2016-10-19 09:01:51 +02:00
crc.h
cros_ec.h cmd: crosec: Move cros_ec_decode_region helper to cmd/cros_ec.c 2016-12-02 21:04:48 -07:00
cros_ec_message.h
dataflash.h flash: complete CONFIG_SYS_NO_FLASH move with renaming 2017-02-12 14:30:25 -05:00
ddr_spd.h
debug_uart.h
dfu.h
dialog_pmic.h
display.h video: Track whether a display is in use 2016-11-25 17:59:31 -07:00
display_options.h
div64.h
dm-demo.h
dm.h
dm9000.h
dma.h
dp83848.h
ds1722.h
ds4510.h
dt-structs.h
dtt.h
dwc3-omap-uboot.h
dwc3-uboot.h
dwmmc.h mmc: dw_mmc: remove the unnecessary arguments for dwmci_setup_cfg 2016-10-10 15:23:33 +09:00
e500.h
ec_commands.h
edid.h
eeprom_field.h
eeprom_layout.h
efi.h x86: Tidy up selection of building the EFI stub 2016-11-14 23:24:03 +01:00
efi_api.h efi: Use device device path type Messaging for network interface node 2016-11-14 23:24:02 +01:00
efi_loader.h efi_loader: Fix efi_add_runtime_mmio definition 2016-11-17 14:18:55 +01:00
elf.h elf: arm: Add a few ARM relocation types 2016-11-14 23:24:03 +01:00
env_attr.h
env_callback.h
env_default.h
env_flags.h
environment.h Various, accumulated typos collected from around the tree. 2016-10-06 20:57:40 -04:00
errno.h treewide: replace #include <asm-generic/errno.h> with <linux/errno.h> 2016-09-23 22:25:27 -04:00
ethsw.h
exports.h Export memset for standalone AQ FW load apps 2016-09-14 14:09:50 -07:00
ext4fs.h ext4: Allow reading files with non-zero offset, clamp read len 2016-11-21 14:07:27 -05:00
ext_common.h ext4: Update ext2/3/4 superblock, group descriptor and inode structures 2016-09-23 09:18:55 -04:00
exynos_lcd.h
fastboot.h
fat.h fs/fat/fatwrite: Local variable as buffer to store dir_slot entries 2016-11-28 20:09:45 -05:00
fb_mmc.h
fb_nand.h
fdt.h
fdt_simplefb.h
fdt_support.h libfdt: replace ARCH_FIXUP_FDT with ARCH_FIXUP_FDT_MEMORY 2016-12-02 20:54:34 -07:00
fdtdec.h fdt: add memory bank decoding functions for board setup 2016-12-20 09:15:28 +01:00
fis.h
flash.h
fm_eth.h
fpga.h
fs.h
fsl_csu.h fsl: csu: add an API to set R/W permission to PCIe 2016-09-14 14:07:08 -07:00
fsl_dcu_fb.h
fsl_ddr.h ddr: fsl: Merge macro CONFIG_NUM_DDR_CONTROLLERS and CONFIG_SYS_NUM_DDR_CTRLS 2017-01-04 19:40:52 -05:00
fsl_ddr_dimm_params.h
fsl_ddr_sdram.h armv8/fsl_lsch2: Add chip power supply voltage setup 2017-01-18 09:29:08 -08:00
fsl_ddrc_version.h
fsl_devdis.h
fsl_diu_fb.h
fsl_dspi.h
fsl_dtsec.h
fsl_errata.h
fsl_esdhc.h treewide: replace #include <asm/errno.h> with <linux/errno.h> 2016-09-23 17:55:42 -04:00
fsl_fman.h
fsl_ifc.h
fsl_immap.h driver/ddr/fsl: Add more debug registers 2016-09-14 14:05:32 -07:00
fsl_lpuart.h serial: lpuart: add i.MX7ULP support 2017-03-17 09:27:08 +01:00
fsl_mdio.h
fsl_memac.h net: fman: fix 2.5G SGMII settings 2016-12-08 10:36:22 -06:00
fsl_mmdc.h driver: ddr: fsl_mmdc: Pass board parameters through data structure 2016-09-26 08:53:07 -07:00
fsl_pmic.h
fsl_qe.h
fsl_sec.h crypto: Move CONFIG_SYS_FSL_SEC_LE and _BE to Kconfig 2017-01-04 19:40:19 -05:00
fsl_sec_mon.h fsl_sec_mon: Update driver for Security Monitor 2016-10-06 09:54:14 -07:00
fsl_secboot_err.h
fsl_sfp.h fsl_sfp : Modify macros as per changes in SFP v3.4 2016-10-06 09:56:28 -07:00
fsl_tgec.h
fsl_usb.h drivers: usb: xhci-fsl: Implement Erratum A-010151 for FSL USB3 controller 2016-09-27 23:30:49 +02:00
fsl_validate.h fsl: Secure Boot: Enable IE (Key extention) Feature 2017-03-28 09:03:04 -07:00
fsl_wdog.h imx_watchdog: Do not assert WDOG_B on watchdog init 2016-10-04 12:01:14 +02:00
fuse.h
g_dnl.h common: dfu: saperate the dfu common functionality 2016-09-27 23:30:18 +02:00
gdsys_fpga.h
gt64120.h
hash.h
hw_sha.h
hwconfig.h treewide: replace #include <asm/errno.h> with <linux/errno.h> 2016-09-23 17:55:42 -04:00
i2c.h
i2c_eeprom.h
i2s.h
i8042.h
ide.h
image-sparse.h
image.h Kconfig: define MD5 dependency for FIT support 2017-03-17 09:09:40 -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 powerpc: MPC8555: Remove macro CONFIG_MPC8555 2016-11-23 23:42:05 -08:00
kgdb.h
lattice.h
lcd.h
lcd_console.h Convert CONFIG_CONSOLE_SCROLL_LINES to Kconfig 2016-10-23 18:33:57 -04:00
lcdvideo.h
ld9040.h
led-display.h
led.h
libata.h
libfdt.h libfdt: Sync overlay with upstream 2016-10-23 12:08:48 -07:00
libfdt_env.h libfdt: Add new headers and defines 2016-08-20 11:35:00 -04:00
libtizen.h
linker_lists.h
linux_logo.h
lmb.h
logbuff.h
lxt971a.h
lynxkdi.h
mailbox-uclass.h
mailbox.h
malloc.h
mapmem.h
mb862xx.h
mc9sdz60.h
mc13783.h
mc13892.h
mc34704.h
MCD_dma.h
MCD_progCheck.h
MCD_tasksInit.h
memalign.h
membuff.h
menu.h
micrel.h net: phy: micrel: center FLP burst timing at 16ms 2016-11-07 11:28:16 -06:00
mii_phy.h
miiphy.h common: miiphyutil: Add helper function for mdio bus name 2016-12-20 07:40:04 +01:00
mipi_display.h
misc.h misc: add "call" uclass op 2016-08-12 11:01:22 -06:00
mk48t59.h
mmc.h mmc: change the set_ios return type from void to int 2017-01-11 19:40:13 +09:00
mpc5xx.h
mpc5xxx.h
mpc5xxx_sdma.h
mpc8xx.h
mpc8xx_irq.h
mpc83xx.h
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 mtd: nand: remove nand size print from nand_init function 2017-03-28 10:39:33 -07:00
net.h net: cosmetic: Define ethernet name length 2017-02-07 10:54:32 -06:00
netdev.h
ns16550.h serial, ns16550: bugfix: ns16550 fifo not enabled 2017-01-20 09:15:19 -05:00
ns87308.h
nuvoton_nct6102d.h misc: Add simple driver for some Nuvoton NCT6102D devices 2016-08-16 11:44:09 +08:00
onenand_uboot.h
os.h sandbox/fs: Free memory allocated by os_dirent_ls 2016-10-11 10:17:07 -06:00
palmas.h ARM: OMAP4+: Add support for getting pbias info from board 2016-12-04 13:54:51 -05:00
panel.h
part.h SPL: add support to boot from a partition type 2017-02-17 14:15:14 -05:00
part_efi.h fastboot: move FASTBOOT_FLASH options into Kconfig 2016-10-01 20:04:59 -04:00
pc_keyb.h
pca953x.h
pca9564.h
pca9698.h
pch.h
pci.h
pci_gt64120.h
pci_ids.h x86: baytrail: Add 2nd eMMC controller to the PCI probe list 2016-10-11 11:55:33 +08:00
pci_msc01.h
pci_rom.h
pcmcia.h
pe.h
phy.h Merge git://www.denx.de/git/u-boot-marvell 2017-04-04 09:17:56 -04:00
phys2bus.h
physmem.h
post.h
power-domain-uclass.h Add a power domain framework/uclass 2016-07-27 16:29:56 -06:00
power-domain.h Add a power domain framework/uclass 2016-07-27 16:29:56 -06:00
ppc_asm.tmpl
ppc_defs.h
ps2mult.h
pwm.h
pwrseq.h
pxa_lcd.h
qfw.h
radeon.h
ram.h
rc4.h
regmap.h
reiserfs.h
remoteproc.h
reset-uclass.h reset: declare fdtdec_phandle_args as struct to fix warning 2016-10-10 10:03:23 +09:00
reset.h reset: add no-op stubs for optional reset control 2016-09-23 22:25:44 -04:00
rtc.h
rtc_def.h
s6e63d6.h
s_record.h Various, accumulated typos collected from around the tree. 2016-10-06 20:57:40 -04:00
SA-1100.h
samsung-usb-phy-uboot.h
sandbox-adc.h
sandboxblockdev.h
sandboxfs.h
sata.h dm: Add support for scsi/sata based devices 2016-12-20 09:15:27 +01:00
scf0403_lcd.h
scsi.h dm: Add support for scsi/sata based devices 2016-12-20 09:15:27 +01:00
sdhci.h mmc: sdhci: Add support for optional controller specific set_ios_post() 2017-01-25 07:03:44 +01:00
search.h search.h: Numerous grammatical fixes, comment updates 2016-10-06 20:57:41 -04:00
sed156x.h
serial.h
sh_pfc.h ARM: rmobile: Add support R8A7795 2016-08-17 10:25:35 +09:00
sh_tmu.h ARM: Rmobile: Rename CONFIG_RMOBILE to CONFIG_ARCH_RMOBILE 2016-08-17 10:25:34 +09:00
sja1000.h
slre.h
sm501.h
smbios.h x86: Use unsigned long for address in table generation 2017-02-06 11:38:46 +08:00
smsc_lpc47m.h
smsc_sio1007.h
sound.h
sparse_defs.h
sparse_format.h
spartan2.h
spartan3.h
spd.h
spd_sdram.h
spi.h spi: Remove dual flash options/flags 2016-11-19 08:41:44 +05:30
spi_flash.h spi: Move freescale-specific code into a private header 2016-10-06 15:07:35 -04:00
spl.h spl: Convert CONFIG_SPL_ABORT_ON_RAW_IMAGE into a positive option 2017-03-18 14:28:50 -04:00
splash.h splash: add support for loading splash from a FIT image 2017-01-13 17:40:38 +01:00
status_led.h status_led: Kconfig migration 2017-01-21 15:12:33 -05:00
stdio_dev.h Convert CONFIG_SYS_STDIO_DEREGISTER to Kconfig 2016-10-23 18:34:17 -04:00
stdlib.h
stratixII.h
sx151x.h
sy8106a.h
sym53c8xx.h
syscon.h
sysreset.h
tables_csum.h x86: Move table csum into separate file 2016-10-19 09:01:50 +02:00
tca642x.h
tegra-kbc.h
thermal.h
thor.h
ti-usb-phy-uboot.h
time.h time: import time_after, time_before and friends from Linux 2017-01-14 16:46:30 -05:00
timer.h
timestamp.h
tmu.h
tpm.h tpm: Add function to load keys via their parent's SHA1 hash 2017-03-26 13:22:58 -06:00
tps6586x.h
trace.h
tsec.h
tsi108.h
tsi148.h
twl4030.h
twl6030.h
tws.h
ubi_uboot.h kconfig: introduce kconfig for UBI 2016-09-26 13:24:43 -04:00
ubifs_uboot.h
ubispl.h
universe.h
usb.h
usb_cdc_acm.h
usb_defs.h
usb_ether.h
usb_mass_storage.h
usbdescriptors.h
usbdevice.h
usbroothubdes.h
uuid.h
vbe.h vbe: Make vbe_setup_video_priv() public 2016-10-12 10:56:51 +08:00
version.h Kconfig: Move config IDENT_STRING to Kconfig 2016-09-20 09:30:23 -04:00
video.h video: Move video_get_info_str() prototype to a header file 2016-10-23 18:33:54 -04:00
video_bridge.h
video_console.h
video_easylogo.h
video_fb.h video: Drop CONFIG_VIDEO_HW_CURSOR 2016-10-23 18:33:48 -04:00
video_font.h
video_font_4x6.h
video_font_data.h
video_logo.h
virtex2.h
vsc7385.h
vsc9953.h
vsprintf.h Fix spelling of "resetting". 2016-10-31 10:13:17 -04:00
vxworks.h
w83c553f.h
wait_bit.h lib: Add WATCHDOG_RESET to wait_bit.h 2017-01-10 10:18:11 +01:00
watchdog.h
winbond_w83627.h
xilinx.h fpga: xilinx: zynqmp: Add PL bitstream download support for ZynqMP 2016-09-22 07:33:21 +02:00
xyzModem.h
zfs_common.h
zynqmppl.h ARM64: zynqmp: Adjust to new SMC interface to get silicon version 2016-11-15 15:28:05 +01:00
zynqpl.h ARM: zynq: Add support for Zynq 7000S 7007s/7012s/7014s devices 2016-11-15 15:28:04 +01:00