Commit Graph

1318 Commits

Author SHA1 Message Date
simonb
ab3de4de0e Make the bootpath "N/rzY" with no trailing '/' valid by adding the extra
'/' before appending 'boot' to the path.
1999-04-12 05:14:51 +00:00
simonb
520c13bcc8 Fix an off-by-32 error - space was padded out to the 96th byte for the
DEC disk boot block header, but it's only 64 bytes long.  Gives us
another 32 bytes in the first stage.

Don't use a roll-your-own START_FRAME size and offsets for the stack
and ra - use the <mips/asm.h> provided CALLFRAME_SIZ, CALLFRAME_RA and
CALLFRAME_SP
1999-04-12 03:53:13 +00:00
simonb
0a7e699d22 Add "WARNS?= 1" - woohoo! 1999-04-11 04:31:02 +00:00
simonb
cdc059d0d0 Use BOOTRZ instead of BOOTXX.
Add -DLIBSA_NO_DEV_IOCTL.
1999-04-11 04:28:14 +00:00
simonb
6247c771c1 Use BOOTRZ instead of BOOTXX.
Add a PROM callback for prom_close if not LIBSA_NO_DEV_CLOSE.
1999-04-11 04:27:53 +00:00
simonb
deb30f311a Include <common.h> to get prototypes for PROM callbacks.
Use LIBSA_NO_DEV_CLOSE and BOOTRZ instead of SMALL.
In rzclose() call prom_close() on the descriptor if we're on a
    pre-REX machine.
1999-04-11 04:27:30 +00:00
simonb
b2706c76c1 s/vmunix/netbsd/
Use BOOTRZ instead of SMALL.
1999-04-11 04:26:31 +00:00
simonb
558e5709dd Use LIBSA_NO_DEV_CLOSE and LIBSA_NO_DEV_IOCTL instead of SMALL. 1999-04-11 04:26:06 +00:00
simonb
bc48dfc927 Clean up prototypes.
Print a message on failure to load or execute kernel.
1999-04-11 04:25:47 +00:00
simonb
f1e493608f Move MKMAN to ../Makefile.inc. 1999-04-11 04:25:15 +00:00
simonb
c8ba78a09e Move BINDIR, BINMODE to Makefile.inc.
Remove -DSMALL.
Define an empty LIBZ if building first stage bootblocks since LIBZ
   defaults to /usr/lib/libz.a.
