[PATCH master v2 2/2] mach-k3: enable mmu after reserved memory is unmapped

Anshul Dalal anshuld at ti.com
Wed May 20 04:49:03 CEST 2026


On Wed May 20, 2026 at 12:16 AM IST, Ilias Apalodimas wrote:
> On Mon, 18 May 2026 at 14:54, Anshul Dalal <anshuld at ti.com> wrote:
>>
>> Currently the sequence to enable caches for the A53/A72 core on K3
>> devices looks as follows:
>>
>>  1. Map entire DDR banks
>>  2. Setup page tables (done by mmu_setup)
>>  3. Enable MMU
>>  4. Unmap reserved-memory regions
>>  5. Enable caches
>>
>> However there is a brief period of execution between #3 and #4 where the
>> core can issue speculative accesses to the entire DDR space (including
>> the reserved-memory regions) despite the caches being disabled.
>>
>> A firewall exception is triggered whenever such speculative access is
>> made to secure DDR region of TFA or OP-TEE. This patch fixes the issue
>> by re-ordering the sequence as follows:
>>
>>  1. Map entire DDR banks
>>  2. Setup page tables
>>  3. Unmap reserved-memory regions
>>  4. Enable MMU
>>  5. Enable caches
>>
>> Fixes: f1c694b8fdde ("mach-k3: map all banks using mem_map_from_dram_banks")
>> Reported-by: Suhaas Joshi <s-joshi at ti.com>
>> Signed-off-by: Anshul Dalal <anshuld at ti.com>
>> ---
>>  arch/arm/mach-k3/common.c | 1 +
>>  1 file changed, 1 insertion(+)
>>
>> diff --git a/arch/arm/mach-k3/common.c b/arch/arm/mach-k3/common.c
>> index 396018b7a7a..9bebc0b1106 100644
>> --- a/arch/arm/mach-k3/common.c
>> +++ b/arch/arm/mach-k3/common.c
>> @@ -295,6 +295,7 @@ void enable_caches(void)
>>                                __func__, ret);
>>         }
>>
>> +       mmu_enable();
>
> You added mm_enable() on the previous patch a few lines above. I
> assumed it was to keep the code changes confined to one patch without
> changing the behavior, but you have to remove it now. You can even
> skip it entirely since dcache_enable() will do it, but I don't mind
> having the explicit call.

I indeed meant to remove the mmu_enable call added earlier, will fix in
the next revision.

Thanks for the review,
Anshul

>
> Cheers
> /Ilias
>
>>         icache_enable();
>>         dcache_enable();
>>  }
>>
>> --
>> 2.53.0
>>



More information about the U-Boot mailing list