#ifndef _PPC64_PPC_ASM_H
#define _PPC64_PPC_ASM_H
#define cr0 0
#define cr1 1
#define cr2 2
#define cr3 3
#define cr4 4
#define cr5 5
#define cr6 6
#define cr7 7
#define r0 0
#define r1 1
#define r2 2
#define r3 3
#define r4 4
#define r5 5
#define r6 6
#define r7 7
#define r8 8
#define r9 9
#define r10 10
#define r11 11
#define r12 12
#define r13 13
#define r14 14
#define r15 15
#define r16 16
#define r17 17
#define r18 18
#define r19 19
#define r20 20
#define r21 21
#define r22 22
#define r23 23
#define r24 24
#define r25 25
#define r26 26
#define r27 27
#define r28 28
#define r29 29
#define r30 30
#define r31 31
#define SPRN_TBRL 268
#define SPRN_TBRU 269
#define SPRN_HSRR0 0x13A
#define SPRN_HSRR1 0x13B
#define MSR_LE 0x0000000000000001
#define FIXUP_ENDIAN \
tdi 0,0,0x48; \
b $+44; \
.long 0xa600607d; \
.long 0x01006b69; \
.long 0x00004039; \
.long 0x6401417d; \
.long 0x05009f42; \
.long 0xa602487d; \
.long 0x14004a39; \
.long 0xa6035a7d; \
.long 0xa6037b7d; \
.long 0x2400004c
#ifdef CONFIG_PPC_8xx
#define MFTBL(dest) mftb dest
#define MFTBU(dest) mftbu dest
#else
#define MFTBL(dest) mfspr dest, SPRN_TBRL
#define MFTBU(dest) mfspr dest, SPRN_TBRU
#endif
#ifdef CONFIG_PPC64_BOOT_WRAPPER
#define LOAD_REG_ADDR(reg,name) \
addis reg,r2,name@toc@ha; \
addi reg,reg,name@toc@l
#else
#define LOAD_REG_ADDR(reg,name) \
lis reg,name@ha; \
addi reg,reg,name@l
#endif
#endif