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

Tom
2009-08-12T22:17:52Z

Wolfgang Denk wrote:
> Dear Tom Rix,
>
> In message <1250091750-1525-2-git-send-email-Tom.Rix@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.