Skip to content

WIP: Implement bootloader firmware as partitions

Administrator requested to merge feature/bootloader-partitions into master

Fixes #1810

Generated sd card for an allwinner A64 device:

Screenshot_from_2019-08-04_19-56-26

Output for a rk3399 device with two firmware files (and it moves the boot/root partitions over to make space for them)

Screenshot_from_2019-08-04_23-49-59

Also generates this tiny table in the debug logs to visualize what's happening on the sd cards it writes:

(008813) [23:47:47] | Description    | Start      | End        |
(008813) [23:47:47] | -------------- | ---------- | ---------- |
(008813) [23:47:47] | MBR            | 0          | 1          |
(008813) [23:47:47] | firmware 1     | 64         | 848        |
(008813) [23:47:47] | firmware 2     | 16384      | 17828      |
(008813) [23:47:47] | boot partition | 17829      | 196181     |
(008813) [23:47:47] | rootfs         | 196182     | 100%       |

Tested on:

  • PineTab, uses sd_embed_firmware (but needs u-boot script in pmaports updated after merging this)
  • N900, doesn't use sd_embed_firmware
  • Rockpro64, uses 2 firmware files and has step_size set to 512 so it matches u-boot docs, gets written correctly but has unrelated booting issues,

Todo:

  • 4MB partition alignment for /
Edited by Administrator

Merge request reports

Loading