Removed chipmem limit for all but GODZILLA, added CEND() copper list macro,
added views back in conf and fixed misc compile warns and errors.
This commit is contained in:
parent
c056d471ac
commit
60dc3270f2
@ -27,7 +27,7 @@
|
||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* $Id: cc_chipmem.c,v 1.2 1994/01/29 06:58:41 chopps Exp $
|
||||
* $Id: cc_chipmem.c,v 1.3 1994/01/30 08:50:17 chopps Exp $
|
||||
*/
|
||||
#include "types.h"
|
||||
#include "cc_chipmem.h"
|
||||
@ -223,9 +223,7 @@ cc_init_chipmem (void)
|
||||
mem_node_t *mem;
|
||||
extern u_byte *chipmem_end, *chipmem_start;
|
||||
|
||||
/*#ifdef GODZILLA*/
|
||||
/* XXXXX */
|
||||
#if 1
|
||||
#ifdef GODZILLA /* XXX */
|
||||
/* spare the lower chipmem regions.. */
|
||||
chip.size = 512*1024;
|
||||
#else
|
||||
@ -237,7 +235,7 @@ cc_init_chipmem (void)
|
||||
chip.alloc_nodes = 0;
|
||||
chip.total = chip.size - sizeof (mem_node_t);
|
||||
|
||||
mem = (struct free_list *)chip.memory;
|
||||
mem = (mem_node_t *)chip.memory;
|
||||
mem->size = chip.total;
|
||||
|
||||
dinit_list (&chip.node_list);
|
||||
|
@ -27,7 +27,7 @@
|
||||
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
* $Id: cc_copper.h,v 1.2 1994/01/29 06:58:48 chopps Exp $
|
||||
* $Id: cc_copper.h,v 1.3 1994/01/30 08:50:19 chopps Exp $
|
||||
*/
|
||||
#if ! defined (_CC_COPPER_H)
|
||||
#define _CC_COPPER_H
|
||||
@ -67,6 +67,10 @@ typedef struct copper_list {
|
||||
c->cp.data=((CI_SKIP(h,v)<<16)|CD_SKIP(0xffff)); \
|
||||
CBUMP (c); \
|
||||
} while(0)
|
||||
#define CEND(c) do { \
|
||||
c->cp.data=0xfffffffe; \
|
||||
CBUMP (c); \
|
||||
} while(0)
|
||||
|
||||
void install_copper_list (cop_t *l);
|
||||
cop_t *find_copper_inst (cop_t *l, u_word inst);
|
||||
|
@ -164,15 +164,15 @@ int nblkdev = sizeof (bdevsw) / sizeof (bdevsw[0]);
|
||||
#define cdev_disk_init(c,n) { \
|
||||
dev_init(c,n,open), (dev_type_close((*))) nullop, dev_init(c,n,read), \
|
||||
dev_init(c,n,write), dev_init(c,n,ioctl), (dev_type_stop((*))) enodev, \
|
||||
(dev_type_reset((*))) nullop, 0, seltrue, (dev_type_map((*))) enodev, \
|
||||
dev_init(c,n,strategy) }
|
||||
(dev_type_reset((*))) nullop, 0, (dev_type_select((*))) seltrue, \
|
||||
(dev_type_map((*))) enodev, dev_init(c,n,strategy) }
|
||||
|
||||
/* open, close, read, write, ioctl, strategy */
|
||||
#define cdev_tape_init(c,n) { \
|
||||
dev_init(c,n,open), dev_init(c,n,close), dev_init(c,n,read), \
|
||||
dev_init(c,n,write), dev_init(c,n,ioctl), (dev_type_stop((*))) enodev, \
|
||||
(dev_type_reset((*))) nullop, 0, seltrue, (dev_type_map((*))) enodev, \
|
||||
dev_init(c,n,strategy) }
|
||||
(dev_type_reset((*))) nullop, 0, (dev_type_select((*))) seltrue, \
|
||||
(dev_type_map((*))) enodev, dev_init(c,n,strategy) }
|
||||
|
||||
/* open, close, read, write, ioctl, stop, tty */
|
||||
#define cdev_tty_init(c,n) { \
|
||||
@ -185,7 +185,7 @@ int nblkdev = sizeof (bdevsw) / sizeof (bdevsw[0]);
|
||||
(dev_type_open((*))) enodev, (dev_type_close((*))) enodev, \
|
||||
(dev_type_read((*))) enodev, (dev_type_write((*))) enodev, \
|
||||
(dev_type_ioctl((*))) enodev, (dev_type_stop((*))) enodev, \
|
||||
(dev_type_reset((*))) nullop, 0, seltrue, \
|
||||
(dev_type_reset((*))) nullop, 0, (dev_type_select((*))) seltrue, \
|
||||
(dev_type_map((*))) enodev, 0 }
|
||||
|
||||
cdev_decl(no); /* dummy declarations */
|
||||
@ -211,7 +211,8 @@ dev_type_read(mmrw);
|
||||
#define cdev_mm_init(c,n) { \
|
||||
(dev_type_open((*))) nullop, (dev_type_close((*))) nullop, mmrw, \
|
||||
mmrw, (dev_type_ioctl((*))) enodev, (dev_type_stop((*))) nullop, \
|
||||
(dev_type_reset((*))) nullop, 0, seltrue, (dev_type_map((*))) enodev, 0 }
|
||||
(dev_type_reset((*))) nullop, 0, (dev_type_select((*)))seltrue, \
|
||||
(dev_type_map((*))) enodev, 0 }
|
||||
|
||||
/* read, write, strategy */
|
||||
#define cdev_swap_init(c,n) { \
|
||||
@ -248,7 +249,6 @@ cdev_decl(sd);
|
||||
cdev_decl(tz);
|
||||
cdev_decl(rz);
|
||||
|
||||
/* XXX shouldn't this be optional? */
|
||||
cdev_decl(grf);
|
||||
/* open, close, ioctl, select, map -- XXX should be a map device */
|
||||
#define cdev_grf_init(c,n) { \
|
||||
@ -257,6 +257,15 @@ cdev_decl(grf);
|
||||
(dev_type_stop((*))) enodev, (dev_type_reset((*))) nullop, 0, \
|
||||
dev_init(c,n,select), dev_init(c,n,map), 0 }
|
||||
|
||||
#include "view.h"
|
||||
cdev_decl(view);
|
||||
/* open, close, ioctl, select, map -- XXX should be a map device */
|
||||
#define cdev_view_init(c,n) { \
|
||||
dev_init(c,n,open), dev_init(c,n,close), (dev_type_read((*))) nullop, \
|
||||
(dev_type_write((*))) nullop, dev_init(c,n,ioctl), \
|
||||
(dev_type_stop((*))) enodev, (dev_type_reset((*))) nullop, 0, \
|
||||
dev_init(c,n,select), dev_init(c,n,map), 0 }
|
||||
|
||||
#include "par.h"
|
||||
cdev_decl(par);
|
||||
/* open, close, read, write, ioctl -- XXX should be a generic device */
|
||||
@ -300,8 +309,8 @@ cdev_decl(vn);
|
||||
#define cdev_vn_init(c,n) { \
|
||||
dev_init(c,n,open), (dev_type_close((*))) nullop, dev_init(c,n,read), \
|
||||
dev_init(c,n,write), dev_init(c,n,ioctl), (dev_type_stop((*))) enodev, \
|
||||
(dev_type_reset((*))) nullop, 0, seltrue, (dev_type_map((*))) enodev, \
|
||||
0 }
|
||||
(dev_type_reset((*))) nullop, 0, (dev_type_select((*))) seltrue, \
|
||||
(dev_type_map((*))) enodev, 0 }
|
||||
|
||||
dev_type_open(fdopen);
|
||||
/* open */
|
||||
@ -358,7 +367,11 @@ struct cdevsw cdevsw[] =
|
||||
cdev_ite_init(NITE,ite), /* 13: console terminal emulator */
|
||||
cdev_kbd_init(1, kbd), /* 14: /dev/kbd */
|
||||
cdev_mouse_init(NMOUSE, ms), /* 15: /dev/mouse0 /dev/mouse1 */
|
||||
#if 0
|
||||
cdev_notdef(), /* 16: */
|
||||
#else
|
||||
cdev_view_init (NVIEW, view), /* 16: /dev/view00 /dev/view01 ... */
|
||||
#endif
|
||||
cdev_notdef(), /* 17: */
|
||||
cdev_notdef(), /* 18: */
|
||||
cdev_vn_init(NVN,vn), /* 19: vnode disk */
|
||||
|
@ -824,13 +824,17 @@ sun_sendsig(catcher, sig, mask, code)
|
||||
* psl to gain improper priviledges or to cause
|
||||
* a machine fault.
|
||||
*/
|
||||
|
||||
struct sigreturn_args {
|
||||
struct sigcontext *sigcntxp;
|
||||
};
|
||||
|
||||
|
||||
/* ARGSUSED */
|
||||
sigreturn(p, uap, retval)
|
||||
struct proc *p;
|
||||
struct args {
|
||||
struct sigcontext *sigcntxp;
|
||||
} *uap;
|
||||
int *retval;
|
||||
struct proc *p;
|
||||
struct sigreturn_args *uap;
|
||||
int *retval;
|
||||
{
|
||||
register struct sigcontext *scp;
|
||||
register struct frame *frame;
|
||||
@ -840,8 +844,10 @@ sigreturn(p, uap, retval)
|
||||
int flags;
|
||||
extern short exframesize[];
|
||||
|
||||
#ifdef COMPAT_SUNOS
|
||||
if (p->p_emul == EMUL_SUNOS)
|
||||
return sun_sigreturn (p, uap, retval);
|
||||
#endif
|
||||
|
||||
scp = uap->sigcntxp;
|
||||
#ifdef DEBUG
|
||||
|
@ -65,7 +65,7 @@
|
||||
#include "vmmeter.h"
|
||||
|
||||
#ifdef COMPAT_SUNOS
|
||||
#include "../../sunos/sun_syscall.h"
|
||||
#include "compat/sunos/sun_syscall.h"
|
||||
#endif
|
||||
|
||||
struct sysent sysent[];
|
||||
@ -598,7 +598,7 @@ syscall(code, frame)
|
||||
/* XXX don't do this for sun_sigreturn, as there's no
|
||||
XXX stored pc on the stack to skip, the argument follows
|
||||
XXX the syscall number without a gap. */
|
||||
if (code != SYS_sun_sigreturn)
|
||||
if (code != SYS_sigreturn)
|
||||
{
|
||||
frame.f_regs[SP] += sizeof (int);
|
||||
/* remember that we adjusted the SP, might have to undo
|
||||
|
Loading…
Reference in New Issue
Block a user