Project

General

Profile

BootloaderInterfaces » History » Version 44

Denis 'GNUtoo' Carikli, 11/01/2020 06:30 PM
Add TrustZone OS as it impacts Upstream Linux ports

1 6 Denis 'GNUtoo' Carikli
h1. Bootloader interfaces
2 1 Denis 'GNUtoo' Carikli
3 44 Denis 'GNUtoo' Carikli
|_. Device                       |_. Bootloader | cmdline from boot.img | cmdline from bootloader environment | Compatible with upstream Linux | Flashing protocols | Image formats | filesystems | Loads a TrustZone OS |
4 42 Denis 'GNUtoo' Carikli
| N/A                            | upstream u-boot | ? | Yes | Yes | * DFU
5 31 Denis 'GNUtoo' Carikli
                                          * Fastboot
6
                                          * Thor[1]
7 1 Denis 'GNUtoo' Carikli
                                          * Other? | * Android Boot.img files
8 32 Denis 'GNUtoo' Carikli
                                                     * U-boot uImages
9
                                                     * RAW / zImage
10 44 Denis 'GNUtoo' Carikli
                                                     * Other | Yes, various | Not on 32bit ARM |
11 42 Denis 'GNUtoo' Carikli
| N/A                             | upstream Barebox | ? | Yes | Yes | * DFU
12 1 Denis 'GNUtoo' Carikli
                                           * FAstboot
13
                                           * Other? |  * Android Boot.img files ? 
14 32 Denis 'GNUtoo' Carikli
                                                       * U-boot uImages
15
                                                       * RAW / zImage
16 44 Denis 'GNUtoo' Carikli
                                                       * Other | Yes, various | Not on 32bit ARM |
17
| Galaxy S (GT-I9000)             | [[GTI9000Bootloader]] | | | ? | * Thor[1] | * RAW / zImage | RAW, KERNEL partition only | Probably not |
18
| Galaxy SII (GT-I9100)           | [[GTI9100Bootloader]] | | | [[BootloadersIncompatibleWithLinux#Devices-with-the-Exynos-4412-2|Probably not]] | * Thor[1] | * RAW / zImage | RAW, ? partition only | Probably not |
19
| Galaxy SII (GT-I9100G_CHN_CHN)  | [[GTI9100GBootloader]] | | | ? | * Very unreliable[2] Thor[1] | ? | RAW, KERNEL partition only | ? |
20 1 Denis 'GNUtoo' Carikli
| Galaxy Nexus (GT-I9250) | [[I9250Bootloader]] | used | ignored | ? | * Reliable[3] Thor[1]
21 44 Denis 'GNUtoo' Carikli
                                                                       * Fastboot | * boot.img | boot and recovery partitions only | ? |
22 37 Denis 'GNUtoo' Carikli
| Galaxy SIII (GT-I9300)
23 1 Denis 'GNUtoo' Carikli
  Galaxy SIII 4G (GT-I9305)
24 31 Denis 'GNUtoo' Carikli
  Galaxy Note II (GT-N7100)
25 42 Denis 'GNUtoo' Carikli
  Galaxy Note II 4G (GT-N7105)    | [[MidasBootloader]]    | ignored | used | [[BootloadersIncompatibleWithLinux#Devices-with-the-Exynos-4412|No]] | * Somewhat reliable[4] Thor[1] | * boot.img | RAW, BOOT and RECOVERY partitions only |
26 44 Denis 'GNUtoo' Carikli
| | [[GT-N5100Bootloader]] | | | | | | | Yes, And the OS is nonfree and signed! |
27
| Galaxy Note (GT-N7000)          | [[GTIN7000Bootloader]] |         |      | ? | * Thor[1] | * RAW / zImage | RAW, KERNEL partition only | ? |
28
| Galaxy Tab 2 7.0 GSM (GT-P3100) |                        | ignored |      |   | * Thor[1] | * boot.img     |  RAW, KERNEL and RECOVERY partitions only  | ? |
29
| PinePhone v1.1 Braveheart (stock?[5]) u-boot | [[PinePhoneBraveheartBootloader]] | ? | Yes |  Yes (u-boot) | ? | ? | ? | Probably (arm64), fully free software |
30 29 Denis 'GNUtoo' Carikli
31
fn1. Thor is the protocol used by Heimdall, Odin, "u-boot":https://gitlab.denx.de/u-boot/u-boot/-/raw/master/drivers/usb/gadget/f_thor.c and several nonfree bootloaders. u-boot has a free software 
32
33
fn2. It didn't work on GNUtoo desktop computer at all, while it worked fine on his laptop. With the stock Android 2.6.3 bootloader you could also end up stuck on the PC screen without a computer where heimdall works fine.
34 30 Denis 'GNUtoo' Carikli
35 12 Denis 'GNUtoo' Carikli
fn3. Under IO (disk or SSD) load, a computer can easily flash SYSTEM or even DATA partitions with heimdall.
36
37
fn4. Under IO (disk or SSD) load, a computer typically fails at flashing SYSTEM or big DATA partitions with heimdall. Boot and recovery partitions are typically fine though.
38 40 Denis 'GNUtoo' Carikli
39
fn5. Someone lent me a Pinephone Braveheart and beside testing many distributions, nothing low level was attempted when I got it.
40 14 Denis 'GNUtoo' Carikli
41 12 Denis 'GNUtoo' Carikli
h2. See also
42 1 Denis 'GNUtoo' Carikli
43
* [[UART]]: How to get the serial console. Very useful to interact with the bootloader and see boot logs.
44
* [[IsorecRecoveryIssue]]: An issue affecting the bootloaders of the Galaxy SII (GT-I9100), Galaxy Note (GT-N7000), Galaxy S II (GT-I9100G)