1999-04-11 04:24:41 +00:00
simonb
96fba8337e Define BINDIR, BINMODE and MKMAN in the "standard" place. 1999-04-11 04:19:56 +00:00
simonb
9498a6da95 Clean up prototypes and entry variable usage. 1999-04-11 04:08:25 +00:00
simonb
2fb264a52e Declare some prototypes for the pmax-specific libsa functions. 1999-04-11 04:05:46 +00:00
chs
f455dd6596 add a `flags' argument to uvm_pagealloc_strat().
define a flag UVM_PGA_USERESERVE to allow non-kernel object
allocations to use pages from the reserve.
use the new flag for allocations in pmap modules.
1999-04-11 04:04:04 +00:00
simonb
39b90701da Include <stand.h> so we get a putchar() prototype. 1999-04-11 04:03:29 +00:00
simonb
cda54b761e Apply rev 1.8 of sys/arch/i386/stand/lib/loadfile.c:
fix error handling: almost all errors were ignored

YES, this will be made MI soon...
1999-04-10 01:52:33 +00:00
simonb
be4160066d Allow the fake installation diskimage to be 2MB as well as 32MB in size. 1999-04-08 13:55:37 +00:00
nisimura
dd8e585cec - MIPS processors do not require to have memory barrier prior to read ops. 1999-04-08 03:14:35 +00:00
pk
c40eb1cd97 Fix a pasto in copyright text which has been procreating like rabbits.. 1999-04-06 20:09:18 +00:00
simonb
b1ec416993 Don't build a.out kernels anymore. 1999-04-06 06:16:07 +00:00
simonb
e6ab4443a2 Mention a few other (not implemented) space saving ideas in case we
get desparate in the future.
1999-04-01 08:47:38 +00:00
simonb
f36bd65f46 Build the full MI libsa for the first stage bootblocks rather than
picking the bits we wanted explicitly, taking advantage of some of the
recent code-size trimming from cgd.  There's now no duplication if libsa
code in sys/arch/pmax/stand.

As a bonus, we now have 416 bytes free in stage one (up from 80), and
will all of Chris' space saving options enabled (these are commented out
in scsiboot/Makefile), theres over a 1kB free.
1999-04-01 06:05:04 +00:00
simonb
971284a4ed Add support for LIBSA_SINGLE_DEVICE and LIBSA_SINGLE_FILESYSTEM. 1999-04-01 05:52:38 +00:00
thorpej
967b8c433c Don't call configure() from cpu_startup(). 1999-04-01 00:17:45 +00:00
simonb
ff2206f6df G/C UFS_NOSYMLINK, UFS_NOCLOSE and UFS_NOWRITE and use new LIBSA_NO_FS_*. 1999-03-31 07:43:39 +00:00
simonb
4c9bbd20fb Don't define errno expliticly, use libsa/errno.c in first stage and
${LIBSA} in the second stage.
1999-03-31 07:23:27 +00:00
simonb
febdc0ddf2 Use recent LIBSA_NO_TWIDDLE support. 1999-03-31 04:30:11 +00:00
simonb
0f4c2803ca Create/build vers.c/vers.o inside the final link stage so that the build
datestamp get's updated each build.
1999-03-31 03:10:56 +00:00
simonb
5fbc10c671 Reorder ${LIBS} so that we don't need to explicitly pull in bcmp.c
and bzero.c from libkern.
1999-03-31 02:35:14 +00:00
soda
2f9a4a8d93 regdef.h is back 1999-03-30 18:38:32 +00:00
soda
45b35a036e regdef.h is back 1999-03-30 14:20:43 +00:00
simonb
a63b96d0c4 Don't install sysconf.h - nothing is exported to userland in this file. 1999-03-30 02:19:02 +00:00
simonb
a487471f7c Remove bogus comment. 1999-03-29 13:48:25 +00:00
nisimura
1902d11a08 - Minor formating knots. No functional change. 1999-03-29 05:56:29 +00:00
simonb
9c02b3c942 Add enabled options NETATALK and IPFILTER_LOG, and disabled PPP_BSDCOMP,
PPP_DEFLATE, PPP_FILTER and PFIL_HOOKS

Partial fix for kern/7264 from Greg Woods.  Too much variance in all
ports GENERIC config files to do across the board right now.
1999-03-28 06:17:40 +00:00
simonb
9d77f4eb40 Use COPTS="-Os -mmemcpy" for INSTALL kernels - saves ~15kB in text. 1999-03-28 05:46:53 +00:00
simonb
dcc82eccf1 Also comment out inclusion of "builtin.5100" to stop pulling in 5100
devices.
1999-03-28 03:02:49 +00:00
simonb
10ab7f42f7 Protect the variables used during the DDB symbol calculations with
an "#ifdef DDB".
1999-03-28 01:56:41 +00:00
simonb
1a74785d0a Remove "md" - we have a specific INSTALL kernel, so we don't need "md"
on the GENERIC kernel.  Pointed out by Erik Fair.
1999-03-27 15:31:50 +00:00
simonb
4436f7ad26 Uncomment ipfilter and rnd, add md. 1999-03-27 11:10:25 +00:00
simonb
28b36b37a5 Remove trailing white-space. 1999-03-27 08:15:29 +00:00
simonb
25cde9b010 Disable 5100's for now - it doesn't work yet, so we may as save a little
bit of space...
1999-03-27 07:40:08 +00:00
simonb
516865d17c Enable now that "make depend" works properly. 1999-03-27 07:39:06 +00:00
simonb
d44e9483b0 Go back to a Makefile.booters scheme, like most other ports do. No
more problems for "make depend" - tested with and without obj dirs.
1999-03-27 07:17:50 +00:00
mhitch
ef619b1714 The ECC handling was broken when the common handling was split out of dec_3max.c
and dec_3maxplus.c.  The ERRSYN/CHKSYN register contains data, not an address.
Pass the address of the register rather than the contents to dec_mtasic_err()
instead of the register contents so it can read/write the register.
Correctable memory errors won't trap in dec_mtasic_err() anymore.
1999-03-27 03:27:09 +00:00
mycroft
9c6b797796 Changes for modified pmap_enter() API:
* Map the message buffer with access_type = VM_PROT_READ|VM_PROT_WRITE `just
  because'.
