* [U-Boot] Why Cache flush required in some ARM Cortex boards to enable D cache?
@ 2009-09-09 3:23 akshay ts
2009-09-09 18:44 ` Dirk Behme
0 siblings, 1 reply; 3+ messages in thread
From: akshay ts @ 2009-09-09 3:23 UTC (permalink / raw)
To: u-boot
Hi,
I ran into problems when i enabled D cache. But later i found out that cache flush was required before enabling D Cache. What i dont understand is why is it required?. Since earlier D cache is never enabled and so nothing should be present in the cache.
Flushing is only required during context switch/may be interrupts?.
I tried with omap3 board with Arm cortex A8 on it, it worked without a cache flush. I tried with C110 with Arm cortex A8 on it, i had to do a cache flush to make D cache work.
Also if possible please tell me what is a GP device, OMAP3 (CONTROL_STATUS register) seems to be a GP device and hence they are skipping cache flush. I dont know what is this.
Warm Regards,
Akshay
Love Cricket? Check out live scores, photos, video highlights and more. Click here http://cricket.yahoo.com
^ permalink raw reply [flat|nested] 3+ messages in thread* [U-Boot] Why Cache flush required in some ARM Cortex boards to enable D cache?
2009-09-09 3:23 [U-Boot] Why Cache flush required in some ARM Cortex boards to enable D cache? akshay ts
@ 2009-09-09 18:44 ` Dirk Behme
2009-09-11 4:29 ` akshay ts
0 siblings, 1 reply; 3+ messages in thread
From: Dirk Behme @ 2009-09-09 18:44 UTC (permalink / raw)
To: u-boot
akshay ts wrote:
> Hi,
> I ran into problems when i enabled D cache. But later i found out that cache flush was required before enabling D Cache.
Flush or invalidate? See below...
> What i dont understand is why is it required?. Since earlier D cache is never enabled and so nothing should be present in the cache.
> Flushing is only required during context switch/may be interrupts?.
> I tried with omap3 board with Arm cortex A8 on it, it worked without a cache flush. I tried with C110 with Arm cortex A8 on it, i had to do a cache flush to make D cache work.
There was some info on this at Linux ARM kernel mailing list:
http://www.spinics.net/lists/arm-kernel/msg71406.html
Seems that it depends on how silicon (reset?) is implemented.
> Also if possible please tell me what is a GP device, OMAP3 (CONTROL_STATUS register) seems to be a GP device and hence they are skipping cache flush. I dont know what is this.
GP is "general purpose". Anybody might correct me, but I think these
are OMAPs where (HW) security features you might need in mobile
applications are disabled. So depending if you buy low quantity OMAPs
for general purpose use (I think called "catalog products") or in
large OEM quantities you might get OMAPs with different (security)
features enabled in HW or not. BeagleBoard uses GP devices.
Best regards
Dirk
^ permalink raw reply [flat|nested] 3+ messages in thread
* [U-Boot] Why Cache flush required in some ARM Cortex boards to enable D cache?
2009-09-09 18:44 ` Dirk Behme
@ 2009-09-11 4:29 ` akshay ts
0 siblings, 0 replies; 3+ messages in thread
From: akshay ts @ 2009-09-11 4:29 UTC (permalink / raw)
To: u-boot
Hi Dirk,
Thanks i got some useful information.
Warm Regards,
Akshay
--- On Thu, 10/9/09, Dirk Behme <dirk.behme@googlemail.com> wrote:
> From: Dirk Behme <dirk.behme@googlemail.com>
> Subject: Re: [U-Boot] Why Cache flush required in some ARM Cortex boards to enable D cache?
> To: "akshay ts" <takshays@yahoo.co.in>
> Cc: u-boot at lists.denx.de
> Date: Thursday, 10 September, 2009, 12:14 AM
> akshay ts wrote:
> > Hi,
> > I ran into problems when i enabled D cache. But later
> i found out that cache flush was required before enabling D
> Cache.
>
> Flush or invalidate? See below...
>
> > What i dont understand is why is it required?. Since
> earlier D cache is never enabled and so nothing should be
> present in the cache. Flushing is only required during
> context switch/may be interrupts?. I tried with omap3 board
> with Arm cortex A8 on it, it worked without a cache flush. I
> tried with C110 with Arm cortex A8 on it, i had to do a
> cache flush to make D cache work.
>
> There was some info on this at Linux ARM kernel mailing
> list:
>
> http://www.spinics.net/lists/arm-kernel/msg71406.html
>
> Seems that it depends on how silicon (reset?) is
> implemented.
>
> > Also if possible please tell me what is a GP device,
> OMAP3 (CONTROL_STATUS register) seems to be a GP device and
> hence they are skipping cache flush. I dont know what is
> this.
>
> GP is "general purpose". Anybody might correct me, but I
> think these are OMAPs where (HW) security features you might
> need in mobile applications are disabled. So depending if
> you buy low quantity OMAPs for general purpose use (I think
> called "catalog products") or in large OEM quantities you
> might get OMAPs with different (security) features enabled
> in HW or not. BeagleBoard uses GP devices.
>
> Best regards
>
> Dirk
>
See the Web's breaking stories, chosen by people like you. Check out Yahoo! Buzz. http://in.buzz.yahoo.com/
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2009-09-11 4:29 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-09-09 3:23 [U-Boot] Why Cache flush required in some ARM Cortex boards to enable D cache? akshay ts
2009-09-09 18:44 ` Dirk Behme
2009-09-11 4:29 ` akshay ts
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox