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
271:	dccci	r0,r9
28	addi	r9,r9,0x20
29	bdnz	1b
302:	b	_zimage_start_lib
31