* Map the file system buffers with access_type = VM_PROT_READ|VM_PROT_WRITE to
  avoid possible problems with pagemove().
* Do not use VM_PROT_EXEC with either of the above.
* Map pages for /dev/mem with access_type = prot.  Also, DO NOT use
  pmap_kenter() for this, as we DO NOT want to lose modification information.
* Map pages in dumpsys() with VM_PROT_READ.
* Map pages in m68k mappedcopyin()/mappedcopyout() and writeback() with
  access_type = prot.
* For now, bus_dma*(), pmap_map(), vmapbuf(), and similar functions still use
  access_type = 0.  This should probably be revisited.
1999-03-26 23:41:25 +00:00
simonb
d0e107a1a5 Update copyrights. 1999-03-26 05:23:58 +00:00
simonb
4fefe2cb37 Conditionally set BINMODE and BINDIR so lower level Makefiles can override
the location or modes.

Fix up the machine and mips symlink creation.
1999-03-26 02:12:17 +00:00
simonb
461afc9079 Explictly set BINMODE to 555 so that ../Makefile.inc doesn't override it. 1999-03-26 02:07:55 +00:00
thorpej
567cda0537 Don't bother allocating mb_map on these systems. Mbuf clusters are
allocated from a pool, and the MIPS and Alpha use KSEG to map pool
pages.  So, mb_map wasn't actually being used.  Saves around 4MB of
kernel virtual address space in a typical configuration.

