reboot not working on linux-2.6.37 for ARMv7
Russell King - ARM Linux
linux at arm.linux.org.uk
Fri Feb 11 07:03:05 EST 2011
On Fri, Feb 11, 2011 at 05:01:06PM +0530, shiraz hashim wrote:
> Hi,
>
> I am using linux-2.6.37 on our ARM Cortex A9 (dual core) SMP platform
> with PL310 as Level 2 cache. We observe that on reboot the control
> is not able to reach to the arch_reset.
>
> The problem happens when L1 cache is disabled in
> arm_machine_restart, through cpu_proc_fin() and L2 cache is flushed.
Where's the L2 cache flush? The sequence is:
/* Clean and invalidate caches */
flush_cache_all();
/* Turn off caching */
cpu_proc_fin();
/* Push out any further dirty data, and ensure cache is empty */
flush_cache_all();
and flush_cache_all() calls v7_flush_kern_cache_all() in
arch/arm/mm/cache-v7.S.
I do hope you're not modifying flush_cache_all() to also call the L2
cache functions because that's wrong.
More information about the linux-arm-kernel
mailing list