Skip to content

Commit

Permalink
tile: simplify code referencing hypervisor API addresses
Browse files Browse the repository at this point in the history
There's no need to make up new ways of computing the addresses
of the Tilera hypervisor APIs; just use the standard method
of relying on the symbols to provide the addresses.

Signed-off-by: Chris Metcalf <[email protected]>
  • Loading branch information
cmetcalf-tilera committed Sep 3, 2013
1 parent 850a452 commit 43b7f2f
Showing 1 changed file with 8 additions and 17 deletions.
25 changes: 8 additions & 17 deletions arch/tile/kernel/relocate_kernel_32.S
Original file line number Diff line number Diff line change
Expand Up @@ -20,15 +20,6 @@
#include <asm/page.h>
#include <hv/hypervisor.h>

#define ___hvb MEM_SV_INTRPT + HV_GLUE_START_CPA

#define ___hv_dispatch(f) (___hvb + (HV_DISPATCH_ENTRY_SIZE * f))

#define ___hv_console_putc ___hv_dispatch(HV_DISPATCH_CONSOLE_PUTC)
#define ___hv_halt ___hv_dispatch(HV_DISPATCH_HALT)
#define ___hv_reexec ___hv_dispatch(HV_DISPATCH_REEXEC)
#define ___hv_flush_remote ___hv_dispatch(HV_DISPATCH_FLUSH_REMOTE)

#undef RELOCATE_NEW_KERNEL_VERBOSE

STD_ENTRY(relocate_new_kernel)
Expand All @@ -43,8 +34,8 @@ STD_ENTRY(relocate_new_kernel)
addi sp, sp, -8
/* we now have a stack (whether we need one or not) */

moveli r40, lo16(___hv_console_putc)
auli r40, r40, ha16(___hv_console_putc)
moveli r40, lo16(hv_console_putc)
auli r40, r40, ha16(hv_console_putc)

#ifdef RELOCATE_NEW_KERNEL_VERBOSE
moveli r0, 'r'
Expand Down Expand Up @@ -114,11 +105,11 @@ STD_ENTRY(relocate_new_kernel)
}
{
move r8, zero /* asids */
moveli r20, lo16(___hv_flush_remote)
moveli r20, lo16(hv_flush_remote)
}
{
move r9, zero /* asidcount */
auli r20, r20, ha16(___hv_flush_remote)
auli r20, r20, ha16(hv_flush_remote)
}

jalr r20
Expand Down Expand Up @@ -175,8 +166,8 @@ STD_ENTRY(relocate_new_kernel)
move r0, r32
moveli r1, 0 /* arg to hv_reexec is 64 bits */

moveli r41, lo16(___hv_reexec)
auli r41, r41, ha16(___hv_reexec)
moveli r41, lo16(hv_reexec)
auli r41, r41, ha16(hv_reexec)

jalr r41

Expand Down Expand Up @@ -267,8 +258,8 @@ STD_ENTRY(relocate_new_kernel)
moveli r0, '\n'
jalr r40
.Lhalt:
moveli r41, lo16(___hv_halt)
auli r41, r41, ha16(___hv_halt)
moveli r41, lo16(hv_halt)
auli r41, r41, ha16(hv_halt)

jalr r41
STD_ENDPROC(relocate_new_kernel)
Expand Down

0 comments on commit 43b7f2f

Please sign in to comment.