Garbage-collect the related VM_MBUF_SIZE constant.
1999-03-26 00:15:04 +00:00
simonb
1132034fe8 If the clock speed is less than 15MHz, we're on a 2100, otherwise a 3100. 1999-03-25 19:55:37 +00:00
simonb
e432668f46 callvec.c moved in stand again... 1999-03-25 12:56:18 +00:00
simonb
aff677bcae Updates for new bootblocks. 1999-03-25 12:24:56 +00:00
simonb
5010ae76c0 Remove old (not-enabled) local support for loading kernels. 1999-03-25 12:16:04 +00:00
simonb
b295b577e1 Second stage bootblocks based on original single stage blocks. 1999-03-25 12:11:41 +00:00
simonb
2dde1643c2 Makefile for /boot. 1999-03-25 12:10:12 +00:00
simonb
7c060ce391 Version info for bootblocks. 1999-03-25 11:57:41 +00:00
simonb
26098f27a2 Emtpy twiddle() to save space in stage 1 bootblocks 1999-03-25 05:28:36 +00:00
simonb
b9b7830d05 Unused now. 1999-03-25 05:27:00 +00:00
simonb
1e80ec96a0 Only include the dec disklabel at the start of BOOTXX is defined. 1999-03-25 05:23:48 +00:00
simonb
fb11e9e236 Remove unused debugging code, and clean up an error message. 1999-03-25 05:22:44 +00:00
simonb
f490a639c9 Not needed at the moment - may be resurrected when netboot comes along. 1999-03-25 05:19:44 +00:00
simonb
a160a47e1b Fix header botch in previous. 1999-03-25 05:17:49 +00:00
simonb
e213504efd Call main instead of _main. 1999-03-25 05:17:27 +00:00
simonb
c80fb4ccb8 Change from loading an a.out kernel to an ELF /boot. 1999-03-25 05:16:06 +00:00
simonb
0e44e536a0 Include <machine/stdarg.h> and not <stdarg.h> - found by adding
-nostdinc to CPPFLAGS.
1999-03-25 05:13:15 +00:00
simonb
7607cac7b3 CVS repository copy to bootxx.c 1999-03-25 04:42:06 +00:00
simonb
70bc63765d CVS repositary copied to ../scsiboot. These are small routines and/or
PROM callbacks used only by the first-stage disk bootblocks.  Other
bootloaders use libsa/libkern.
1999-03-25 04:34:03 +00:00
simonb
ec6b2370d9 CVS repositary copied to ../lib. 1999-03-25 04:22:04 +00:00
simonb
e6469a71aa Makefile* of pmax specific SA library - based on i386/stand/lib Makefile. 1999-03-25 04:16:15 +00:00
simonb
88eed19213 Oops, forgot RCS header and copyright. 1999-03-25 04:14:03 +00:00
simonb
50e9ee5706 Assembly routine that takes an entry point, new stack pointer address
and six extra arguments.  Sets up the stack pointer with the arguments
in the right registers/stack positions and calls the entry point.
1999-03-25 04:08:59 +00:00
simonb
c7c8021a29 Basic putchar() implentation in terms of the PROM's printf() callback.
Not really effecient, but there isn't that much printf'ing down by SA
programs and we can use the libsa printf() so things like "%ld" work.
1999-03-25 04:02:57 +00:00
simonb
0f203c7d99 Use "make ... echo ${MACHINE}" to get the machine name so
that this script is MI.  Just need to find the right place
for it now - suggestions welcome...
1999-03-25 03:56:00 +00:00
simonb
246f0aacde Copy of sys/arch/sparc/common/newvers.sh. 1999-03-25 03:52:12 +00:00
simonb
c06d325aaa Copy of sys/arch/i386/lib/loadfile.h with tweaks for the pmax. 1999-03-25 03:41:58 +00:00
simonb
6c24c1c864 When loading an a.out kernel and keeping the exec header, if it's OMAGIC
put the exec header below kernel text.
1999-03-25 03:38:53 +00:00
simonb
4ba6c44ef4 s/BOOTINFO_MAXSIZE/BOOTINFO_SIZE/ 1999-03-25 03:35:39 +00:00
simonb
afc2e41e04 Change multiple spaces to tabs. 1999-03-25 03:34:28 +00:00
simonb
be62523806 Remove trailing whitespace. 1999-03-25 03:33:58 +00:00
simonb
674c1ff8f1 Check KN03_INTR_PROD_JUMPER in the IOASIC INTR register to test if we
are running on a 5000/2x0 or a 5900, and set cpu_model accordingly.
(Test from Tohru Nishimura).
1999-03-25 03:03:59 +00:00
simonb
3a2b42eeca Add KN03_INTR_PROD_JUMPER (from Tohru Nishimura). 1999-03-25 03:00:18 +00:00
simonb
03ca5d05cf Remove trailing whitespace. 1999-03-25 01:17:51 +00:00
simonb
50897b84e0 Direct copy of sys/arch/i386/stand/lib/loadfile.c.
XXX: This should probably be MI in sys/lib/libsa.  After 1.4...
1999-03-24 23:51:26 +00:00
simonb
b4848d6b90 Code to initialise and add bootinfo records. 1999-03-24 23:47:37 +00:00
simonb
71bb7683db Initiailise to bootinfo pointer to NULL. In lookup_bootinfo(), if the
bootinfo pointer is NULL, just return instead of trying to make use of it.
1999-03-24 12:59:15 +00:00
mrg
ca5f9685bb clean up kernel/config files files for machVM lossage. 1999-03-24 06:06:09 +00:00
mrg
d2397ac5f7 completely remove Mach VM support. all that is left is the all the
header files as UVM still uses (most of) these.
1999-03-24 05:50:49 +00:00
simonb
0ba02670be New bootblock directory structure. 1999-03-24 02:07:22 +00:00
simonb
0074502b0a o Add bootinfo support by checking the fifth and sixth arguments for a
magic number and a pointer to the bootinfo data.
   XXX: A bootinfo_magic record is not checked for at the moment, even
        though test bootblocks initialise the bootinfo data with one.

 o Use the bootinfo symtab information in preference to searching for a
   valid a.out exec header after _end for initialising DDB.
   XXX: Should retire a.out exec header support altogether.  Loosing the
        ability to load symbols from old bootblocks isn't much of a loss.
        After 1.4?

 o Add "booted kernel" machdep sysctl.
