diff --git a/stand/powerpc/kboot/host_syscall.S b/stand/powerpc/kboot/host_syscall.S index dc236afdeda7..a5556aa1b2dc 100644 --- a/stand/powerpc/kboot/host_syscall.S +++ b/stand/powerpc/kboot/host_syscall.S @@ -1,97 +1,88 @@ /* * * $FreeBSD$ */ #include ENTRY(host_read) li %r0, 3 # SYS_read sc bso 1f blr 1: li %r3, 0 blr END(host_read) ENTRY(host_write) li %r0, 4 # SYS_write sc blr END(host_write) -ENTRY(host_seek) - mr %r4,%r5 - mr %r5,%r6 - mr %r6,%r7 - li %r0, 140 # SYS_llseek - sc - blr -END(host_seek) - ENTRY(host_llseek) li %r0, 140 # SYS_llseek sc blr END(host_llseek) ENTRY(host_open) li %r0, 5 # SYS_open sc bso 1f blr 1: li %r3, 0 blr END(host_open) ENTRY(host_close) li %r0, 6 # SYS_close sc blr END(host_close) ENTRY(host_mmap) li %r0, 90 # SYS_mmap sc blr END(host_mmap) ENTRY(host_uname) li %r0, 122 # SYS_uname sc blr END(host_uname) ENTRY(host_gettimeofday) li %r0, 78 # SYS_gettimeofday sc blr END(host_gettimeofday) ENTRY(host_select) li %r0, 142 # SYS_select sc blr END(host_select) ENTRY(kexec_load) lis %r6,21 # KEXEC_ARCH_PPC64 li %r0,268 # __NR_kexec_load sc blr END(kexec_load) ENTRY(host_reboot) li %r0,88 # SYS_reboot sc blr END(host_reboot) ENTRY(host_getdents) li %r0,141 # SYS_getdents sc blr END(host_getdents) diff --git a/stand/powerpc/kboot/host_syscall.h b/stand/powerpc/kboot/host_syscall.h index 50b0725be675..60b006e5dba4 100644 --- a/stand/powerpc/kboot/host_syscall.h +++ b/stand/powerpc/kboot/host_syscall.h @@ -1,60 +1,59 @@ /*- * Copyright (C) 2014 Nathan Whitehorn * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL TOOLS GMBH BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * * $FreeBSD$ */ #ifndef _HOST_SYSCALL_H #define _HOST_SYSCALL_H #include ssize_t host_read(int fd, void *buf, size_t nbyte); ssize_t host_write(int fd, const void *buf, size_t nbyte); -ssize_t host_seek(int fd, int64_t offset, int whence); int host_open(const char *path, int flags, int mode); ssize_t host_llseek(int fd, int32_t offset_high, int32_t offset_lo, uint64_t *result, int whence); int host_close(int fd); void *host_mmap(void *addr, size_t len, int prot, int flags, int fd, int); #define host_getmem(size) host_mmap(0, size, 3 /* RW */, 0x22 /* ANON */, -1, 0); struct old_utsname { char sysname[65]; char nodename[65]; char release[65]; char version[65]; char machine[65]; }; int host_uname(struct old_utsname *); struct host_timeval { int tv_sec; int tv_usec; }; int host_gettimeofday(struct host_timeval *a, void *b); int host_select(int nfds, long *readfds, long *writefds, long *exceptfds, struct host_timeval *timeout); int kexec_load(uint32_t start, int nsegs, uint32_t segs); int host_reboot(int, int, int, uint32_t); int host_getdents(int fd, void *dirp, int count); #endif