|
|
|
@ -662,142 +662,140 @@ get_svr: |
|
|
|
|
blr |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*------------------------------------------------------------------------------- */ |
|
|
|
|
/* Function: in8 */ |
|
|
|
|
/* Description: Input 8 bits */ |
|
|
|
|
/*------------------------------------------------------------------------------- */ |
|
|
|
|
/* |
|
|
|
|
* Function: in8 |
|
|
|
|
* Description: Input 8 bits |
|
|
|
|
*/ |
|
|
|
|
.globl in8
|
|
|
|
|
in8: |
|
|
|
|
lbz r3,0x0000(r3) |
|
|
|
|
blr |
|
|
|
|
|
|
|
|
|
/*------------------------------------------------------------------------------- */ |
|
|
|
|
/* Function: out8 */ |
|
|
|
|
/* Description: Output 8 bits */ |
|
|
|
|
/*------------------------------------------------------------------------------- */ |
|
|
|
|
/* |
|
|
|
|
* Function: out8 |
|
|
|
|
* Description: Output 8 bits |
|
|
|
|
*/ |
|
|
|
|
.globl out8
|
|
|
|
|
out8: |
|
|
|
|
stb r4,0x0000(r3) |
|
|
|
|
blr |
|
|
|
|
|
|
|
|
|
/*------------------------------------------------------------------------------- */ |
|
|
|
|
/* Function: out16 */ |
|
|
|
|
/* Description: Output 16 bits */ |
|
|
|
|
/*------------------------------------------------------------------------------- */ |
|
|
|
|
/* |
|
|
|
|
* Function: out16 |
|
|
|
|
* Description: Output 16 bits |
|
|
|
|
*/ |
|
|
|
|
.globl out16
|
|
|
|
|
out16: |
|
|
|
|
sth r4,0x0000(r3) |
|
|
|
|
blr |
|
|
|
|
|
|
|
|
|
/*------------------------------------------------------------------------------- */ |
|
|
|
|
/* Function: out16r */ |
|
|
|
|
/* Description: Byte reverse and output 16 bits */ |
|
|
|
|
/*------------------------------------------------------------------------------- */ |
|
|
|
|
/* |
|
|
|
|
* Function: out16r |
|
|
|
|
* Description: Byte reverse and output 16 bits |
|
|
|
|
*/ |
|
|
|
|
.globl out16r
|
|
|
|
|
out16r: |
|
|
|
|
sthbrx r4,r0,r3 |
|
|
|
|
blr |
|
|
|
|
|
|
|
|
|
/*------------------------------------------------------------------------------- */ |
|
|
|
|
/* Function: out32 */ |
|
|
|
|
/* Description: Output 32 bits */ |
|
|
|
|
/*------------------------------------------------------------------------------- */ |
|
|
|
|
/* |
|
|
|
|
* Function: out32 |
|
|
|
|
* Description: Output 32 bits |
|
|
|
|
*/ |
|
|
|
|
.globl out32
|
|
|
|
|
out32: |
|
|
|
|
stw r4,0x0000(r3) |
|
|
|
|
blr |
|
|
|
|
|
|
|
|
|
/*------------------------------------------------------------------------------- */ |
|
|
|
|
/* Function: out32r */ |
|
|
|
|
/* Description: Byte reverse and output 32 bits */ |
|
|
|
|
/*------------------------------------------------------------------------------- */ |
|
|
|
|
/* |
|
|
|
|
* Function: out32r |
|
|
|
|
* Description: Byte reverse and output 32 bits |
|
|
|
|
*/ |
|
|
|
|
.globl out32r
|
|
|
|
|
out32r: |
|
|
|
|
stwbrx r4,r0,r3 |
|
|
|
|
blr |
|
|
|
|
|
|
|
|
|
/*------------------------------------------------------------------------------- */ |
|
|
|
|
/* Function: in16 */ |
|
|
|
|
/* Description: Input 16 bits */ |
|
|
|
|
/*------------------------------------------------------------------------------- */ |
|
|
|
|
/* |
|
|
|
|
* Function: in16 |
|
|
|
|
* Description: Input 16 bits |
|
|
|
|
*/ |
|
|
|
|
.globl in16
|
|
|
|
|
in16: |
|
|
|
|
lhz r3,0x0000(r3) |
|
|
|
|
blr |
|
|
|
|
|
|
|
|
|
/*------------------------------------------------------------------------------- */ |
|
|
|
|
/* Function: in16r */ |
|
|
|
|
/* Description: Input 16 bits and byte reverse */ |
|
|
|
|
/*------------------------------------------------------------------------------- */ |
|
|
|
|
/* |
|
|
|
|
* Function: in16r |
|
|
|
|
* Description: Input 16 bits and byte reverse |
|
|
|
|
*/ |
|
|
|
|
.globl in16r
|
|
|
|
|
in16r: |
|
|
|
|
lhbrx r3,r0,r3 |
|
|
|
|
blr |
|
|
|
|
|
|
|
|
|
/*------------------------------------------------------------------------------- */ |
|
|
|
|
/* Function: in32 */ |
|
|
|
|
/* Description: Input 32 bits */ |
|
|
|
|
/*------------------------------------------------------------------------------- */ |
|
|
|
|
/* |
|
|
|
|
* Function: in32 |
|
|
|
|
* Description: Input 32 bits |
|
|
|
|
*/ |
|
|
|
|
.globl in32
|
|
|
|
|
in32: |
|
|
|
|
lwz 3,0x0000(3) |
|
|
|
|
blr |
|
|
|
|
|
|
|
|
|
/*------------------------------------------------------------------------------- */ |
|
|
|
|
/* Function: in32r */ |
|
|
|
|
/* Description: Input 32 bits and byte reverse */ |
|
|
|
|
/*------------------------------------------------------------------------------- */ |
|
|
|
|
/* |
|
|
|
|
* Function: in32r |
|
|
|
|
* Description: Input 32 bits and byte reverse |
|
|
|
|
*/ |
|
|
|
|
.globl in32r
|
|
|
|
|
in32r: |
|
|
|
|
lwbrx r3,r0,r3 |
|
|
|
|
blr |
|
|
|
|
|
|
|
|
|
/*------------------------------------------------------------------------------- */ |
|
|
|
|
/* Function: ppcDcbf */ |
|
|
|
|
/* Description: Data Cache block flush */ |
|
|
|
|
/* Input: r3 = effective address */ |
|
|
|
|
/* Output: none. */ |
|
|
|
|
/*------------------------------------------------------------------------------- */ |
|
|
|
|
/* |
|
|
|
|
* Function: ppcDcbf |
|
|
|
|
* Description: Data Cache block flush |
|
|
|
|
* Input: r3 = effective address |
|
|
|
|
* Output: none. |
|
|
|
|
*/ |
|
|
|
|
.globl ppcDcbf
|
|
|
|
|
ppcDcbf: |
|
|
|
|
dcbf r0,r3 |
|
|
|
|
blr |
|
|
|
|
|
|
|
|
|
/*------------------------------------------------------------------------------- */ |
|
|
|
|
/* Function: ppcDcbi */ |
|
|
|
|
/* Description: Data Cache block Invalidate */ |
|
|
|
|
/* Input: r3 = effective address */ |
|
|
|
|
/* Output: none. */ |
|
|
|
|
/*------------------------------------------------------------------------------- */ |
|
|
|
|
/* |
|
|
|
|
* Function: ppcDcbi |
|
|
|
|
* Description: Data Cache block Invalidate |
|
|
|
|
* Input: r3 = effective address |
|
|
|
|
* Output: none. |
|
|
|
|
*/ |
|
|
|
|
.globl ppcDcbi
|
|
|
|
|
ppcDcbi: |
|
|
|
|
dcbi r0,r3 |
|
|
|
|
blr |
|
|
|
|
|
|
|
|
|
/*-------------------------------------------------------------------------- |
|
|
|
|
/* |
|
|
|
|
* Function: ppcDcbz |
|
|
|
|
* Description: Data Cache block zero. |
|
|
|
|
* Input: r3 = effective address |
|
|
|
|
* Output: none. |
|
|
|
|
*-------------------------------------------------------------------------- */ |
|
|
|
|
|
|
|
|
|
*/ |
|
|
|
|
.globl ppcDcbz
|
|
|
|
|
ppcDcbz: |
|
|
|
|
dcbz r0,r3 |
|
|
|
|
blr |
|
|
|
|
|
|
|
|
|
/*-------------------------------------------------------------------------- */ |
|
|
|
|
/* Function: ppcSync */ |
|
|
|
|
/* Description: Processor Synchronize */ |
|
|
|
|
/* Input: none. */ |
|
|
|
|
/* Output: none. */ |
|
|
|
|
/*-------------------------------------------------------------------------- */ |
|
|
|
|
/* |
|
|
|
|
* Function: ppcSync |
|
|
|
|
* Description: Processor Synchronize |
|
|
|
|
* Input: none. |
|
|
|
|
* Output: none. |
|
|
|
|
*/ |
|
|
|
|
.globl ppcSync
|
|
|
|
|
ppcSync: |
|
|
|
|
sync |
|
|
|
|
blr |
|
|
|
|
|
|
|
|
|
/*-----------------------------------------------------------------------*/ |
|
|
|
|
/* |
|
|
|
|
* void relocate_code (addr_sp, gd, addr_moni) |
|
|
|
|
* |
|
|
|
@ -1205,7 +1203,6 @@ secondary_cpu_setup: |
|
|
|
|
bl icache_enable |
|
|
|
|
sync |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* TBEN in HID0 */ |
|
|
|
|
mfspr r4, HID0 |
|
|
|
|
oris r4, r4, 0x0400 |
|
|
|
|