[U-Boot] ARM64 Allwinner Binary Size

Mark Kettenis
2017-12-19T13:41:17Z

> Date: Tue, 19 Dec 2017 14:12:02 +0100
> From: Maxime Ripard <maxime.ripard@free-electrons.com>
>
> On Tue, Dec 05, 2017 at 10:28:20AM +0000, Andre Przywara wrote:
> > So even though the actual u-boot.bin for 64-bit boards is still somewhat
> > below the limit (~480KB), adding the ATF image (~32KB) pushes it over
> > the edge. So since v2017.11 u-boot.itb is already too big for the
> > traditional MMC env location.
>
> So I've had a quick look about what could go possibly go away in our
> current armv8 config (using the pine64+ defconfig). Let me know if
> some are actually vitals:
>
> - FIT_ENABLE_SHA256_SUPPORT
> - CONSOLE_MUX
> - CMD_CRC32
> - CMD_LZMADEC
> - CMD_UNZIP
> - CMD_LOADB
> - CMD_LOADS
> - CMD_MISC (actually implementing the command sleep)
> - ISO_PARTITION (yes. For CDROMs.)
> - VIDEO_BPP8, VIDEO_BPP16
> - VIDEO_ANSI
> - SHA256
> - LZMA
>
> Removing those options make the u-boot.itb binary size going from
> 516kB to 478kB, making it functional again *and* allowing us to enable
> the DT overlays that seem way more important than any feature
> mentionned above (and bumps the size to 483kB).

So without CONFIG_CONSOLE_MUX, what is the behaviour when both serial
console and usb keyboard are present? Is the usb keyboard used when
it is plugged in but serial otherwise?

In any case, this would be just a stopgap measure for 2018.01 wouldn't
it? We really have to move to the FAT-based environment or just bite
the bullet and move the location of the environment. Personally I
don't cutsomize my environment beyond setting boot_targets. So losing
my old settings upon upgrade is not a big issue for me.