Boot support for the VXT2000 X terminal, based on some info on the VAXLinux
mailing list.
This commit is contained in:
parent
aa676fc0b2
commit
4d559e645f
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: autoconf.c,v 1.16 2002/02/24 01:04:24 matt Exp $ */
|
||||
/* $NetBSD: autoconf.c,v 1.17 2002/05/24 21:40:59 ragge Exp $ */
|
||||
/*
|
||||
* Copyright (c) 1994, 1998 Ludd, University of Lule}, Sweden.
|
||||
* All rights reserved.
|
||||
|
@ -164,7 +164,8 @@ scbinit()
|
|||
}
|
||||
scb_vec[0xc0/4].hoppaddr = rtimer;
|
||||
|
||||
mtpr(-10000, PR_NICR); /* Load in count register */
|
||||
if (vax_boardtype != VAX_BTYP_VXT)
|
||||
mtpr(-10000, PR_NICR); /* Load in count register */
|
||||
mtpr(0x800000d1, PR_ICCS); /* Start clock and enable interrupt */
|
||||
|
||||
mtpr(20, PR_IPL);
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: consio.c,v 1.12 2001/05/04 14:13:50 ragge Exp $ */
|
||||
/* $NetBSD: consio.c,v 1.13 2002/05/24 21:40:59 ragge Exp $ */
|
||||
/*
|
||||
* Copyright (c) 1994, 1998 Ludd, University of Lule}, Sweden.
|
||||
* All rights reserved.
|
||||
|
@ -80,6 +80,10 @@ void ka53_rom_putchar(int c);
|
|||
int ka53_rom_getchar(void);
|
||||
int ka53_rom_testchar(void);
|
||||
|
||||
void vxt_putchar(int c);
|
||||
int vxt_getchar(void);
|
||||
int vxt_testchar(void);
|
||||
|
||||
void putchar(int);
|
||||
int getchar(void);
|
||||
int testkey(void);
|
||||
|
@ -145,6 +149,12 @@ consinit(void)
|
|||
rom_getc = 0x20040044; /* 537133124 */
|
||||
break;
|
||||
|
||||
case VAX_BTYP_VXT:
|
||||
put_fp = vxt_putchar;
|
||||
get_fp = vxt_getchar;
|
||||
test_fp = vxt_testchar;
|
||||
break;
|
||||
|
||||
case VAX_BTYP_630:
|
||||
ka630_consinit();
|
||||
break;
|
||||
|
@ -265,3 +275,34 @@ void ka53_consinit(void)
|
|||
get_fp = ka53_rom_getchar;
|
||||
test_fp = ka53_rom_testchar;
|
||||
}
|
||||
|
||||
static volatile int *vxtregs = (int *)0x200A0000;
|
||||
|
||||
#define CH_SR 1
|
||||
#define CH_DAT 3
|
||||
#define SR_TX_RDY 0x04
|
||||
#define SR_RX_RDY 0x01
|
||||
|
||||
void
|
||||
vxt_putchar(int c)
|
||||
{
|
||||
while ((vxtregs[CH_SR] & SR_TX_RDY) == 0)
|
||||
;
|
||||
vxtregs[CH_DAT] = c;
|
||||
}
|
||||
|
||||
int
|
||||
vxt_getchar(void)
|
||||
{
|
||||
while ((vxtregs[CH_SR] & SR_RX_RDY) == 0)
|
||||
;
|
||||
return vxtregs[CH_DAT];
|
||||
}
|
||||
|
||||
int
|
||||
vxt_testchar(void)
|
||||
{
|
||||
if ((vxtregs[CH_SR] & SR_RX_RDY) == 0)
|
||||
return 0;
|
||||
return vxtregs[CH_DAT];
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: devopen.c,v 1.9 2001/05/01 13:08:09 ragge Exp $ */
|
||||
/* $NetBSD: devopen.c,v 1.10 2002/05/24 21:40:59 ragge Exp $ */
|
||||
/*
|
||||
* Copyright (c) 1997 Ludd, University of Lule}, Sweden.
|
||||
* All rights reserved.
|
||||
|
@ -175,6 +175,10 @@ devopen(f, fname, file)
|
|||
csrbase = 0x20000000;
|
||||
break;
|
||||
|
||||
case VAX_BTYP_VXT:
|
||||
nexaddr = 0;
|
||||
csrbase = bootrpb.csrphy;
|
||||
break;
|
||||
default:
|
||||
nexaddr = 0; /* No map regs */
|
||||
csrbase = 0x20000000;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: if_ze.c,v 1.10 2000/05/20 13:30:03 ragge Exp $ */
|
||||
/* $NetBSD: if_ze.c,v 1.11 2002/05/24 21:40:59 ragge Exp $ */
|
||||
/*
|
||||
* Copyright (c) 1998 James R. Maynard III. All rights reserved.
|
||||
*
|
||||
|
@ -97,8 +97,11 @@ zeopen(struct open_file *f, int adapt, int ctlr, int unit, int part)
|
|||
}
|
||||
|
||||
/* Get our Ethernet address */
|
||||
if (vax_boardtype == VAX_BTYP_49) {
|
||||
nisa_rom = (u_long *)0x27800000;
|
||||
if (vax_boardtype == VAX_BTYP_49 || vax_boardtype == VAX_BTYP_VXT) {
|
||||
if (vax_boardtype == VAX_BTYP_VXT)
|
||||
nisa_rom = (u_long *)0x20040028; /* XXX */
|
||||
else
|
||||
nisa_rom = (u_long *)0x27800000;
|
||||
for (i=0; i<ETHER_ADDR_LEN; i++)
|
||||
ze_myaddr[i] = nisa_rom[i] & 0377;
|
||||
} else {
|
||||
|
|
Loading…
Reference in New Issue