cubieboard2: Accommodate U-Boot environment on SD-card
authorAlexey Brodkin <Alexey.Brodkin@synopsys.com>
Fri, 1 Jul 2016 20:01:57 +0000 (23:01 +0300)
committerPeter Korsgaard <peter@korsgaard.com>
Sat, 2 Jul 2016 11:19:12 +0000 (13:19 +0200)
According to current "include/configs/sunxi-common.h"
U-Boot environment is stored on SD-card with offset 544 kB
and its size is limited as 128 kB.

Given memory layout of sunxi boards:
  1. SPL
  2. U-Boot
  3. U-Boot environment
  4. Partitions

(see http://linux-sunxi.org/Bootable_SD_card#SD_Card_Layout for details)

we need to make sure the first real partition starts at least
with 544+128 kB offset. Adding a small safety gap let's put
the first partition with offset 1MB from the beginning of SD-card.

Otherwise current setup gets broken as soon as one saves U-Boot
environment with "saveenv" which basically overwrites FAT partition with
zImage and board no longer boots into Linux kernel.

[Peter: extend description, add padding to u-boot partition instead]
Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
Cc: Erico Nunes <nunes.erico@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Peter Korsgaard <peter@korsgaard.com>
Cc: Carlos Quijano <carlos@crqgestion.es>
Cc: Andi Shyti <andi@etezian.org>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
board/cubietech/cubieboard2/genimage.cfg

index 8929a721e5123f7024eddfe3a42ff0bd711336c4..b082ab0da115beb2261413db7a36c16ca0b5fee4 100644 (file)
@@ -20,6 +20,7 @@ image sdcard.img {
                in-partition-table = "no"
                image = "u-boot-sunxi-with-spl.bin"
                offset = 8192
+               size = 1040384 # 1MB - 8192
        }
 
        partition boot {