uniLoader/Kconfig
Ivaylo Ivanov c6b486f0ed aarch64: introduce early relocation of the bootloader
All newer exynos devices with s-boot have the "feature" of placing the
android kernel at a random location in dram, specifically around
0x80000000 and 0x83000000. This made it hard to assume where we are at,
hence why we made everything as PiE (position-independent) as possible.

This, however, resulted in a lot of issues. I usually managed to get
around them with ugly hacks, but in the last 5-6 commits, with the
fixed support for armv7, everything fell apart for arm64.

So, the solution for this is to implement code at the beginning
of the bootloader that relocates it to a safe place in memory.
This is currently enabled for dreamlte, and it must be enabled
and configured for all other boards with that issue. Otherwise they
will NOT boot anymore. Boards that don't need this can keep
CONFIG_POSITION_INDEPENDENT disabled.
2025-07-10 15:58:45 +03:00

55 lines
1.3 KiB
Plaintext

#
# For a description of the syntax of this configuration file,
# see Documentation/kbuild/kconfig-language.txt.
#
mainmenu "uniLoader Configuration"
source "arch/Kconfig"
menu "Building options"
config CROSS_COMPILE
string "Cross-compiler tool prefix"
help
Same as running 'make CROSS_COMPILE=prefix-' but stored for
default make runs in this kernel build directory. You don't
need to set this unless you want the configured kernel build
directory to select the cross-compiler automatically.
config LOGLEVEL
int "Verbosity of logs"
default 7
config EMBED_LINUX
bool "Embed linux kernel and device tree"
default y
help
Select this if you want uniLoader to load a linux kernel and device tree
config KERNEL_PATH
string "Path to kernel image"
depends on EMBED_LINUX
default blob/Image
help
Path to the kernel, which is going to get embedded to uniLoader
config DT_PATH
string "Path to device tree image"
depends on EMBED_LINUX
default blob/dtb
help
Path to the device tree, which is going to get embedded to uniLoader
config RAMDISK_PATH
string "Path to ramdisk image"
depends on EMBED_LINUX
default blob/ramdisk
help
Path to the ramdisk, which is going to get embedded to uniLoader
endmenu
source "lib/Kconfig"
source "soc/Kconfig"
source "board/Kconfig"