1999-03-24 01:49:10 +00:00
simonb
729eda4324 Define a bootinfo record and initial structures that the pmax will use.
Modeled on i386 and bebox bootinfo.h.
1999-03-23 22:53:02 +00:00
simonb
c9e3b47a0f Don't build anything while bootblocks are being updated. 1999-03-23 22:23:11 +00:00
simonb
41febd3a3c Move DB_{AOUT,ELF}_SYMBOLS (and DB_ELFSIZE) definition to port-specific
db_machdep.h file.
1999-03-23 22:07:06 +00:00
drochner
76fa1751fe Add a macro to check for sufficient pointer alignment in bus.h context,
"BUS_SPACE_ALIGNED_POINTER()".
Equal to the param.h "ALIGNED_POINTER()" normally, but obeys additional
requirements of the bus_space_xxx_n() macros. (BUS_SPACE_DEBUG)
1999-03-23 21:29:03 +00:00
mrg
8fcaa99d1b KNF nits. 1999-03-22 13:08:51 +00:00
ad
3ce634a350 Added support for cursor keys, function keys and friends. kbdMapChar now
returns 'char *' to do this. Codes returned for the various keys match
what 'rcons' termcap entry expects.
1999-03-22 03:25:29 +00:00
simonb
46c6663ce4 Don't prototype ioasicprint() - the prototype is now in
dev/tc/ioasicvar.h and we don't use it here anyway.
1999-03-18 06:37:35 +00:00
sommerfe
bc533621ed defopt MINIROOTSIZE 1999-03-17 18:59:21 +00:00
nisimura
ed09809062 - Final cut of TC decoulping. 1999-03-16 05:59:01 +00:00
nisimura
bfdc9ed402 - Remove a verbose local variable. 1999-03-15 12:03:50 +00:00
nisimura
eed42e945e - 'DECstation 5100' -> 'DECsysytem 5100'. 1999-03-15 11:45:16 +00:00
nisimura
5871c2b95d - Fix config option name for 3MAX+. 1999-03-15 11:41:25 +00:00
jonathan
c72be5c489 Eliminate a divide by 40 from the microtime() path on 50Mhz decstatinos
by approximation using 41/2048. Gains one bit in NTP precision.
1999-03-15 09:47:36 +00:00
jonathan
5965639381 Do lk201 non-keyclick setup even when LK_KEY_CLICK not configured. 1999-03-15 09:40:56 +00:00
nisimura
6335e6c176 - Rearrangement for TC decoupling with some typo fixes. 1999-03-15 07:52:05 +00:00
nisimura
210ea7eabe - Decouple "ibus" from TURBOchannel.
- Nuke mainbus_softc definition (it's empty).
1999-03-15 07:43:05 +00:00
nisimura
10b5625b87 - Nuke old leftover; round three. Remove never-used functions.
XXX Needs to eliminate TURBOchannel exposure here.
1999-03-15 01:54:56 +00:00
jonathan
ef79649fc1 MI ioasic softc and child-device structs, gc duplicate struct definitions.
Add MI ioasic functions, but dont enable on alpha until tested.
1999-03-15 01:25:26 +00:00
mrg
c1122adb50 delete netbsd.aout and netbsd.ecoff in "make clean" 1999-03-15 01:12:00 +00:00
jonathan
78bc84c223 Clean up initializers for pmax ioasic children. Use same struct as alpha. 1999-03-14 23:59:53 +00:00
jonathan
e662ad5ecc Clean up names for SCC interrupt bits. 1999-03-14 23:59:03 +00:00
simonb
e4dd1abb05 Merge contents of filesystem.c into conf.c, and remove declaration of
errno from conf.c and put it in boot.c.
1999-03-14 00:57:06 +00:00
drochner
7482575685 regdef.h is gone 1999-03-13 11:24:59 +00:00
drochner
0265284ce4 This file is unneeded since <mips/regdef.h> went into <mips/asm.h>. 1999-03-13 11:24:11 +00:00
drochner
2b8eb20358 Remove unneeded <mips/regdef.h>. Its contents went into asm.h while ago. 1999-03-13 11:20:55 +00:00
nisimura
e846ee9b9b - Nuke old leftover; round two. XXX Still there 3MAX's IOASIC disguise.
Rework will be done in conf/files.pmax, anyway.
1999-03-12 08:15:27 +00:00
nisimura
57edf91cbc - Nuke old leftover bogocities, round one; externs for non-existent
functions, less-intuitive #define's in inappropriate header files.
1999-03-12 07:13:14 +00:00
nisimura
f875c6618a - Exclude 'tc_machdep.h' from installed in /usr/include/machine/ directory. 1999-03-12 07:03:21 +00:00
mrg
3ca216fd8a fix NRND usage 1999-03-09 00:37:01 +00:00
nisimura
7c40ddedec - Nuke old leftover. This has no useful information and not used by any
other files.
1999-03-04 01:48:09 +00:00
simonb
5129c4fcd5 Fix spel in comment. 1999-03-03 06:46:02 +00:00
jonathan
74c847de33 Fix up eliding nested interrupts. 1999-03-02 12:23:58 +00:00
jonathan
19ad1c6c19 Re-enable 3MIN clock intrs after servicing. Prepare to do same for ttys. 1999-03-02 09:37:35 +00:00
jonathan
004971519d Do callouts for IOCTL asic lance interrupts before SCSI callouts. 1999-03-02 09:24:17 +00:00
simonb
d9c1c30e0e If we get an error (file or bootblocks too big), unlink xxboot and
bootxx and exit(1) so a make will fail.  Especially in the too big
case, we don't want a make to work!
1999-03-01 11:52:34 +00:00
simonb
19893da01b Add a callback to the PROM routine clear_cache. Not needed now, but
used in two-stage bootblocks.
1999-03-01 04:05:18 +00:00
simonb
33fe56f80f Fix prototype for clear_cache (takes an address and length, not void). 1999-03-01 04:01:50 +00:00
simonb
19221fa28e A 5800 is a kn5800. 1999-03-01 00:18:13 +00:00
explorer
3ebb419571 Update to slightly altered rnd_attach_source() api 1999-02-28 17:08:05 +00:00
simonb
e73260106c This stuff is _hopelessly_ out of date, and will almost certainly never
be used again.  (Famous last words :-)
1999-02-24 14:26:25 +00:00
simonb
61b327c2ac Remove bootconf.c from CLEANFILES; not used anymore. 1999-02-24 13:54:54 +00:00
jonathan
68a5ad19be Fix off-by-one width: 220, not 221. confirmed against PROM setup. 1999-02-23 01:35:56 +00:00
simonb
381c553a53 Use -Os to reduce code size (from Krister Walfridsson). 1999-02-23 01:23:26 +00:00
simonb
ffa92484e2 Update cpp defines to current reality. 1999-02-22 11:57:18 +00:00
simonb
74f2d414ef Load the bootblocks at 0x8070000 so that ramdisk kernels don't
overwrite the beginning of the bootblocks.
1999-02-22 11:53:57 +00:00
simonb
69ba0d255c Update list of source files to reflect reality. 1999-02-22 11:31:46 +00:00
simonb
c3baaf3ba5 Lightweight memset routine. 1999-02-22 11:26:15 +00:00
simonb
31f50e4868 Assembly stubs to PROM callback routines. 1999-02-22 11:22:40 +00:00
simonb
80ef484669 Use sys/lib/libsa/ routines now. 1999-02-22 11:21:21 +00:00
simonb
74df4f53e0 Allow code in sector zero (from Michael Hitch).
Also in start.S:
 + Removed unused printf routine.
 + Removed unused dummy __main for gcc.
 + s/bzero/memset/.
1999-02-22 11:01:43 +00:00
simonb
09cca9e076 Don't use the conf.c->bootconf.c guff, remove last tape support,
and actually install the bootblocks.
1999-02-22 10:53:13 +00:00
simonb
3d6a630813 Break single read and printf of text+data into two separate reads and
printfs.  Better aesthetically, especially with a twiddle.
1999-02-22 10:23:53 +00:00
simonb
63e306cbe7 Use "#ifdef UFS_NOCLOSE/UFS_NOWRITE" instead of "#ifdef SMALL". 1999-02-22 10:18:40 +00:00
simonb
6932c61287 Use memset() instead of bzero(). 1999-02-22 10:16:52 +00:00
simonb
e87d6bf17e More tape support not needed. 1999-02-22 09:25:16 +00:00
simonb
50ae7be229 Don't implicitly type the devopen() function.
Don't include machine/dec_prom.h.
1999-02-22 08:24:47 +00:00
simonb
2e4a4cb289 Revert to a simple memcpy implementation - a memcpy() PROM callback is not
available on all DECstation models.
1999-02-22 08:22:21 +00:00
simonb
2407241a09 Sync with sys/lib/libsa/ufs.c. Now the same except for the memset/memcpy
#defines at the top.
1999-02-22 08:16:57 +00:00
simonb
ddf48f18a0 Remove traces of tape support - we're nowhere near handling it at the
moment.
1999-02-22 07:17:44 +00:00