Linux Bootstack Documentation

Early Bootstack

This section and subsections describe how the switch bootstack works.

hekate

It is the first stage bootloader used to configure, flash and is responsible for booting L4T on Switch. By not going into details, hekate itself falls in the "payload" category of the switch hacking scene and is a requirement to boot L4T. Below are the L4T relevant features.

L4T-Loader

L4T-Loader is the part of hekate that prepares the boot files and configuration and finally launches the next stage of Linux booting (ATF/UBOOT). Additionally it passes over all configuration keys of the selected .ini boot entry to said stage. README_CONFIG.txt explains these keys.

SD Tools and Partition Manager

Used for backing and restoring files and partitions of the SD card. It also prepares the SD card with the relevant partitions that are gonna be used for the flashing process of any Switch Linux-based distro.

JoyCon Bluetooth pairing information dump

hekate is able to dump the pairing information from the JoyCon, which are then used by Linux based systems to connect to the JoyCons without the need for pairing (thus losing the pairing done in Horizon).

Late Bootstack

ATF

It's the TrustZone (Security Monitor) firmware of any ARM based linux system. It also launches U-BOOT

U-BOOT

It's the main Linux launcher firmware. It takes the configuration for hekate and loads Kernel, Initramfs and ARM Device Tree in order for Linux to boot.

Kernel

Aka Linux. The core piece of anything that is called Linux or Linux-based.

Initramfs

Normally used to do initial userspace configuration and select the correct drive to boot userspace.

Userspace

Anything below Kernel. For example a Linux distribution or Android.

Boostack Dev Documentation

Last updated