u-boot-brain/arch
Lokesh Vutla e938b22521 arm: K3: Clean and invalidate Linux Image before jumping to Linux
U-Boot cleans and invalidate L1 and L2 caches before jumping to Linux
by set/way in cleanup_before_linux(). Additionally there is a custom
hook provided to clean and invalidate L3 cache.

Unfortunately on K3 devices(having a coherent architecture), there is no
easy way to quickly clean all the cache lines for L3. The entire address
range needs to be cleaned and invalidated by Virtual Address. This can
be implemented using the L3 custom hook but it take lot of time to clean
the entire address range. In the interest of boot time this might not be
a viable solution.

The best hit is to make sure the loaded Linux image is flushed so that
the entire image is written to DDR from L3. When Linux starts running with
caches disabled the full image is available from DDR.

Reported-by: Andrew F. Davis <afd@ti.com>
Reported-by: Faiz Abbas <faiz_abbas@ti.com>
Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
2019-10-25 17:33:21 -04:00
..
arc NET: DW: fix regression for ARC boards 2019-10-07 13:23:49 -04:00
arm arm: K3: Clean and invalidate Linux Image before jumping to Linux 2019-10-25 17:33:21 -04:00
m68k env: Drop environment.h header file where not needed 2019-08-11 16:43:41 -04:00
microblaze microblaze: Setup initrd_high and fdt_high at run time 2019-10-08 09:55:11 +02:00
mips env: Move env_init() to env.h 2019-08-11 16:43:41 -04:00
nds32 env: Drop environment.h header file where not needed 2019-08-11 16:43:41 -04:00
nios2 .gitignore: move *.dtb and *.dtb.S patterns to the top-level .gitignore 2018-06-18 14:43:12 -04:00
powerpc MPC8548: dts: Added PCIe DT node 2019-08-28 13:47:47 +05:30
riscv RISC-V: Align boot image header with Linux 2019-10-18 09:04:19 +08:00
sandbox sandbox: fix build error due to missing struct udevice definition 2019-10-15 08:40:03 -06:00
sh sh: r2dplus: Fix missing PCI range 2019-09-14 21:28:55 +02:00
x86 binman: x86: Separate out 16-bit reset and init code 2019-10-15 08:40:02 -06:00
xtensa env: Move env_get() to env.h 2019-08-11 16:43:41 -04:00
.gitignore
Kconfig sh: r2dplus: Enable OF control 2019-09-02 17:38:43 +02:00