[U-Boot] [PATCH 3/3] armv8/cache: Change cache invalidate and flush function

York Sun yorksun at freescale.com
Thu Feb 13 18:29:08 CET 2014


On 02/12/2014 08:04 PM, FengHua wrote:
> 
> 
> 
>> -----Original Messages-----
>> From: "York Sun" <yorksun at freescale.com>
>> Sent Time: 2014-02-11 05:55:54 (Tuesday)
>> To: albert.u.boot at aribaud.net
>> Cc: scottwood at freescale.com, "York Sun" <yorksun at freescale.com>, "David Feng" <fenghua at phytium.com.cn>
>> Subject: [PATCH 3/3] armv8/cache: Change cache invalidate and flush function
>>

<snip>

>> diff --git a/arch/arm/cpu/armv8/start.S b/arch/arm/cpu/armv8/start.S
>> index e70c51d..7b9ac21 100644
>> --- a/arch/arm/cpu/armv8/start.S
>> +++ b/arch/arm/cpu/armv8/start.S
>> @@ -65,9 +65,9 @@ reset:
>>  0:
>>  
>>  	/* Cache/BPB/TLB Invalidate */
>> -	bl	__asm_flush_dcache_all		/* dCache clean&invalidate */
>>  	bl	__asm_invalidate_icache_all	/* iCache invalidate */
>>  	bl	__asm_invalidate_tlb_all	/* invalidate TLBs */
> How about remove the icache and tlb invalidate operations?

We can move the calling of __asm_invalidate_tlb_all to before mmu_setup, and
move calling __asm_invalidate_icache_all to before icache_enable. But leaving
them here makes sense as the initial setup procedure. And more important, it
won't get lost. These functions run very fast, not like invalidating dcache.

York




More information about the U-Boot mailing list