Commit | Line | Data |
---|---|---|
d2477b5c GL |
1 | #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 | |
27 | 1: dccci r0,r9 | |
28 | addi r9,r9,0x20 | |
29 | bdnz 1b | |
30 | 2: b _zimage_start_lib |