• Ard Biesheuvel's avatar
    ARM: 9059/1: cache-v7: get rid of mini-stack · 95731b8e
    Ard Biesheuvel authored
    Now that we have reduced the number of registers that we need to
    preserve when calling v7_invalidate_l1 from the boot code, we can use
    scratch registers to preserve the remaining ones, and get rid of the
    mini stack entirely. This works around any issues regarding cache
    behavior in relation to the uncached accesses to this memory, which is
    hard to get right in the general case (i.e., both bare metal and under
    virtualization)
    
    While at it, switch v7_invalidate_l1 to using ip as a scratch register
    instead of r4. This makes the function AAPCS compliant, and removes the
    need to stash r4 in ip across the call.
    Acked-by: default avatarNicolas Pitre <nico@fluxnic.net>
    Signed-off-by: default avatarArd Biesheuvel <ardb@kernel.org>
    Signed-off-by: default avatarRussell King <rmk+kernel@armlinux.org.uk>
    95731b8e
proc-v7.S 24.7 KB