u-boot-brain/arch/arm/mach-sunxi
Andre Przywara 067e0b9684 sunxi: Allow booting from 128KB SD/eMMC offset
On modern Allwinner SoCs (tested: H2+, A64, H5, H6) the BootROM can
actually load the SPL also from sector 256 (128KB) of an SD card or eMMC
chip. For more details, see [1].
In this case the boot source indicator (written at offset 0x28 of SRAM A1)
has bit 4 set, so it's 0x10 for SD card and 0x12 for eMMC.

Add those new values to the existing boot source check to allow booting
the SPL from those "high" disk offsets as well. For this to work, the
value of CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR needs to be adjusted,
for instance to 0x140 (right after the high SPL). Doing this dynamically
sounds desirable, but looks nasty to implement.

[1] https://groups.google.com/forum/#!topic/linux-sunxi/MaiijyaAFjk

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Acked-by: Maxime Ripard <maxime.ripard@bootlin.com>
2019-04-10 15:34:32 +05:30
..
dram_timings sunxi: add LPDDR3 timing from stock boot0 2017-06-08 22:37:55 +05:30
board.c sunxi: Allow booting from 128KB SD/eMMC offset 2019-04-10 15:34:32 +05:30
clock_sun4i.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
clock_sun6i.c sunxi: use 6MHz PLL_VIDEO step for DE2 for higher resolution LCD 2018-11-13 22:17:06 +05:30
clock_sun8i_a83t.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
clock_sun9i.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
clock_sun50i_h6.c sunxi: add clock code for H6 2018-07-31 11:38:13 +05:30
clock.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
cpu_info.c sunxi: add support for Allwinner H6 SoC 2018-07-31 11:38:13 +05:30
dram_helpers.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
dram_sun4i.c sunxi: Fix typos of spelling Allwinner 2018-10-24 22:02:15 +05:30
dram_sun6i.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
dram_sun8i_a23.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
dram_sun8i_a33.c sunxi: dram_sun8i: Fix A33 memory initialization 2019-04-10 15:32:59 +05:30
dram_sun8i_a83t.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
dram_sun9i.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
dram_sun50i_h6.c sunxi: fix DRAM gate/reset sequence of H6 2018-10-10 12:04:07 +05:30
dram_sunxi_dw.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
gtbus_sun9i.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
Kconfig arm: sunxi: Enable DRAM ODT by default on H3/H5 2019-04-10 15:34:32 +05:30
Makefile sunxi: add DRAM support to H6 2018-07-31 11:38:13 +05:30
p2wi.c sunxi: Fix typos of spelling Allwinner 2018-10-24 22:02:15 +05:30
pinmux.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
pmic_bus.c sunxi: pmic_bus: Decrease boot time by not writing duplicate data 2018-12-07 22:24:33 +05:30
prcm.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
rmr_switch.S sunxi: change RMR64's RVBAR address for H6 2018-07-31 11:38:13 +05:30
rsb.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00
spl_spi_sunxi.c SPDX: Convert all of our single license tags to Linux Kernel style 2018-05-07 09:34:12 -04:00