Fri Feb 28 05:31:38 2014 UTC ()
Make this work.


(matt)
diff -r1.7 -r1.8 src/sys/arch/powerpc/include/netbsd32_machdep.h

cvs diff -r1.7 -r1.8 src/sys/arch/powerpc/include/netbsd32_machdep.h (expand / switch to unified diff)

--- src/sys/arch/powerpc/include/netbsd32_machdep.h 2011/06/20 06:21:45 1.7
+++ src/sys/arch/powerpc/include/netbsd32_machdep.h 2014/02/28 05:31:38 1.8
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1/* $NetBSD: netbsd32_machdep.h,v 1.7 2011/06/20 06:21:45 matt Exp $ */ 1/* $NetBSD: netbsd32_machdep.h,v 1.8 2014/02/28 05:31:38 matt Exp $ */
2 2
3/* 3/*
4 * Copyright (c) 1998, 2001 Matthew R. Green 4 * Copyright (c) 1998, 2001 Matthew R. Green
5 * All rights reserved. 5 * All rights reserved.
6 * 6 *
7 * Redistribution and use in source and binary forms, with or without 7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions 8 * modification, are permitted provided that the following conditions
9 * are met: 9 * are met:
10 * 1. Redistributions of source code must retain the above copyright 10 * 1. Redistributions of source code must retain the above copyright
11 * notice, this list of conditions and the following disclaimer. 11 * notice, this list of conditions and the following disclaimer.
12 * 2. Redistributions in binary form must reproduce the above copyright 12 * 2. Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the 13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the distribution. 14 * documentation and/or other materials provided with the distribution.
@@ -22,58 +22,52 @@ @@ -22,58 +22,52 @@
22 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 22 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
23 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 23 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
24 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 24 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 25 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26 * SUCH DAMAGE. 26 * SUCH DAMAGE.
27 */ 27 */
28 28
29#ifndef _MACHINE_NETBSD32_H_ 29#ifndef _MACHINE_NETBSD32_H_
30#define _MACHINE_NETBSD32_H_ 30#define _MACHINE_NETBSD32_H_
31 31
32#include <sys/types.h> 32#include <sys/types.h>
33#include <sys/proc.h> 33#include <sys/proc.h>
34 34
35typedef u_int32_t netbsd32_pointer_t; 35#define NETBSD32_POINTER_TYPE uint32_t
 36typedef struct { NETBSD32_POINTER_TYPE i32; } netbsd32_pointer_t;
36 37
37/* 38/* ppc32 has normally aligned 64bit integers */
38 * Convert a pointer in the 32-bit world to a valid 64-bit pointer. 39#define NETBSD32_INT64_ALIGN
39 */ 
40#define NETBSD32PTR64(p32) ((void *)(u_long)(u_int)(p32)) 
41 
42/* ppc32 has 32bit aligned 64bit integers */ 
43#define NETBSD32_INT64_ALIGN __attribute__((__aligned__(4))) 
44 40
45#include <compat/netbsd32/netbsd32.h> 41#include <compat/netbsd32/netbsd32.h>
46#include <powerpc/frame.h> 42#include <powerpc/frame.h>
47 43
48/* from <sparc/include/signal.h> */ 44/* from <sparc/include/signal.h> */
49typedef u_int32_t netbsd32_sigcontextp_t; 45typedef uint32_t netbsd32_sigcontextp_t;
50 46
51struct netbsd32_sigcontext { 47struct netbsd32_sigcontext {
52 int sc_onstack; /* sigstack state to restore */ 48 int sc_onstack; /* sigstack state to restore */
53 int __sc_mask13; /* signal mask to restore (old style) */ 49 int __sc_mask13; /* signal mask to restore (old style) */
54 /* begin machine dependent portion */ 50 /* begin machine dependent portion */
55 struct trapframe32 sc_frame; /* saved registers */ 51 struct trapframe32 sc_frame; /* saved registers */
56 sigset_t sc_mask; /* signal mask to restore (new style) */ 52 sigset_t sc_mask; /* signal mask to restore (new style) */
57}; 53};
58 54
59struct netbsd32_sigcontext13 { 55struct netbsd32_sigcontext13 {
60 int sc_onstack; /* sigstack state to restore */ 56 int sc_onstack; /* sigstack state to restore */
61 int sc_mask; /* signal mask to restore (old style) */ 57 int sc_mask; /* signal mask to restore (old style) */
62 /* begin machine dependent portion */ 58 /* begin machine dependent portion */
63 struct trapframe32 sc_frame; /* saved registers */ 59 struct trapframe32 sc_frame; /* saved registers */
64}; 60};
65 61
66struct exec_package; 62struct exec_package;
67void netbsd32_setregs (struct lwp *, struct exec_package *, vaddr_t); 63void netbsd32_setregs (struct lwp *, struct exec_package *, vaddr_t);
68int netbsd32_sigreturn (struct lwp *, void *, register_t *); 
69void netbsd32_sendsig (int sig, sigset_t *, u_long); 
70 64
71extern char netbsd32_esigcode[], netbsd32_sigcode[]; 65extern char netbsd32_esigcode[], netbsd32_sigcode[];
72 66
73/* 67/*
74 * Need to plug into get sparc specific ioctl's. 68 * Need to plug into get sparc specific ioctl's.
75 */ 69 */
76#define NETBSD32_MD_IOCTL /* enable netbsd32_md_ioctl() */ 70#define NETBSD32_MD_IOCTL /* enable netbsd32_md_ioctl() */
77int netbsd32_md_ioctl(struct file *, netbsd32_u_long, void *, struct proc *); 71int netbsd32_md_ioctl(struct file *, netbsd32_u_long, void *, struct lwp *);
78 72
79#endif /* _MACHINE_NETBSD32_H_ */ 73#endif /* _MACHINE_NETBSD32_H_ */