[U-Boot] [PATCH] OMAP3 Move cache routines to cache.S

Tom Tom.Rix at windriver.com
Thu Aug 13 00:17:52 CEST 2009


Wolfgang Denk wrote:
> Dear Tom Rix,
>
> In message <1250091750-1525-2-git-send-email-Tom.Rix at windriver.com> you wrote:
>   
>> v7_flush_dcache_all, because it depends on omap ROM code is not
>> generic.  Rename the function to 'invalidate_dcache' and move it
>> to the omap cpu directory.
>>
>> Collect the other omap cache routines l2_cache_enable and
>> l2_cache_disable with invalide_dcache into cache.S.  This
>> means removing the old cache.c file that contained l2_cache_enable
>> and l2_cache_disable.
>>
>> The conversion from cache.c to cache.S was done most through
>> disassembling the uboot binary.  The only significant change was
>> to change the comparision for the return of get_cpu_rev from
>>     
>
> May I ask what the motivation for this change was? Normally we try to
> move as much code as possible to C, i. e. go the opposite way.
>
>   
Originally this started out as just a simple patch to kill some
compiler warnings.

 From Jean's requests it grew into moving the invalidate_dcache
out of the arm_cortexa8 start.S to an omap3.  To collecting the
other cache functions all together in a single cache.S file.

The part of the patch that killed the compiler warning has,
I believe, you have integrated with
commit 8e5e9b940cdede0debe528cdd7edccccbb3ebf2a

Here are the last emails on this patch

On 21:57 Mon 06 Jul     , Tom wrote:

> > Woodruff, Richard wrote:
>   
>>> > >>From: u-boot-bounces at lists.denx.de [mailto:u-boot-bounces at lists.denx.de] On
>>> > >>Behalf Of Tom Rix
>>> > >>Sent: Monday, July 06, 2009 11:48 AM
>>>       
>> > >
>>     
>>> > >>Since there is only one version of flushing the dcache for
>>> > >>arm_cortex8, rename v7_flush_dcache_all to the the generic
>>> > >>name flush_dcache.  Because the function is intended for
>>> > >>only omap3 boards, move the function to the new file
>>> > >>cache_flush.S.
>>>       
>> > >
>> > >Minor point is file name or function name might change to be more reflective of what it does (cache_ops.S, and invalidate_dcache()).  As there is not really any 'flush' (cleaning out dirty entries to main memory).
>> > >
>>     
> > I will change the name to cache_ops.S
>   
I prefer cache.S

> > flush_dcache was chosen to match other boards/cpu's and one of the
> > main reasons for this change.  If Jean is ok changing flush_dcache
> > to invalidate_dcache,  I will make that change too.
>   
invalidate_dcache is fine for me

Best Regards,
J.


On 15:44 Tue 07 Jul     , Tom wrote:

> > Jean-Christophe PLAGNIOL-VILLARD wrote:
>   
>>> > >>
>>> > >>I will change the name to cache_ops.S
>>>       
>> > >I prefer cache.S
>>     
> > cache.c is already taken.
>   
and contain nearly only assembly
so join everythink in cache.S will make more sense

Best Regards,
J.




More information about the U-Boot mailing list