This series tries to solve three issues we currently have on Allwinner boards: - The DRAM sizing routine can only cope with power-of-two sized DRAM. - The DRAM sizing routine steps through all DRAM, possibly hitting secure memory. - The SPL header versioning is quite strict and tends to break every time we need to update it.
So I thought about introducing something along the lines of semantic versioning[1], where we can add backwards-compatible changes to the SPL header without breaking every tool. This is introduced in the first patch. The second patch does some refactoring, so that the third patch can use the newly gained freedom to store the DRAM size. The SPL knows the DRAM size very well, so we store this in the SPL header, so that U-Boot proper can pick it up from there. This saves the call to get_ram_size() with its deficiencies. More information in the respective commit messages. I understand that this versioning solution is not fully future-proof, but we have only one byte for the version, and I just wanted to start discussion on this. There is a corresponding patch for sunxi-tools as well I am posting shortly. [1] https://semver.org Cheers, Andre. Andre Przywara (3): sunxi: Extend SPL header versioning sunxi: board.c: refactor SPL header checks sunxi: store DRAM size in SPL header arch/arm/include/asm/arch-sunxi/spl.h | 22 ++++++++---- board/sunxi/board.c | 66 ++++++++++++++++++++++++++++------- 2 files changed, 70 insertions(+), 18 deletions(-) -- 2.14.1 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot