thorpej
2d397943d4
Copyright assigned to The NetBSD Foundation.
1997-10-04 09:59:35 +00:00
lukem
7d508b124f
define SIZE?=size, and use ${SIZE} instead of size. makes cross
...
compilation easier
1997-10-03 07:17:00 +00:00
kleink
6eb0c3077a
Remove duplicate inclusion of <sys/device.h>.
1997-10-01 16:28:22 +00:00
christos
3996b53189
PR/4162: Chris Jones: make cleandir does not work properly; it does not
...
remove the object files and the .depend file in the kernel build directory.
1997-09-30 22:39:49 +00:00
thorpej
376e3e6e34
Glue in memory_disk_hooks.
1997-09-21 22:53:03 +00:00
thorpej
585f46558e
Add support for mounting a memory disk as the root device.
1997-09-21 22:51:29 +00:00
thorpej
c6ff44d7a1
Add support for the memory disk device.
1997-09-21 22:44:46 +00:00
leo
c5ba7a3102
Move the definition of MSGBUFSIZE up to the machine-arch level if
...
possible. Pointed out by Bernd Ernesti.
1997-09-20 12:06:37 +00:00
leo
d4713d24c2
Implement the kernel part of pr-1891. This allows for a more flexible sized
...
msgbuf. Note that old 'dmesg' and 'syslogd' binaries will continue running,
though old 'dmesg' binaries will output a few bytes of junk at the start of
the buffer, and will miss a few bytes at the end of the buffer.
1997-09-19 13:52:37 +00:00
mycroft
a9155c5057
Set the status word as well, and remove a bogus comment.
1997-09-12 10:29:20 +00:00
mycroft
cd9a968cb7
Fix a test that should be on fputype rather than cputype.
1997-09-12 08:41:55 +00:00
mycroft
8a42aeac7b
GC old comment.
1997-09-12 08:35:15 +00:00
mycroft
55582e5bc2
The FPCOPROC option no longer exists.
1997-09-12 08:04:12 +00:00
mycroft
895a1eced4
Fix an error from when Locore.c was removed.
1997-09-12 07:56:37 +00:00
mycroft
982f24e698
Always initialize all registers in setregs().
1997-09-12 07:00:30 +00:00
mycroft
42c101eb00
Fix execve(2) and *setregs() interfaces so emulations can set registers in a
...
more correct way. (See tech-kern.)
1997-09-12 05:48:08 +00:00
mycroft
16a8787248
Fix execve(2) and *setregs() interfaces so emulations can set registers in a
...
more correct way. (See tech-kern.)
1997-09-11 23:01:44 +00:00
mjacob
6ac7f6248f
add a before tab to SCSIVERBOSE
1997-08-23 19:16:06 +00:00
scottr
4cb1ba2dac
Make this compile again when we only specify a machine with the
...
HP MMU (320, 350).
1997-08-21 18:12:34 +00:00
mjacob
1a7afa3853
add commented out reference SCSIVERBOSE option
1997-08-20 18:38:13 +00:00
scottr
af6b181686
Fix typo in getting the 040 access fault address, noticed by
...
Allen Briggs in the mac68k locore.s
1997-08-18 17:52:48 +00:00
scottr
0755be1f84
Use optimized _splraise() implementation, from mac68k/intr.h
1997-07-24 05:43:08 +00:00
drochner
bdb232d2b6
Don't use <lib/libsa/if_ether.h> anymore. This was a copy of the
...
old (before ARP changes) <netinet/if_ether.h>, intended for
temporary use.
1997-07-22 17:41:01 +00:00
kleink
ac7da90b83
Remove old *_UNK style default defines, use standard names from locators.h.
...
Missed in "locators.h" cleanup; reported by Thorsten Frueauf in PR 3906.
1997-07-22 15:20:20 +00:00
kleink
73997cc33d
Add missing `#include "locators.h"' from last commit.
1997-07-19 11:19:05 +00:00
jtk
7be59a897b
remove old *_UNK style default defines, use standard names from locators.h
1997-07-18 03:38:33 +00:00
jtk
ca1bba150a
use locator defines in "locators.h" to index cf_loc[]
1997-07-17 03:16:39 +00:00
jtk
9ed3ea9ab3
use locator defines in "locators.h" to index cf_loc[]
...
still to be done and/or decided not to be done: replace all *UNK uses in
hpib code with the native names from locators.h
1997-07-17 01:59:12 +00:00
thorpej
e296b3b344
New bus error/address error trap handlers, code lifted from mac68k
...
port, which is lifted from amiga port, plus some changes from me:
- Add support for the HP MMU to the 020/030 bus/address error handler
(mostly lifted wholesale from the old code).
- Rename addrerr and buserr to busaddrerr2030. The new name reflects that
these functions are specific to the 68020 and 68030, and that the same
handler function is used for both vectors.
The vector table is patched once we know our CPU type, before the MMU
is enabled. In the event that we're running on a CPU that we're not
configured for, simply invoke the PROM's "reboot request"; we have no
hope of running in the event of a config botch, since we need working
a working bus error handler for console initialization.
These new functions optimze for common-case page faults, eliminate
many run-time checks, and are sharable.
1997-07-14 19:18:31 +00:00
leo
198bd713f2
Generate assym.h dependencies when making 'depend'.
1997-07-12 22:07:36 +00:00
perry
ad1710ce1e
update comment from 1981 on memory and disk prices -- pr-2754 from Curt Sampson
1997-07-12 16:18:36 +00:00
kleink
49324f585c
Remove misplaced/unnecessary VM #include cruft; from Thorsten Frueauf
...
<frueauf@ira.uka.de> in PR port-hp300/3851.
1997-07-10 18:14:08 +00:00
veego
1c599835b4
Restore the defines of UPAGES and NPTEPG.
1997-07-10 08:22:36 +00:00
kleink
96914606be
From sun3:
...
Correct handling for Trap #2 in SunOS executables,
now that we know it is supposed to flush the cache.
(Was thought to be "some obscure FPU operation".)
1997-07-08 16:56:31 +00:00
thorpej
b1d65b1d3f
Adjust start address here, now that exec() no longer does it for us.
1997-06-28 07:20:25 +00:00
thorpej
ee8581a255
foosize()'s return value is in DEV_BSIZE units; adjust the size obtained
...
from the disklabel accordingly.
1997-06-24 00:44:03 +00:00
mrg
552af779d2
bring mrg-vm-swap2 onto mainilne.
1997-06-12 15:46:19 +00:00
mrg
dc6a98e92c
bring mrg-vm-swap2 onto mainilne.
1997-06-12 15:09:23 +00:00
kleink
a10178c21e
GC this file. It has been unused for quite a while.
1997-06-11 08:42:31 +00:00
veego
be611a44d5
The 'Mach derived conversion macros' are now in <m68k/param.h>
1997-06-10 18:59:12 +00:00
veego
323d575e58
s/hp300_btop/m68k_btop/
1997-06-10 18:58:19 +00:00
veego
3360f97707
s/hp300_round_page/m68k_round_page/ s/hp300_trunc_page/m68k_trunc_page/
...
s/hp300_btop/m68k_btop/ s/hp300_ptob/m68k_ptob/
1997-06-10 18:56:50 +00:00
veego
a969a4b6f6
s/hp300_trunc_page/m68k_trunc_page/ s/hp300_ptob/m68k_ptob/
1997-06-10 18:52:23 +00:00
veego
6a57e397b7
s/hp300_btop/m68k_btop/
1997-06-10 18:51:31 +00:00
veego
fb53429628
s/hp300_round_page/m68k_round_page/ s/hp300_trunc_page/m68k_trunc_page/
1997-06-10 18:49:35 +00:00
veego
f1d4880cb5
s/hp300_trunc_page/m68k_trunc_page/
1997-06-10 18:48:47 +00:00
veego
931d90fcee
Use the MI <m68k/param.h> include.
1997-06-10 07:54:35 +00:00
veego
a204fb7981
Initialize machine from MACHINE.
1997-06-08 23:54:19 +00:00
thorpej
cad3c2f3f0
Garbage-collected long-unused setredzone().
1997-05-26 00:27:43 +00:00
veego
a078a4be55
Fix lossage from the latest vm_pmap changes.
1997-05-19 10:14:47 +00:00
thorpej
2dc79e5c4b
Link this program statically.
1997-05-14 07:57:13 +00:00
gwr
a8af683eb9
Eliminate references to vmspace.vm_pmap
1997-05-13 18:00:49 +00:00
thorpej
4d989c06dd
Add the following drivers:
...
- frodo at intio
- dnkbd at frodo (commented out until integrated)
- apci at frodo
1997-05-12 08:24:56 +00:00
thorpej
f8337a2c14
Add apci driver glue.
1997-05-12 08:23:28 +00:00
thorpej
286b3b171d
Add glue for APCI driver at cdev minor #31 and in console switch.
1997-05-12 08:17:53 +00:00
thorpej
6cc1022d84
Garbage-collect an unneeded definition.
1997-05-12 08:14:01 +00:00
thorpej
a492e1df80
Add a kernel driver for the APCI 8250-like UARTs that live in the
...
Frodo ASIC, originally contributed by Mike Smith
<mike@pressed.spam.frisbee.net.au>, but reworked by me to:
- Essentially duplicate the dca driver, modifiying where necessary
to work with the APCI.
- Deal with the different Frodo autoconfiguration model.
- Don't attach a tty to the 0th UART - it's not really useful for much
more than the Domain keyboard.
- Added a routine to check for the existence of a DCA at select code 9.
On most models, the 1'th UART is mapped to select code 9 by the PROM,
and on these models, we do _NOT_ want to attach the device as an APCI.
However, on the 425e, this mapping does not take place, so we attach
as an APCI. The 2'th and 3'th UARTs always get tty instances.
- Add console support which will only be invoked on the 425e (i.e. check
for DCA at 9, and defer console to it if it exists).
1997-05-12 08:12:36 +00:00
thorpej
a155715d44
Add a driver for the Apollo Utility Chip (a.k.a. "frodo"), contributed
...
by Mike Smith <mike@pressed.spam.frisbee.net.au>, with some changes to
the autoconfiguration model and slight changes to the interrupt glue
by me.
1997-05-12 08:03:48 +00:00
thorpej
2392fb2a1c
Bump version: Added APCI console support
1997-05-12 07:58:08 +00:00
thorpej
83c63bd2de
- Always build a romout() stub.
...
- If kbdnmi() returns, stop cold, since it shouldn't.
1997-05-12 07:56:00 +00:00
thorpej
f39885279b
- Define INTIOBASE here for use by the standalone programs.
...
- Add some extern's for "userom" and romputchar()
1997-05-12 07:54:45 +00:00
thorpej
4e0ee78444
- Always build the romputchar() glue.
...
- Don't set "userom" in the trap handler (we didn't before, but we've
removed the previous CPP conditional that was used to enable it.)
1997-05-12 07:53:02 +00:00
thorpej
eac0352a9e
In kbdnmi(), after we have cleared the interrupt condition, reset
...
the machine, rather than simply returning to the assembly NMI handler.
Previously, the assembly handler would simply jump back to begin:, which
would frob the stack, and re-clear the BSS. However, this is not sufficient,
as there may be state in initialized data that must be restored. Thus,
the only reasonable solution is to re-load the boot block.
1997-05-12 07:51:32 +00:00
thorpej
c25bfe1365
Don't use hardcoded hex for the address of the internal HP-IB interface.
...
Instead, use definitions from <hp300/dev/dioreg.h>
1997-05-12 07:48:23 +00:00
thorpej
82ae3a106e
Don't use a hard-coded hex address for the 0'th APCI port; use definitions
...
from <hp300/dev/frodoreg.h>
1997-05-12 07:47:03 +00:00
thorpej
0c5b002449
Add prototypes for standalone APCI driver.
1997-05-12 07:45:41 +00:00
thorpej
05333d3fa5
- Add glue for standalone APCI console driver.
...
- Make the romputchar() useage conditional only on "userom".
1997-05-12 07:44:53 +00:00
thorpej
225fbfa100
Build the standalone APCI driver.
1997-05-12 07:43:18 +00:00
thorpej
bbbc6052c1
Add a standalone APCI driver, adapted from the standalone DCA driver
...
by me. This driver should only be invoked when there are no other
suitable console devices present in the system. This situation currently
exists on the 425e, for which we do not have a frame buffer driver,
and who's PROM does not map the second APCI UART to select code 9,
like is done on the 4{00,25,33}{t,s}.
1997-05-12 07:41:55 +00:00
mycroft
cc4a1553a1
Eliminate bogus redefinitions of standard targets.
1997-05-09 07:50:03 +00:00
mycroft
84bca5d679
Don't use _SUBDIRUSE outside of bsd.subdir.mk.
1997-05-07 17:28:47 +00:00
lukem
7f69a90075
whitespacos i missed
1997-05-07 00:29:18 +00:00
lukem
3490941ddb
cleanup unecessary quotage of options
1997-05-07 00:27:33 +00:00
lukem
4abf5a1a72
be consistent with use of spaces and tabs.
...
don't need quotes around options with _'s in the name
1997-05-06 00:56:53 +00:00
thorpej
3a12db07c6
Update for USELEDS changes (including: garbage-collect LED frobbing
...
code; it has moved to leds.c)
1997-05-05 21:15:41 +00:00
thorpej
500498e411
Update for USELEDS changes.
1997-05-05 21:14:04 +00:00
thorpej
e677b62290
Garbage-collect LED-related stuff.
1997-05-05 21:12:49 +00:00
thorpej
aec958ddf3
Don't initialize the DMA controller here.
1997-05-05 21:11:59 +00:00
thorpej
95bae625a2
Update for USELEDS changes.
1997-05-05 21:09:13 +00:00
thorpej
9c8fdf3dad
Use dio_intr_establish().
1997-05-05 21:08:26 +00:00
thorpej
9eddfbfca3
Update for USELEDS changes.
1997-05-05 21:07:31 +00:00
thorpej
ff163c6424
Use dio_intr_establish().
1997-05-05 21:06:41 +00:00
thorpej
feb623a9ea
- Use dio_intr_establish().
...
- Update for USELEDS changes.
1997-05-05 21:05:32 +00:00
thorpej
3a85f14da4
Use dio_intr_establish().
1997-05-05 21:04:16 +00:00
thorpej
73b24faec6
Do a bit of spring cleaning.
1997-05-05 21:02:39 +00:00
thorpej
82cab4fef4
Prototype dio_intr_establish() and dio_intr_disestablish().
1997-05-05 21:01:33 +00:00
thorpej
5bada123f8
- Initialize the DMA controller in dioattach().
...
- Implement dio_intr_establish() and dio_intr_disestablish().
1997-05-05 21:00:32 +00:00
thorpej
0a8e2a9ce8
Use dio_intr_establish().
1997-05-05 20:58:18 +00:00
thorpej
bd2bc06c75
- Make "USELEDS" a defopt'd option, so we can generate dependencies on
...
it. Conditionally compile leds.c on USELEDS.
- Rearrange mainbus and intio declarations slightly.
- Add declaration for the forthcoming "frodo" driver.
1997-05-05 20:57:29 +00:00
thorpej
663cee4555
Pull the LED frobbing code out of machdep.c. Since there is more than
...
one LED on an hp300 SPU, rename the file to indicate plurality.
1997-05-05 20:54:34 +00:00
thorpej
397e92e33c
New-style kgdb_machdep.c, mostly duplicated from the sun3 port, modified
...
slightly by me.
1997-05-05 20:51:05 +00:00
thorpej
95dd345f81
Garbage-collect old KGDB code that is no longer used.
1997-05-05 20:48:26 +00:00
mycroft
94313a874b
Oops; reverse sense of previous test.
1997-05-03 08:46:09 +00:00
mycroft
1dafb51ea6
Eliminate unused variable in '030-only kernels.
1997-05-03 08:41:29 +00:00
mycroft
fc324bb0b9
Eliminate unused variable when !USELEDS.
1997-05-03 07:09:57 +00:00
thorpej
766d429d62
Correct a comment long since outdated.
1997-05-01 16:24:26 +00:00
thorpej
989ed431e1
Oops, the numbers for "t" and "s" got swapped around. No functional
...
difference, just correct now.
1997-05-01 05:26:48 +00:00
thorpej
97a6c32e58
Garbage-collect a bunch of _very_ hp300-specific code, most of which
...
doesn't work anyhow (due to current and future fundamental differences
between NetBSD and HP-UX device semantics). This can probably be shared
with other m68k ports now.
1997-04-27 21:38:57 +00:00
thorpej
ba0a5d5c58
Bump version: Better SPU detection code
1997-04-27 21:18:31 +00:00
thorpej
8b4cae0516
CPU -> SPU
1997-04-27 21:17:13 +00:00
thorpej
3cb561ed9f
Don't define our own machineid values - pull in <machine/hp300spu.h>
1997-04-27 21:15:14 +00:00
thorpej
fbad957c52
Update getmachineid() for new machineid values.
1997-04-27 21:13:55 +00:00
thorpej
767517edcc
Don't even look for a Domain keyboard if we're not a 400, 425, or 433.
1997-04-27 21:12:43 +00:00
thorpej
5b511796c1
Uniquely identify 345 vs. 375 vs. 400 and 380 vs. 425. Adapted by me from
...
code provided by Mike Smith. While I'm here, convert this file to use
macros from <machine/asm.h> rather than making assumptions about how
C labels are handled.
1997-04-27 21:10:06 +00:00
thorpej
cdb54b8d65
Update for new SPU options.
1997-04-27 21:06:29 +00:00
thorpej
b27a863b02
Generate option headers for SPU type options, so that we may generate
...
dependencies on them.
1997-04-27 21:05:49 +00:00
thorpej
772891accd
Use information provided by <machine/hp300spu.h> to determine if we
...
might have a physical address cache.
1997-04-27 21:02:34 +00:00
thorpej
650df29d4d
These files depend on things in <machine/hp300spu.h>
1997-04-27 20:58:55 +00:00
thorpej
18a931000e
Use <machine/hp300spu.h> to determine if we might have a physical address
...
cache.
1997-04-27 20:54:39 +00:00
thorpej
544f501d29
Rewrite identifycpu() to be partially table-driven, and to be more
...
sane in general. Since we can uniquely identify each SPU type
(except for 318/319/330, because there _are_ no differences, really),
require that the appropriate SPU option be configured into the kernel.
1997-04-27 20:53:30 +00:00
thorpej
d62e267a0c
Uniquely identify 345 vs. 375 vs. 400 and 380 vs. 425, useful when
...
looking for hp4xx-only hardware during autoconfiguration. Code
mostly from Mike Smith, with a few changes by me.
1997-04-27 20:50:01 +00:00
thorpej
9d4c5c9106
- Define new machineid and mmuid constants.
...
- Rearrange slightly.
1997-04-27 20:47:23 +00:00
thorpej
fc79829eab
#include <machine/hp300spu.h>
1997-04-27 20:43:37 +00:00
thorpej
80ff0f0f2f
- Move a bunch of hp300 SPU-specific stuff out of cpu.h, and place it
...
in new hp300spu.h file. This includes the code that associates
model number with cpu/mmu/cache combinations.
- Define "mmuid" constants for several models, derived from code
provided by Mike Smith.
1997-04-27 20:37:07 +00:00
thorpej
f5ccce44c8
srt0.s renamed to srt0.S via repository copy Magick - we want this
...
file to be preprocessed before it is assembled.
1997-04-27 20:29:43 +00:00
thorpej
d8b7a2f037
- Don't make assumptions about how C labels are handled, use macros
...
provided by <machine/asm.h> instead.
- Adjust for <m68k/m68k/trap_subr.s>
1997-04-25 02:17:38 +00:00
thorpej
722ead42ca
Don't make assumptions about how C labels are handled, use macros
...
provided by <machine/asm.h> instead.
1997-04-25 02:16:38 +00:00
thorpej
5fddec888d
Add Domain keyboard support source files (oops, forgot to commit this
...
file when I integrated the rest of it!). Fixes PR #3523 , from
Thorsten Frueauf <frueauf@ira.uka.de>.
1997-04-24 20:39:26 +00:00
thorpej
6a2fc99857
STRIP -> STRIPFLAG
1997-04-17 07:27:46 +00:00
scottr
ea528012b3
dcmreadbuf() should not return immediately if the tty hasn't been opened;
...
this fixes a kgdb goof. Found by inspection.
1997-04-15 22:45:14 +00:00
thorpej
4767ae8d9d
Regsiter description for APCI UART found on HP 9000/400-series
...
systems with a Frodo Utility Chip. This is essientially an 8250 with
3 bytes of padding between each register. From mike smith
<miff@spam.frisbee.net.au>.
1997-04-14 20:36:11 +00:00
thorpej
89a63d43fa
Build HIL and Domain keyboard support. Include UK HIL keymap.
1997-04-14 19:09:01 +00:00
thorpej
8f994f2c15
Add support for the Apollo Domain keyboard, from mike smith
...
<miff@spam.frisbee.net.au> with some changes for integration by me.
1997-04-14 19:03:13 +00:00
thorpej
f9cbf4e434
Implement an autoconfiguring indirect keyboard driver, removing explcit
...
dependencies on the HIL keyboard.
1997-04-14 19:00:10 +00:00
scottr
5599d9bc87
Allowing forcing console on dcm with FORCEDCMCONSOLE (c.f. dca.c).
1997-04-14 05:58:32 +00:00
thorpej
a78807e04c
Update for interrupt function and header name changes.
1997-04-14 02:33:16 +00:00
thorpej
6f791ab8b2
Remove unnecssary #include.
1997-04-14 02:31:33 +00:00
thorpej
064d13e0ad
Remove unnecessary softc member.
1997-04-14 02:30:45 +00:00
thorpej
30166b9778
Rearrange the interrupt code slightly:
...
- place all interrupt-related macros, prototypes, etc. into <machine/intr.h>,
like other ports.
- rename isrlink/isrunlink/isrinit, etc. intr_establish/intr_disestablish/
intr_init, etc., and move to intr.c for naming consistency.
- don't call intr_init() twice.
1997-04-14 02:28:43 +00:00
thorpej
f05b58b229
Use common m68k sigcode.
1997-04-13 02:37:15 +00:00
thorpej
81f55f1cc8
regdump() is prototyped in m68k/cpu.h now.
1997-04-09 20:08:25 +00:00
thorpej
7c20e290df
regdump() takes a struct trapframe *
1997-04-09 20:07:13 +00:00
thorpej
9cf4ffce0a
- Garbage-collect signal-related stuff; use m68k/m68k/sig_machdep.c
...
- Garbage-collect regdump() and friends
- Convert hp300 to new crash dump format
1997-04-09 20:05:20 +00:00
thorpej
577dabb739
Use <m68k/m68k/proc_subr.s>
1997-04-09 20:03:21 +00:00
thorpej
f0f9811df2
Use the %x printf format where appropriate
1997-04-09 20:01:04 +00:00
thorpej
62a635ac7e
- Remove redundant file directives
...
- Pull in m68k/m68k/sig_machdep.c
1997-04-09 19:59:57 +00:00
thorpej
c3c59721e2
kcore.h for hp300 - just pulls in the common m68k kcore.h
1997-04-09 19:51:36 +00:00
mycroft
1929ddf09c
Fix some #ifdef lossage if HP340, HP360, or HP375 is defined, but HP370 is not.
1997-04-06 21:40:35 +00:00
scottr
be3e57de4a
Changes to make a dcm-based console work properly:
...
- While servicing an rx, tx, or modem status interrupt: if we have a
NULL struct tty * or if the tty isn't open, just return.
- Skip the self test if we are the console; it manages to do funny
things to autoconfig messages. (XXX - this should be fixed)
1997-04-04 18:16:07 +00:00
thorpej
2c0d2cb557
#ifdef DIOVERBOSE a variable needed only in such code.
1997-04-04 09:53:43 +00:00
scottr
aa88a240fe
Fix printf() and other warnings when compiled with DEBUG defined.
1997-04-02 22:37:21 +00:00
christos
e0443987e7
Add netatalk netisr
1997-04-02 21:48:55 +00:00
scottr
40d1c295a2
Specify more aggressive warning options for C code.
1997-04-01 23:16:41 +00:00
scottr
6c7f504b20
Add forward declarations for struct exec_package and struct exec_vmcmd,
...
to minimize the number of unnecessary #includes.
1997-04-01 20:05:14 +00:00
scottr
54c4c9b37f
Catch up with COMPAT_HPUX changes, and make this compile with -Wall.
1997-04-01 19:59:59 +00:00
scottr
5be5fe416e
Relocate some prototypes needed for COMPAT_HPUX to hilvar.h
1997-04-01 19:29:09 +00:00
scottr
698c8410a2
Add prototypes, and make this compile with -Wall. Remove register
...
modifier from all declarations.
1997-04-01 03:12:06 +00:00
scottr
66c9485803
Add prototypes, and make this compile with -Wall.
1997-04-01 03:10:57 +00:00
scottr
43b1b8c08a
Relocate some prototypes needed by other MD code.
1997-04-01 03:07:19 +00:00
scottr
4c6e335897
Add prototypes as appropriate.
1997-04-01 03:03:56 +00:00
gwr
5485e1ff75
Need a common <m68k/pcb.h> for gdb.
1997-03-31 21:39:51 +00:00
scottr
c008fc0aa0
Add prototypes, and make this compile with -Wall. Remove register
...
modifier from all declarations.
1997-03-31 07:32:14 +00:00
scottr
ea23ab53c3
Add missing argument to diagnostic printf()
1997-03-31 07:30:41 +00:00
scottr
52cb2d2955
Add prototypes, and make this compile with -Wall. Remove register
...
modifier from all declarations.
Also, handle sc_flags better so that we don't lose track of the
DCM_ISCONSOLE bit.
1997-03-31 07:29:49 +00:00
thorpej
3878faec9c
Fix a bogus argument to dmafree(), from Scott Reynolds.
1997-03-31 01:05:19 +00:00
thorpej
6a3ca35ec3
Build these kernels with full debugging symbols.
1997-03-31 00:03:10 +00:00
thorpej
cb24b0200a
Don't allocate mclrefcnt[]; it's dead and gone.
1997-03-27 21:01:20 +00:00
gwr
37b247edde
Renames: /dumpconf/cpu_dumpconf/, /boot/cpu_reboot/
1997-03-26 22:42:13 +00:00
gwr
71e43d14ab
Move findroot/setroot stuff from configure() to cpu_rootconf().
1997-03-26 22:38:40 +00:00
mycroft
e44dc60fc6
Fix editing error in new config changes.
1997-03-22 00:17:59 +00:00
thorpej
12c0a8c5c8
Correct keyboard map references in the default case. From
...
Klaus Klein <kleink@layla.inka.de>, PR #3361 .
1997-03-20 08:07:01 +00:00
mycroft
c14b8539e0
Make active_user_pmap() DTRT while a process is exiting.
1997-03-18 16:39:30 +00:00
mycroft
d19eaa3d4f
Add an active_user_pmap() macro, and use it as appropriate.
1997-03-18 14:13:55 +00:00
mycroft
1068c83731
Check for curproc being null before dereferencing it in more cases.
1997-03-18 13:01:07 +00:00
gwr
08f7a407f9
Separate bcopy and copypage stuff from copy.s
1997-03-17 19:46:36 +00:00
thorpej
1d987a161b
#include <net/if_media.h>
1997-03-17 03:17:34 +00:00
hpeyerl
52cbdd41c4
Lager is now config.new. ya ya, I've been busy.
1997-03-16 18:46:56 +00:00
thorpej
48556a75d2
Use <m68k/m68k/support.s>
1997-03-16 10:49:43 +00:00
thorpej
e93bf2f15b
Garbage-collect hpux_dumpu().
1997-03-16 10:00:45 +00:00
thorpej
701652d81c
In cpu_coredump(), don't bother dumping an HP-UX style u-area. What it
...
produced was useful once, but isn't worth the clutter now.
1997-03-16 09:59:40 +00:00
thorpej
de5a4c2d10
Remove reference to Locore.c
1997-03-16 09:47:48 +00:00
thorpej
611fa5e05b
Old lint helper, not used anymore, and really quite amazingly out of
...
date; this is 4.3 vintage. Just nuke it.
1997-03-16 09:45:38 +00:00
thorpej
5a1149b25d
Nuke MDP_HPUXTRACE.
1997-03-16 09:40:01 +00:00
thorpej
c5b6d5ed07
Prototype hpux_setregs().
1997-03-16 09:14:25 +00:00
thorpej
c9e8e99421
Remove the COMPAT_HPUX stuff from setregs(); the HP-UX compatibility
...
code has its own implementation now.
1997-03-16 09:12:13 +00:00
thorpej
832cc66899
Implement hpux_setregs(). While I'm here, nuke the MDP_HPUXTRACE
...
code. In practice, no one traces NetBSD programs with HP-UX debuggers,
and the evil required to make it work should not be discussed in the
presence of small children.
1997-03-16 09:10:31 +00:00
thorpej
27c7e59344
Define the HP-UX sigcontext structure here, and prototype hpux_sendsig().
1997-03-16 03:45:33 +00:00
thorpej
5a14c36be7
Move all COMPAT_HPUX signal code into hpux_sendsig() and hpux_sys_sigreturn().
1997-03-16 03:43:39 +00:00
thorpej
f5c982a251
In cpu_coredump(), use `fputype' to decide if we dump FP regs.
1997-03-15 23:40:25 +00:00
thorpej
99cc2e1cec
Garbage-collect use of FPCOPROC.
1997-03-15 23:34:32 +00:00
thorpej
bbcda6f26b
- /dev/mem: only allow access to physical RAM
...
- /dev/kmem: disallow access to devices
This is designed to protect device registers from being corrupted
accidentally by "innocent" mem/kmem grovellers.
1997-03-15 23:30:12 +00:00
thorpej
6fa9be2e93
Use `fputype' at run-time rather than FPCOPROC at compile-time.
1997-03-15 23:25:49 +00:00
thorpej
4fd90cefdb
- Garbage-collect doadump(); it hasn't been used for some time.
...
- Supply an `fputype' global. Since all hp300's have an FPU, default
it to FPU_68881, setting it to FPU_68040 if we detect a 68040 CPU.
- Use `fputype' at run-time rathern than FPCOPROC at compile-time.
- Re-arrange locore slightly; move startup code to the beginning, right
after the vector table.
1997-03-15 23:23:55 +00:00
thorpej
2cea1ec9d7
- Make hpux_sys_getcontext() table-driven.
...
- Use `fputype' at run-time rather than FPCOPROC at compile-time.
1997-03-15 23:20:20 +00:00
thorpej
1023932f47
User text segment begins at 8k, now, to match the other m68k ports.
1997-03-15 22:02:24 +00:00
thorpej
26644d1232
Change MID_MACHINE to MID_M68K; we now use the same executable format as
...
the rest of the m68k ports.
1997-03-15 22:01:02 +00:00
thorpej
0e368d2e40
Don't set __LDPGSZ to 4096; we use 8192 like the rest of m68k-land, now.
1997-03-15 21:59:20 +00:00
is
07b064e02e
New ARP system, supports IPv4 over any hardware link.
...
Some of the stuff (e.g., rarpd, bootpd, dhcpd etc., libsa) still will
only support Ethernet. Tcpdump itself should be ok, but libpcap needs
lot of work.
For the detailed change history, look at the commit log entries for
the is-newarp branch.
1997-03-15 18:09:08 +00:00
mycroft
f7ad6fff40
Put the genassym.sh output in a temp file, and mv -f it, in case
...
it fails spectacularly and doesn't clean up. Also, don't depend genassym.c
(since it no longer exists), and remove dependencies for genassym.o (since it
no longer exists).
1997-03-14 23:14:39 +00:00
mycroft
3a99046fbb
Update this to new config.
1997-03-14 04:21:13 +00:00
thorpej
711486fd1b
Fix a typo (oops).
1997-03-13 17:14:45 +00:00
thorpej
8229701876
oops, don't need trap.h here anymore
1997-03-13 09:29:03 +00:00
thorpej
72ba35e689
Don't genassym the trap type values; just include <machine/trap.h>
1997-03-13 09:27:21 +00:00
thorpej
deeac396e7
Use genassym.sh to facilitate cross compiling.
1997-03-13 09:24:21 +00:00
thorpej
f6d3f6c93b
Use the script version to facilitate cross compiling.
1997-03-13 09:22:19 +00:00
thorpej
a92ec8002e
Enable COMPAT_M68K4K.
1997-03-12 18:33:09 +00:00
thorpej
1777807068
Add 9660 file system, and set DDB_ONPANIC to 0.
1997-03-12 02:08:02 +00:00
thorpej
dc1020fe40
Print the interrupt level in scsiattach().
1997-03-10 08:37:31 +00:00
thorpej
bb0d35b7e4
Bump version - we compute the kernel load address differently.
1997-03-10 08:02:23 +00:00
thorpej
4e541ff7ea
Fix rounding of lowram value; ensure the kernel load address is on
...
an 8k boundary.
1997-03-10 08:00:47 +00:00
fvdl
115b6d92fa
Define ALIGNED_POINTER
1997-02-24 23:16:53 +00:00
mrg
22245e60a5
comment PFIL_HOOKS as it is redundant (as an option) when used with ipfilter. minor format
1997-02-18 21:09:56 +00:00
thorpej
82adcde8ca
Fix edit-o that caused panic's when root was on HP-IB disk.
1997-02-05 20:56:29 +00:00
thorpej
f79798f810
Bump version: Add support for booting gzip'd kernels
1997-02-04 19:42:29 +00:00
thorpej
76839db714
Add the ".gz" names of the kernels to the kernel names list. New
...
boot order is:
netbsd -> netbsd.gz -> netbsd.bak -> netbsd.bak.gz ->
netbsd.old -> netbsd.old.gz -> onetbsd -> onetbsd.gz
1997-02-04 19:40:07 +00:00
thorpej
6a721b41eb
Bump version: Add support for reading gzip'd miniroot images
1997-02-04 19:36:29 +00:00
thorpej
8ceaa2c3f5
- If copying the miniroot from an NFS server, don't attempt to
...
compute the number of iterations through the copy loop based
on file size; the miniroot image may be compressed. Instead,
ignore short reads in the NFS case, and handle them like EOF.
- Fix typo in a printf format.
1997-02-04 19:34:09 +00:00
thorpej
e876a86309
Add support for transparent handling of decompressing read, useful
...
for gzip'd kernels and miniroot images.
1997-02-04 19:28:50 +00:00
thorpej
5a9b27d5cf
Set the heap limit to the last byte of the 3rd page from the
...
end of RAM, i.e.:
[ heap limit page][msgbuf page][ROM scratch page]
| |
heap limit end of RAM
1997-02-04 19:14:57 +00:00
thorpej
1e250357ac
Thou shalt not taunt the HP BOOTROM with silliness such as incorrect
...
link order.
1997-02-04 08:39:26 +00:00
perry
19d153fc48
Nuke some options GENERIC residue.
1997-02-04 04:57:10 +00:00
perry
0b3a46d6b3
Nuke some GENERIC residue.
1997-02-04 04:31:55 +00:00
thorpej
0130161343
Bump version: Reorganization of boot block code
1997-02-04 03:59:40 +00:00
thorpej
8226741fc2
Replay history: Added support for HP-IB cartridge tapes
1997-02-04 03:58:52 +00:00
thorpej
25f97c348f
Reply history: Merged network and disk boot programs
1997-02-04 03:57:51 +00:00
thorpej
f52a7cea62
Replay history: Added support for network booting
1997-02-04 03:57:08 +00:00
thorpej
b327731a21
Bump version: Reorganization of boot block code
1997-02-04 03:55:56 +00:00
thorpej
6c19137655
Replay history: Added support for HP-IB cartridge tapes
1997-02-04 03:54:56 +00:00
thorpej
a0864b3e07
Complete and total reorganization of the hp300 boot code, modeled
...
closely after the build process used by NetBSD/alpha's boot code.
1997-02-04 03:51:37 +00:00
thorpej
876ea64acb
Add "options LKM", suggested by Klaus Klein <kleink@layla.inka.de>.
1997-02-02 17:29:42 +00:00
thorpej
2a0c6f4a0a
Use splkbd().
1997-02-02 09:40:31 +00:00
thorpej
47e3ffe813
Definition of splhil() is in param.h now.
1997-02-02 09:39:21 +00:00
thorpej
14a4465f0b
- Implement _splraise(), like _spl(), but only modifies the SR if the
...
new ipl is higher than the ipl currently set in SR. (Thanks to
scottr@netbsd.org for implementing it while I was busy with other stuff!)
- Define spl{bio,net,tty,imp} in terms of _splraise().
- Move definition of splhil() here, and define splkbd() as an alias for it.
1997-02-02 09:34:26 +00:00
thorpej
65494a33cb
Garbage-collect extra copy of mappedcopy.
1997-02-02 08:03:06 +00:00
thorpej
2f2eed4a30
Use zeropage() in pmap_zero_page().
1997-02-02 08:01:32 +00:00
thorpej
c51511c5b5
zeropage -> devzeropage, and make it static.
1997-02-02 07:59:41 +00:00
thorpej
4b525c0004
Clean up the mappedcopy initialization code.
1997-02-02 07:58:49 +00:00
thorpej
00111f0a5d
- Eliminate some unnecessary cpu/mmu checks, based on what CPUs
...
the kernel was compiled for.
- Add some comments about possible further optimization.
- Garbage-collect extra copypage()
1997-02-02 07:55:52 +00:00
thorpej
2bf5021447
- Use <errno.h>, not "extern int errno."
...
- Define FPU constants.
1997-02-02 07:53:16 +00:00
thorpej
834bef67f2
If the user has halted the system, allow them to press a key to reboot.
1997-02-02 05:33:30 +00:00
carrel
31ff345489
My config files. To quote from thorpej: "for kicks".
1997-02-02 00:23:23 +00:00
thorpej
312e813007
Oops, need PFIL_HOOKS.
1997-02-02 00:11:33 +00:00
thorpej
f28303c413
- Garbage-collect a kludge necessary when we were using old config.
...
- Synch the "clean" rule with the i386 port's.
- Add a commented-out rule for generating assym.h w/ the new genassym.sh.
Some slight changes need to be made to genassym.h to make it work with
m68k, so we can't use it just yet.
1997-02-01 23:55:10 +00:00
carrel
05c0e704dc
Make "options HP340" actually work without having "option HP360".
1997-01-31 23:01:21 +00:00
carrel
32f2102a58
Patch from thorpej to mark non-console grf's and ite's alive.
1997-01-31 21:16:50 +00:00
thorpej
2c94d6307c
Fix typo introduced in new setroot code. (There's only just a little
...
irony in that, eh?)
From Klaus Klein <kleink@layla.inka.de>, PR #3173 .
1997-01-31 20:20:53 +00:00
thorpej
04da46b022
Gah, missed another NFSCLIENT -> NFS.
1997-01-31 06:12:57 +00:00
thorpej
41809f9413
Adopt for new file system and root spec grammar.
1997-01-31 05:56:10 +00:00
thorpej
739f23a219
This file is obsolete; this information is now generated by config(8).
1997-01-31 05:12:49 +00:00
thorpej
8763a04e25
Use the new machine-independent setroot().
1997-01-31 01:49:41 +00:00
scottr
fc20c2eb8f
Add missing major number decls, from Klaus Klein (closes PR 3165).
1997-01-30 22:11:19 +00:00
scottr
13802e3a85
Add DIOVERBOSE per Jason; clean up formatting for some options.
1997-01-30 18:33:52 +00:00
thorpej
570522c72c
Clean up #includes.
1997-01-30 10:32:51 +00:00
thorpej
5906c26c8b
Commit this to the right place, this time.
...
The boot blocks do a primitive form of autoconfiguration. Duplicate some
of the old config strcutures for the benefit of the boot blocks; they
don't need something as flexible as the kernel does.
1997-01-30 10:31:44 +00:00
thorpej
40d51256bb
These files are no longer needed.
1997-01-30 10:00:39 +00:00
thorpej
5e781164af
Update for new-style config.
1997-01-30 09:58:57 +00:00
thorpej
add93ce69e
Garbage-collect some uneeded stuff now that we're new config only.
1997-01-30 09:55:45 +00:00
thorpej
d26d94a7a5
Regen to clear up RCS id snafu.
1997-01-30 09:20:42 +00:00
thorpej
cb63bb9de5
Garbage-collect all old-style autoconfiguration support; it is no
...
longer supported. The hp300 port uses new config now.
1997-01-30 09:18:33 +00:00
thorpej
9bb27910a9
Convert to new-style autoconfiguration; old-style config is no longer
...
supported.
1997-01-30 09:14:10 +00:00
thorpej
f19d55d659
- Garbage-collect the old-style configuration glue.
...
- Make sure we don't get interrupts in dcmselftest().
1997-01-30 09:11:24 +00:00
thorpej
f5bb637c10
- Convert these drivers to new-style autoconfiguration. Old-style
...
config is no longer supported.
- Use a much more obvious SCSI job queueing scheme.
1997-01-30 09:08:55 +00:00
thorpej
365324ec10
- Convert these drivers to new-style autoconfiguration. Old-style
...
configuration is no longer supported.
- Use a much more obvious HP-IB job queueing scheme.
1997-01-30 09:06:51 +00:00
thorpej
d49c71cb8a
- Use indicies, rather than pointer arithmetic, to track DMA chain
...
segments.
- Use a much more obvious DMA job queueing scheme.
- Fixup some debugging code.
1997-01-30 09:04:33 +00:00
thorpej
7bfe4e11c4
Garbage-collect old-style autoconfiguration glue.
1997-01-30 09:00:21 +00:00
thorpej
743140bb51
Garbage-collect old-style autoconfiguration code. Adopt boot device
...
detection code to new-style autoconfiguration.
1997-01-30 08:59:29 +00:00
hpeyerl
56542666eb
fix an *old* booboo where the dma queue wasn't being set in unexpected
...
case. Found, fixed, and dictated by jason. (thorpe)
1997-01-26 18:04:10 +00:00
hpeyerl
8cc55c80b6
::->: :-)
1997-01-26 17:55:52 +00:00
scottr
1085290516
Remove obsolete timezone specification
1997-01-20 16:55:32 +00:00
thorpej
112e338d6b
Fix botch in PA calculation for DIO-II devices. Bug noticed and fix
...
provided by Klaus Klein <kleink@layla.inka.de>, PR #3097 .
1997-01-12 21:27:26 +00:00
scottr
cc061d0a98
Normally, iteon() returns an int. If NITE == 0, define iteon() to be 0.
...
Closes PR 3091.
1997-01-10 00:07:27 +00:00
scottr
b917ce3294
Bracket kernel structs with #ifdef _KERNEL so that bootblocks will once
...
again build.
1997-01-09 01:07:59 +00:00
mrg
c71a371532
use pseudo-device ipfilter, not ipl.
1997-01-07 11:35:01 +00:00
thorpej
c56e780e4f
Bring some sanity into my frazzled existence:
...
- Always ensure that RAW_PART ("c") can be opened.
- Disallow unused or non-existent partitions from being opened.
- Don't do bounds checking or partition translation on RAW_PART.
This is consistent with other disk drivers in the NetBSD source tree,
and fixes a condition where the user could not fix a corrupted disklabel
due to a bogus offset for partition "c".
1997-01-07 09:29:30 +00:00
thorpej
32dda9a886
Kludge newvers rule, so that it works with old and new config.
1997-01-06 08:49:30 +00:00
thorpej
c26a11ab21
Add PFIL_HOOKS and ipl pseudo-device.
1997-01-06 08:48:36 +00:00
thorpej
7e3b804ce5
Add ipl pseudo-device.
1997-01-06 08:47:43 +00:00
thorpej
246654663f
Add "ipl" device at cdev major 18.
1997-01-05 21:29:49 +00:00
thorpej
f77141521c
Oops, build dio.o in the old config case, too. Pointed out by
...
Dave Carrel <carrel@cisco.com>.
1997-01-05 04:41:48 +00:00
thorpej
e2c6ed87ec
Fix several semantic bugs:
...
- Always allow RAW_PART to be opened, regardless of the partition table.
- Never do partition translation on RAW_PART; it's always offset 0.
- Always make sure the disklabel is read from RAW_PART.
- Make *strategy() return values consistent.
This fixes a condition where a bogus partition table could be written
to the disk from SYS_INST, and the user had no way to rewrite with
a correct partition table, since RAW_PART would be invalid.
1996-12-21 21:34:40 +00:00
thorpej
0d58626f72
This wasn't just a spelling error... I invented a whole new word!
1996-12-21 21:23:43 +00:00
thorpej
c0c07cd30e
Always use `SLOWSCSI'. Some devices need a long delay between phase
...
changes, apparently. This is reported to work around some odd failures
people were seeing during first-time installation onto a SCSI disk.
1996-12-17 09:21:42 +00:00
thorpej
7373a43fcf
Generate initial copies of these files.
1996-12-17 09:01:24 +00:00
thorpej
838edf78fd
Snapshot of new config for NetBSD/hp300. This isn't quite finished yet.
...
We're about 75% there. SCSI and HP-IB are not yet supported in a new
config kernel; some autoconfiguration hackery has to be done there, yet.
These changes are enough to network boot a diskless kernel.
New config glue is enabled with the "NEWCONFIG" kernel option. If that
option is not present, an old config kernel will be built. Any kernel
configured with config(8) will automatically pick up the NEWCONFIG
option from std.hp300.
1996-12-17 08:40:56 +00:00
thorpej
7b4ca2ebe5
Kill __BROKEN_INDIRECT_CONFIG
1996-12-17 08:11:50 +00:00
thorpej
9a8786f719
Clean up cpu_startup() a bit:
...
- move data structure allocation into a new function, allocsys(), like
the i386 port.
- garbage-collect the BUFFERS_UNMANAGED code.
1996-12-11 16:49:23 +00:00
thorpej
f82a494e0f
Fix typo in comment.
1996-12-11 09:10:38 +00:00
thorpej
66cbbf68ff
Copyright assigned to The NetBSD Foundation.
1996-12-09 17:35:24 +00:00
thorpej
5dc95f5908
Garbage-collect DMAINTLVL; it's not needed any more.
1996-12-09 06:18:13 +00:00
thorpej
49471d5fd5
Sync with reality.
1996-12-09 03:56:01 +00:00
thorpej
01667974d0
isrlink() now returns a cookie. We're not interested in the cookie, so
...
cast to (void).
Call dmacomputeipl() after we've hooked up our interrupt handler.
1996-12-09 03:16:26 +00:00
thorpej
648a1b19ae
isrlink() now returns a cookie. We're not interested in the cookie, so
...
cast to (void).
1996-12-09 03:14:06 +00:00
thorpej
0d6571ba4d
Defer hooking up the DMA controller interrupt. Add a new funciton,
...
dmacomputeipl(), which is called by drivers which use DMA once they've
hooked up their interrupts. This new function computes the appropriate
ipl to use for the DMA controller and (re-)establishes it's interrupt.
1996-12-09 03:09:51 +00:00
thorpej
75a37ecc60
Print the interrupt levels for bio, net, and tty computed during
...
autoconfiguration.
1996-12-09 03:07:11 +00:00
thorpej
ce7ecde8a3
Dynamically compute the PSL value for spl{bio,net,tty,imp}() calls.
1996-12-09 03:04:46 +00:00
thorpej
c36215249a
Add EXEC_SCRIPT (I don't even want to know how I forgot it before...)
1996-12-09 01:53:30 +00:00
thorpej
b5c8aff18b
In setroot(), fix mishandling of the `config netbsd root on nfs' case
...
that caused a NULL pointer dereference.
1996-12-07 19:00:46 +00:00
cgd
96acdadef7
First step inn removing config_scan() and the hacks that gave devices
...
on indirect-config busses a (permanent) softc that they could share
between 'match' and 'attach' routines:
Define __BROKEN_INDIRECT_CONFIG so that old autoconfiguration
interfaces are used, until drivers are converted to use the new
interfaces (actually, converted back to use the _older_ interfaces)
which prohibit indirect configuration devices from receiving a softc
in their match routine that they can share with their attach routine.
1996-12-05 00:13:47 +00:00
jonathan
4c1d96de78
* Replace explicit -O2 in CFLAGS with COPTS macro. Default COPTS?= -O2.
...
Lets users over-ride with makeoptions COPTS="..." in kernel config files.
Leave `mandatory' flags (like -msoft-float which on m68k enforces no
FP in kernel) in CFLAGS.
1996-12-01 06:12:25 +00:00
cgd
8a3333b2a9
Fix an inconsistency that came in with Lite: setrq() was renamed to
...
setrunqueue(), but remrq() was never renamed. Rename remrq() to
remrunqueue().
1996-11-06 20:19:19 +00:00
hpeyerl
05fe4c93dc
Force some drive mappings for reasons I won't get into.
1996-10-21 16:43:05 +00:00
thorpej
43ba106ec2
Remove declaration for now-gone function.
1996-10-20 23:47:40 +00:00
thorpej
af8d8d2a56
Arrange this file into sections (configure(), root device goo, console goo,
...
old-config goo). Place old-config goo at the end so that it's easy to
#ifdef our or delete (muahahah!).
Garbage collect a couple of unused functions.
1996-10-20 23:46:06 +00:00
thorpej
bbdd41a2a7
Back out last change, and add a comment about what should happen.
...
(*grumble* will teach me to do a `make clean' next time.)
1996-10-20 23:23:28 +00:00
thorpej
7133ecf2ca
Don't need to mark 0-NBPG as VM_PROT_NONE in kernel_map anymore; the
...
first entry is now properly setup in kmem_init().
1996-10-19 21:11:32 +00:00
thorpej
7958973110
Set VM_MIN_KERNEL_ADDRESS to NBPG. This is a better way of getting
...
the kernel_map to treat page 0 properly.
1996-10-19 21:07:42 +00:00
thorpej
cf9b36ab1d
Set up a kernel_map entry for the text segment with protection of
...
VM_PROT_READ|VM_PROT_EXECUTE. The previous default (VM_PROT_ALL)
would cause the following scenario:
- someone attempts to write kernel text (my test was writing
to an offset of /dev/kmem which was known to be in the text
segment, while in single-user mode).
- enter trap() with MMU fault (because of RO pte).
- trap() calls vm_fault(), which looks up vm_map_entry for
fauling address.
- vm_fault interprets write fault and VM_PROT_WRITE (in VM_PROT_ALL)
as COW; new page allocated, data copied to new page, new page
mapped in at trunc_page(<faulting va>).
- wow, look at the fireworks!
Fixes two potential symptoms:
- kernacc() returns TRUE when checking for permission to write
an offset in kernel text, which is bogus, since the text has
been mapped RO by pmap_bootstrap().
- Handling of a stray pointer that attempted to scribble into
kernel text would not be executed properly.
1996-10-19 08:51:33 +00:00
thorpej
6126eea479
Tell the `upper half' of the VM system that page 0 isn't mapped. If we
...
don't do this, kernacc() will bogusly return TRUE for page 0, causing a
NULL pointer dereference in uiomove() when reading /dev/kmem.
Thanks to Scott Reynolds for noticing the problem.
1996-10-18 08:57:14 +00:00
thorpej
150c33e60b
Use ${INSTALL}.
1996-10-18 05:55:26 +00:00
thorpej
9f1ba5739f
Don't need "options GENERIC" anymore.
1996-10-15 22:01:53 +00:00
thorpej
608efe383e
Use the hp300 version of db_memrw.c (forgot to commit this change the
...
other day).
1996-10-15 22:00:31 +00:00
thorpej
d2daeab10d
Garbage collect the "kernel jump to zero" stuff. VA 0 is now invalid,
...
so the kernel will fault if the PC gets trashed like that.
1996-10-14 22:11:16 +00:00
thorpej
ac35089824
Couple of small changes:
...
- Fix up usage of MBD_ISPID().
- Ensure that we never deal with a NULL proc, and if our proc has
no pcb, punt. Suggested by Gordon Ross.
- Eliminate some redundant NULL pointer checks in the T_MMUFLT cases;
proc0.p_addr is now initialized early, and we make a single test
for sanity at the top of trap() now.
1996-10-14 20:06:31 +00:00
thorpej
a72edba413
Couple more small changes:
...
- Initialize proc0.p_addr just after setting up the kernel stack, to avoid
getting NULL pointers in trap(). Change suggested by Gordon Ross.
- Panic if main() returns.
- Tidy up a couple of comments.
1996-10-14 20:02:48 +00:00
thorpej
ffc4c833ea
Be careful not to deref bad pointers in the MMU fault handler! (yow!)
1996-10-14 08:07:23 +00:00
thorpej
7744dc270c
Couple of small changes to how kernel is mapped:
...
- kernel text is now always read-only.
- page 0 is invalid.
1996-10-14 08:05:37 +00:00
thorpej
4fa7362d31
Add a db_memrw.c that understands how to write to read-only kernel text
...
(remaps page read/write/cache-inhibit, does write, restores previous
mapping). Kernel text no longer needs to be read/write with DDB/KGDB
is in the kernel.
Based on a similar module written for the Sun3 port by Gordon Ross,
and modified somewhat by me.
1996-10-14 08:02:27 +00:00
thorpej
5b66e34d14
A few small changes:
...
- Offset kernel text one page. Stash the PA of this offset page for
use later.
- Add a few comments.
- Free up some registers earlier in the initialization process.
- Use a `prototc' to set the Translation Control register, rather
than relying on a2 pointing just past the MMU trampoline in the
high page. (Suggested by Charles Hannum.)
- Set VBR to the kernel vector table just before turning on the MMU.
- Just before rebooting, set VBR to 0, which is what the BOOTROM expects
it to be.
1996-10-14 07:58:54 +00:00
thorpej
27f386f5b2
Garbage collect some now unneeded code, and declare the punit device
...
driver entry point switch.
1996-10-14 07:34:48 +00:00
thorpej
415248a4f2
Move the machdep_start() code into machdep.c. No need for different
...
versions of this function anymore, now that we have a sane kernel setroot().
1996-10-14 07:33:43 +00:00
thorpej
18c2b0460a
Garbage collect some hackish code that was needed when we had a lame
...
kernel setroot(). The device type for network boot is set like any
other device now. Also, call the punit entry point for device drivers
to properly set `bootdev'.
1996-10-14 07:31:47 +00:00
thorpej
9ff0348a49
Implement ctpunit(), a "set physical unit" entry point.
1996-10-14 07:29:57 +00:00
thorpej
9d51a5dcf7
Add a standalone driver entry point that sets the physical unit (HP-IB's
...
equivalent of a LUN) in `bootdev'. This is needed to properly detect the
boot device if booted from the tape unit of an HP-IB disk/tape combo.
1996-10-14 07:29:15 +00:00
thorpej
84da57f13b
Clean up the code that sets `bootdev' based on information provided
...
by the BOOTROM. Also, give network devices the attention they deserve.
1996-10-14 07:26:06 +00:00
thorpej
23640d012f
New root device detect/set code, lifted mostly from NetBSD/alpha.
...
The "options GENERIC" entry in kernel config files is not longer necessary
for "swap generic" kernels. Uses new config constructs which work with
some glue in an old config environment. This code will support new config
with minimal changes.
1996-10-14 07:20:26 +00:00
thorpej
8acf9f0215
Set the device class on non-dull devices. This is a transitional thing.
1996-10-14 07:14:11 +00:00
thorpej
7d13691de1
Add some new config glue to the legacy hp300 device structures. This is
...
a transitional thing.
1996-10-14 07:11:50 +00:00
thorpej
01d74572dd
Default the HIL keyboard to "US ASCII". This should fix a bug where
...
an unrecognized keyboard produced garbage on keypresses in the kernel,
but worked in the boot program (which has this default). The bug is
that the keymap pointers are unitialized.
1996-10-14 07:09:41 +00:00
thorpej
7ee4744ed2
Need to include <sys/exec.h>.
1996-10-14 06:51:50 +00:00
christos
ad67e04154
backout previous kprintf change
1996-10-13 16:50:51 +00:00
christos
30b3cc3d09
backout previous kprintf changes
1996-10-13 03:14:05 +00:00
christos
60dd5ceebe
printf -> kprintf, sprintf -> ksprintf
1996-10-11 00:06:28 +00:00
cgd
e36e19cf1e
repoint at shared aout_machdep.h, not exec.h
1996-10-08 13:07:26 +00:00
cgd
472889f8e4
moved to aout_machdep.h (via repository copy)
1996-10-08 12:57:37 +00:00
thorpej
eeef0d1784
Prototypes for functions in locore.s and machdep.c (oops, forgot to
...
check this in the other day...)
1996-10-07 06:29:30 +00:00
thorpej
24d2e8ec5f
Sanity sweep.
1996-10-07 04:45:41 +00:00
thorpej
a2f9031d2f
Add support for copying the miniroot from HP-IB cartridge tape.
1996-10-07 04:45:10 +00:00
thorpej
bc504916f3
Garbage-collect some sun3-specific stuff, add some debugging code,
...
and KNF.
1996-10-06 19:07:53 +00:00
thorpej
61a0ffca58
Fixup (unused) netstrategy() routine's calling convention (just returns
...
EIO). Garbage collect unused netioctl() - conf.c redirects netioctl()
to noioctl().
1996-10-06 19:07:00 +00:00
thorpej
a3c29be5e0
Fixup ctstrategy() calling convention. The standalone ct driver
...
works again.
1996-10-06 19:05:27 +00:00
mycroft
6ea58d5fae
Serial console changes:
...
* Enable FIFO with trigger level 1.
* Set DTR and RTS so terminals are happy.
* Do not set IEN.
1996-10-06 01:42:45 +00:00
thorpej
67cd067f25
Nuke __BDEVSW_DUMP_OLD_TYPE.
1996-10-06 00:15:31 +00:00
thorpej
39cbdb7e9f
Fix kernel crash dumps. Still uses the old format for now.
1996-10-06 00:14:12 +00:00
thorpej
d01962702f
General cleanup:
...
- make a prototyping sweep
- do some garbage collection
- always print the status of enabling memory parity checking
Still some more to do.
1996-10-05 09:22:47 +00:00
thorpej
84b3384afb
Check for internal HP-IB in SYSFLAG much earlier (i.e. before the MMU
...
is turned on).
1996-10-05 09:19:58 +00:00
thorpej
f52b60c3a0
Prototype ledcontrol().
1996-10-05 09:18:22 +00:00
thorpej
2ec75a3c3c
Cast a volatile pointer to caddr_t for a call to badbaddr().
1996-10-05 09:17:38 +00:00
thorpej
a6a1f78d0c
Handle kernel trace traps and breakpoints like the Sun3 port:
...
- Only pass user trace traps and breakpoints on to trap().
Gets rid of some hair in the trace/breakpoint trap cases.
- Before entering the debugger, switch to a temporary
stack so that the debugger can alter the stack pointer.
- Add glue for KGDB (still not complete).
Some other minor cleanup:
- Protect against some bad pointer derefs.
- Be more a little more verbose when a fatal trap
occurs to aid debugging.
1996-10-05 07:24:10 +00:00
thorpej
8499e0131e
Handle kernel trace traps and breakpoints like the Sun3 port:
...
- Only pass user trace traps and breakpoints on to trap().
- Before entering the debugger, switch to a temporary
stack so that the debugger can alter the stack pointer.
- Add glue for KGDB (still not complete).
Clearly mark the MMU enable trampoline code.
1996-10-05 07:16:52 +00:00
thorpej
0ff075f6e7
Define FR_SIZE as sizeof(struct trapframe)
1996-10-05 07:11:44 +00:00
thorpej
2f9a90e967
Don't lower spl before calling main. For now, do it right before
...
calling hilinit(). Eventually, would like to enable them only after
autoconfiguration is finished.
1996-10-05 07:06:11 +00:00
thorpej
2793eb282e
If console is on an ite, make sure the HIL is initialized enough for
...
the keyboard to work. Fixes a bug where booting with `-d' worked
only on systems using a serial console.
While I'm here, eliminate some redundancy in the ite console intialization
code.
1996-10-05 05:22:04 +00:00
thorpej
5f728fb6de
Garbage-collect some now-unused PANICBUTTON code.
1996-10-04 22:22:15 +00:00
thorpej
608fae21af
Clean up handling of non-maskable interrupts.
1996-10-04 22:19:47 +00:00
thorpej
8672fd704e
At the end of the delay calibration routine, explcitly reset the timer.
...
This fixes a critical bug where a clock interrupt would happen sometime
between the call to hp300_calibrate_delay() and when proc0 is initialized.
This ends up dereferencing a bad pointer in itimerdecr(), which scribbles
over the first page of kernel text, specifically vectors 46 and 47 (decimal).
To complicate matters, the way the bug manifested itself was different
depending on whether or not DDB was configured into the kernel. When
DDB is in the kernel, kernel text is mapped read/write. When DDB is not
in the kernel, kernel text is mapped read-only. Note that the kernel
scribble happens early, typically before the console is initialized.
In the non-DDB case, the kernel will hang as soon as it's loaded because
the access causes a fault (before the console is initialized, so you
don't see the trap).
In the DDB case, the access does _not_ cause a fault. However, the
mechanism used to enter the kernel debugger is to issue a "trap #15".
Conveniently, this is one of the corrupted vectors (47), thus rendering
DDB useless (it actually caused a recursive panic/trap loop).
This _WILL_ be in the first 1.2 official patch.
1996-10-04 08:55:04 +00:00
thorpej
9f287be633
Add EXEC_AOUT to all kernels.
1996-10-03 01:25:32 +00:00
thorpej
0cb6f5925c
Correct an old comment; the 318, 319, and 330 _are_ tested (68020 w/ 68851).
...
(Read: I have a 319 :-)
1996-09-14 20:36:49 +00:00
thorpej
9476dabc1a
Correct a somewhat confusing typo in a comment, pointed out by
...
Scott Reynolds.
1996-09-12 18:54:23 +00:00
thorpej
be969d881e
Update for poll(2) changes.
1996-09-12 01:22:58 +00:00
thorpej
eae3f0bb96
When opening a disk for non-filesystem i/o, make sure we only return
...
an error condition when an error occurs.
Bug noticed by Terry Lambert <terry@lambert.org>.
1996-09-11 18:05:02 +00:00