projects
/
unix-history
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
tags
|
clone url
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (from parent 1:
840e57c
)
"update from Mike Hibler at Utah"
author
Kirk McKusick
<mckusick@ucbvax.Berkeley.EDU>
Sat, 26 May 1990 07:18:04 +0000
(23:18 -0800)
committer
Kirk McKusick
<mckusick@ucbvax.Berkeley.EDU>
Sat, 26 May 1990 07:18:04 +0000
(23:18 -0800)
SCCS-vsn: sys/hp300/stand/Makefile 7.2
SCCS-vsn: sys/hp300/stand/autoconf.c 7.2
SCCS-vsn: sys/hp300/stand/cons.c 7.2
SCCS-vsn: sys/hp300/stand/sd.c 7.2
SCCS-vsn: sys/hp300/stand/srt0.c 7.2
usr/src/sys/hp300/stand/Makefile
patch
|
blob
|
blame
|
history
usr/src/sys/hp300/stand/autoconf.c
patch
|
blob
|
blame
|
history
usr/src/sys/hp300/stand/cons.c
patch
|
blob
|
blame
|
history
usr/src/sys/hp300/stand/sd.c
patch
|
blob
|
blame
|
history
usr/src/sys/hp300/stand/srt0.c
patch
|
blob
|
blame
|
history
diff --git
a/usr/src/sys/hp300/stand/Makefile
b/usr/src/sys/hp300/stand/Makefile
index
0dcef48
..
0dc720d
100644
(file)
--- a/
usr/src/sys/hp300/stand/Makefile
+++ b/
usr/src/sys/hp300/stand/Makefile
@@
-4,7
+4,7
@@
#
# %sccs.include.redist.c%
#
#
# %sccs.include.redist.c%
#
-# @(#)Makefile 7.
1
(Berkeley) %G%
+# @(#)Makefile 7.
2
(Berkeley) %G%
#
LIBDIR=/lib
DESTDIR=
#
LIBDIR=/lib
DESTDIR=
@@
-17,7
+17,7
@@
CC=cc -Dconst=__const__ -Dvolatile=__volatile__ \
AS=as
INCPATH=-I. -I../sys -I..
AS=as
INCPATH=-I. -I../sys -I..
-CONS= -DDCACONSOLE -DITECONSOLE
+CONS= -DDCACONSOLE -DITECONSOLE
-DDCMCONSOLE
DEFS= -DSTANDALONE ${CONS} # -DROMPRF # -DDEBUG
COPTS=
CFLAGS= -O ${INCPATH} ${DEFS} ${COPTS}
DEFS= -DSTANDALONE ${CONS} # -DROMPRF # -DDEBUG
COPTS=
CFLAGS= -O ${INCPATH} ${DEFS} ${COPTS}
@@
-26,10
+26,10
@@
RELOC= FFF80000
SRCS= sys.c conf.c prf.c machdep.c autoconf.c \
hpib.c nhpib.c fhpib.c rd.c ct.c scsi.c sd.c hil.c \
SRCS= sys.c conf.c prf.c machdep.c autoconf.c \
hpib.c nhpib.c fhpib.c rd.c ct.c scsi.c sd.c hil.c \
- cons.c ite.c ite_subr.c ite_dv.c ite_gb.c ite_rb.c ite_tc.c dca.c
+ cons.c ite.c ite_subr.c ite_dv.c ite_gb.c ite_rb.c ite_tc.c dca.c
dcm.c
DUMMIES=
DRIVERS=autoconf.o hpib.o nhpib.o fhpib.o rd.o ct.o scsi.o sd.o hil.o \
DUMMIES=
DRIVERS=autoconf.o hpib.o nhpib.o fhpib.o rd.o ct.o scsi.o sd.o hil.o \
- cons.o ite.o ite_subr.o ite_dv.o ite_gb.o ite_rb.o ite_tc.o dca.o
+ cons.o ite.o ite_subr.o ite_dv.o ite_gb.o ite_rb.o ite_tc.o dca.o
dcm.o
LIBSA= libsa.a
ALL= dboot nboot tboot tcopy
LIBSA= libsa.a
ALL= dboot nboot tboot tcopy
@@
-137,7
+137,7
@@
install: mkboot installboot ${ALL}
depend:
for i in ${SRCS} ${DUMMIES}; do \
depend:
for i in ${SRCS} ${DUMMIES}; do \
- ${CC} -M ${INCPATH} $$i | \
+ ${CC} -M ${INCPATH} $
{DEFS} $
$i | \
awk ' { if ($$1 != prev) { print rec; rec = $$0; prev = $$1; } \
else { if (length(rec $$2) > 78) { print rec; rec = $$0; } \
else rec = rec " " $$2 } } \
awk ' { if ($$1 != prev) { print rec; rec = $$0; prev = $$1; } \
else { if (length(rec $$2) > 78) { print rec; rec = $$0; } \
else rec = rec " " $$2 } } \
diff --git
a/usr/src/sys/hp300/stand/autoconf.c
b/usr/src/sys/hp300/stand/autoconf.c
index
982276e
..
f12795e
100644
(file)
--- a/
usr/src/sys/hp300/stand/autoconf.c
+++ b/
usr/src/sys/hp300/stand/autoconf.c
@@
-11,7
+11,7
@@
*
* from: Utah $Hdr: autoconf.c 1.9 89/10/07$
*
*
* from: Utah $Hdr: autoconf.c 1.9 89/10/07$
*
- * @(#)autoconf.c 7.
1
(Berkeley) %G%
+ * @(#)autoconf.c 7.
2
(Berkeley) %G%
*/
#include "samachdep.h"
*/
#include "samachdep.h"
@@
-22,10
+22,27
@@
struct hp_hw sc_table[MAX_CTLR];
struct hp_hw sc_table[MAX_CTLR];
+extern int internalhpib;
+
+#if 0
+#include "rominfo.h"
+printrominfo()
+{
+ struct rominfo *rp = (struct rominfo *)ROMADDR;
+ printf("boottype %x, name %s, lowram %x, sysflag %x\n",
+ rp->boottype, rp->name, rp->lowram, rp->sysflag&0xff);
+ printf("rambase %x, ndrives %x, sysflag2 %x, msus %x\n",
+ rp->rambase, rp->ndrives, rp->sysflag2&0xff, rp->msus);
+}
+#endif
+
configure()
{
find_devs();
cninit();
configure()
{
find_devs();
cninit();
+#if 0
+ printrominfo();
+#endif
hpibinit();
scsiinit();
}
hpibinit();
scsiinit();
}
@@
-33,13
+50,11
@@
configure()
sctoaddr(sc)
int sc;
{
sctoaddr(sc)
int sc;
{
- extern int internalhpib;
-
if (sc == -2)
return(0x1000000);
if (sc == -1)
return(GRFIADDR);
if (sc == -2)
return(0x1000000);
if (sc == -1)
return(GRFIADDR);
- if (sc == 7)
+ if (sc == 7
&& internalhpib
)
return(internalhpib);
if (sc < 32)
return(0x600000+(0x10000*sc));
return(internalhpib);
if (sc < 32)
return(0x600000+(0x10000*sc));
@@
-68,7
+83,21
@@
find_devs()
hw->hw_id = id_reg[1] & 0xff;
hw->hw_sc = sc;
hw->hw_id = id_reg[1] & 0xff;
hw->hw_sc = sc;
+ /*
+ * Not all internal HP-IBs respond rationally to id requests
+ * so we just go by the "internal HPIB" indicator in SYSFLAG.
+ */
+ if (sc == 7 && internalhpib) {
+ hw->hw_type = HPIB;
+ hw++;
+ continue;
+ }
+
switch (hw->hw_id) {
switch (hw->hw_id) {
+ case 5: /* 98642A */
+ case 128+5: /* 98642A remote */
+ hw->hw_type = COMMDCM;
+ break;
case 8: /* 98625B */
case 128: /* 98624A */
hw->hw_type = HPIB;
case 8: /* 98625B */
case 128: /* 98624A */
hw->hw_type = HPIB;
diff --git
a/usr/src/sys/hp300/stand/cons.c
b/usr/src/sys/hp300/stand/cons.c
index
e6778e7
..
a20138f
100644
(file)
--- a/
usr/src/sys/hp300/stand/cons.c
+++ b/
usr/src/sys/hp300/stand/cons.c
@@
-11,7
+11,7
@@
*
* from: Utah $Hdr: cons.c 1.5 89/08/22$
*
*
* from: Utah $Hdr: cons.c 1.5 89/08/22$
*
- * @(#)cons.c 7.
1
(Berkeley) %G%
+ * @(#)cons.c 7.
2
(Berkeley) %G%
*/
#include "param.h"
*/
#include "param.h"
@@
-25,6
+25,9
@@
int iteprobe(), iteinit(), itegetchar(), iteputchar();
#ifdef DCACONSOLE
int dcaprobe(), dcainit(), dcagetchar(), dcaputchar();
#endif
#ifdef DCACONSOLE
int dcaprobe(), dcainit(), dcagetchar(), dcaputchar();
#endif
+#ifdef DCMCONSOLE
+int dcmprobe(), dcminit(), dcmgetchar(), dcmputchar();
+#endif
struct consdev constab[] = {
#ifdef ITECONSOLE
struct consdev constab[] = {
#ifdef ITECONSOLE
@@
-32,6
+35,9
@@
struct consdev constab[] = {
#endif
#ifdef DCACONSOLE
{ dcaprobe, dcainit, dcagetchar, dcaputchar },
#endif
#ifdef DCACONSOLE
{ dcaprobe, dcainit, dcagetchar, dcaputchar },
+#endif
+#ifdef DCMCONSOLE
+ { dcmprobe, dcminit, dcmgetchar, dcmputchar },
#endif
{ 0 },
};
#endif
{ 0 },
};
diff --git
a/usr/src/sys/hp300/stand/sd.c
b/usr/src/sys/hp300/stand/sd.c
index
8ef4d4a
..
a1f7584
100644
(file)
--- a/
usr/src/sys/hp300/stand/sd.c
+++ b/
usr/src/sys/hp300/stand/sd.c
@@
-11,7
+11,7
@@
*
* from: Utah $Hdr: sd.c 1.2 90/01/23$
*
*
* from: Utah $Hdr: sd.c 1.2 90/01/23$
*
- * @(#)sd.c 7.
1
(Berkeley) %G%
+ * @(#)sd.c 7.
2
(Berkeley) %G%
*/
/*
*/
/*
@@
-112,7
+112,7
@@
retry:
else
stat = scsi_tt_write(unit, io->i_ma, io->i_cc, blk, nblk);
if (stat) {
else
stat = scsi_tt_write(unit, io->i_ma, io->i_cc, blk, nblk);
if (stat) {
- printf("sd(%d,?) err: 0x%x", unit, stat);
+ printf("sd(%d,?) err: 0x%x
\n
", unit, stat);
if (++ss->sc_retry > SDRETRY)
return(-1);
else
if (++ss->sc_retry > SDRETRY)
return(-1);
else
diff --git
a/usr/src/sys/hp300/stand/srt0.c
b/usr/src/sys/hp300/stand/srt0.c
index
25ecf6b
..
3423f32
100644
(file)
--- a/
usr/src/sys/hp300/stand/srt0.c
+++ b/
usr/src/sys/hp300/stand/srt0.c
@@
-11,7
+11,7
@@
*
* from: Utah $Hdr: srt0.c 1.8 88/12/03$
*
*
* from: Utah $Hdr: srt0.c 1.8 88/12/03$
*
- * @(#)srt0.c 7.
1
(Berkeley) %G%
+ * @(#)srt0.c 7.
2
(Berkeley) %G%
*/
/*
*/
/*
@@
-25,11
+25,12
@@
.globl _configure
.globl _openfirst
.globl __rtt
.globl _configure
.globl _openfirst
.globl __rtt
- .globl _lowram,_howto,_devtype
+ .globl _lowram,_howto,_devtype
,_internalhpib
STACK = 0xfffff000 | below the ROM page
BOOTTYPE = 0xfffffdc0
LOWRAM = 0xfffffdce
STACK = 0xfffff000 | below the ROM page
BOOTTYPE = 0xfffffdc0
LOWRAM = 0xfffffdce
+ SYSFLAG = 0xfffffed2 | system flags
MSUS = 0xfffffedc | MSUS (?) structure
VECTORS = 0xfffffee0 | beginning of jump vectors
NMIRESET = 0xffffff9c | reset vector
MSUS = 0xfffffedc | MSUS (?) structure
VECTORS = 0xfffffee0 | beginning of jump vectors
NMIRESET = 0xffffff9c | reset vector
@@
-56,6
+57,10
@@
vecloop:
dbf d0,vecloop | go til done
movl #NMIRESET,a0 | NMI keyboard reset addr
movl #nmi,a0@ | catch in reset routine
dbf d0,vecloop | go til done
movl #NMIRESET,a0 | NMI keyboard reset addr
movl #nmi,a0@ | catch in reset routine
+ btst #5,SYSFLAG | do we have an internal HP-IB?
+ jeq boottype | yes, continue
+ clrl _internalhpib | no, clear the internal address
+boottype:
cmpw #12,BOOTTYPE | is this a reboot (REQ_REBOOT)?
jne notreboot | no, skip
movl #MAXADDR,a0 | find last page
cmpw #12,BOOTTYPE | is this a reboot (REQ_REBOOT)?
jne notreboot | no, skip
movl #MAXADDR,a0 | find last page