diff options
Diffstat (limited to 'qemu/roms/SLOF/lib/libhvcall/hvcall.S')
-rw-r--r-- | qemu/roms/SLOF/lib/libhvcall/hvcall.S | 134 |
1 files changed, 0 insertions, 134 deletions
diff --git a/qemu/roms/SLOF/lib/libhvcall/hvcall.S b/qemu/roms/SLOF/lib/libhvcall/hvcall.S deleted file mode 100644 index 92cf22e4c..000000000 --- a/qemu/roms/SLOF/lib/libhvcall/hvcall.S +++ /dev/null @@ -1,134 +0,0 @@ -#define _ASM -#define __ASSEMBLY__ -#include "macros.h" -#include "libhvcall.h" -#include <termctrl.h> -#include <product.h> - -#define HVCALL .long 0x44000022 - .text - .align 3 - -ENTRY(get_print_banner) - LOAD32(r4, print_version) - LOAD32(r5, print_version_end) - std r4,0(r3) - std r5,8(r3) - blr - -ENTRY(hv_generic) - HVCALL - blr - -/* r3 = char, r4 = hvtermno */ -ENTRY(hv_putchar) - sldi r6,r3,(24+32) - li r3,H_PUT_TERM_CHAR - li r5,1 - HVCALL - blr - -/* r3 = hvtermno */ -ENTRY(hv_getchar) - mflr r10 - bl .hv_haschar - mtlr r10 - cmpwi cr0,r3,0 - beqlr - lis r9,inbuf@h - ori r9,r9,inbuf@l - lwz r4,20(r9) - lbzx r3,r4,r9 - addi r4,r4,1 - stw r4,20(r9) - blr - -/* r3 = hvtermno */ -ENTRY(hv_haschar) - mr r4,r3 - li r3,-1 - lis r9,inbuf@h - ori r9,r9,inbuf@l - lwz r5,16(r9) - lwz r6,20(r9) - cmplw cr0,r5,r6 - bnelr - li r3,H_GET_TERM_CHAR - HVCALL - lis r9,inbuf@h - ori r9,r9,inbuf@l - stw r4,16(r9) - li r3,0 - stw r3,20(r9) - cmplwi cr0,r4,0 - beqlr - li r3,-1 - std r5,0(r9) - std r6,8(r9) - blr - -ENTRY(hv_send_crq) - ld r5,0(r4) - ld r6,8(r4) - mr r4,r3 - li r3,H_SEND_CRQ - HVCALL - blr - -ENTRY(hv_send_logical_lan) - li r11,0 /* no continue token for now */ - mr r10,r9 - mr r9,r8 - mr r8,r7 - mr r7,r6 - mr r6,r5 - mr r5,r4 - mr r4,r3 - li r3,H_SEND_LOGICAL_LAN - HVCALL - blr - -ENTRY(hv_logical_ci_load) - mr r5,r4 - mr r4,r3 - li r3,H_LOGICAL_CI_LOAD - HVCALL - cmpdi cr0,r3,0 - mr r3,r4 - beqlr - li r3,-1 - blr - -ENTRY(hv_logical_ci_store) - mr r6,r5 - mr r5,r4 - mr r4,r3 - li r3,H_LOGICAL_CI_STORE - HVCALL - blr - -ENTRY(hv_logical_memop) - mr r8,r7 - mr r7,r6 - mr r6,r5 - mr r5,r4 - mr r4,r3 - lis r3,KVMPPC_H_LOGICAL_MEMOP@h - ori r3,r3,KVMPPC_H_LOGICAL_MEMOP@l - HVCALL - blr - -ENTRY(hv_cas) - mr r6,r5 - mr r5,r4 - mr r4,r3 - lis r3,KVMPPC_H_CAS@h - ori r3,r3,KVMPPC_H_CAS@l - HVCALL - blr - - .section ".bss" -inbuf: .space 16 -inlen: .space 4 -inpos: .space 4 - .text |