diff options
author | Grant Likely <grant.likely@secretlab.ca> | 2008-03-18 13:07:43 -0400 |
---|---|---|
committer | Josh Boyer <jwboyer@linux.vnet.ibm.com> | 2008-04-02 21:36:11 -0400 |
commit | d2477b5cc8ca95b8c15133ffbbebf0bd9783f560 (patch) | |
tree | bd0dd171e8614634b97fc3e02d22fe0152d308b4 /arch/powerpc/boot/virtex405-head.S | |
parent | 19a74263f49dce2b96e2213f7f4c029cedbbf0ce (diff) |
[POWERPC] bootwrapper: Add a firmware-independent simpleboot target.
This target produces a flat binary rather than an ELF file,
fixes the entry point at the beginning of the image, and takes
a complete device tree with no fixups needed.
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Josh Boyer <jwboyer@linux.vnet.ibm.com>
Diffstat (limited to 'arch/powerpc/boot/virtex405-head.S')
-rw-r--r-- | arch/powerpc/boot/virtex405-head.S | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/arch/powerpc/boot/virtex405-head.S b/arch/powerpc/boot/virtex405-head.S new file mode 100644 index 000000000000..3edb13f94669 --- /dev/null +++ b/arch/powerpc/boot/virtex405-head.S | |||
@@ -0,0 +1,30 @@ | |||
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 | ||