blob: 3edb13f946690a21cb1168d982ea7ad359c84bc1 [file] [log] [blame]
Grant Likelyd2477b52008-03-19 04:07:43 +11001#include "ppc_asm.h"
2
3 .text
4 .global _zimage_start
5_zimage_start:
6
7 /* PPC errata 213: needed by Virtex-4 FX */
8 mfccr0 0
9 oris 0,0,0x50000000@h
10 mtccr0 0
11
12 /*
13 * Invalidate the data cache if the data cache is turned off.
14 * - The 405 core does not invalidate the data cache on power-up
15 * or reset but does turn off the data cache. We cannot assume
16 * that the cache contents are valid.
17 * - If the data cache is turned on this must have been done by
18 * a bootloader and we assume that the cache contents are
19 * valid.
20 */
21 mfdccr r9
22 cmplwi r9,0
23 bne 2f
24 lis r9,0
25 li r8,256
26 mtctr r8
271: dccci r0,r9
28 addi r9,r9,0x20
29 bdnz 1b
302: b _zimage_start_lib