Commit Graph

22368 Commits

Author SHA1 Message Date
scottr
f8b0c86aa8 The 68LC040 generates a format 4 stack frame for floating point
exceptions, which puts the address of the instruction we faulted
on in a different location.  Copy it and handle as we normally would,
restoring the saved PC before returning.

The FPE should probably be reworked to take advantage of the 68LC040's
precalculated effective address, at some point.
1996-10-07 03:16:47 +00:00
jonathan
45c47f41aa Fix for elf{32,64} changes: make <mips/reloc.h> re-includable,
Use elf_xxx section names (not elf32_xxx)in mips/mips/elf.c
1996-10-07 03:15:03 +00:00
jonathan
fbdaac9a7a Use "MIPS1" and "MIPS3" as preprocessor tokens to select {config,compile}-time
support for mips-1 (r2000 family) and mips-3 (r4000 family) CPUs.
Avoids inconsistent use of CPU_R2000 and CPU_R3000.
1996-10-07 02:17:33 +00:00
scottr
4d11703980 Disable 040 caches in doboot(), and some minor stylistic changes to make
the hand-coded assembly consistent throughout.
1996-10-07 01:37:20 +00:00
chuck
b10785c0e4 fix "control reaches end of non-void function" in check_eh() for -Werror. 1996-10-06 21:24:36 +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
pk
c51687391d Actually set the RTLD_DL flag in dlopen'ed shared objects, per PR#2791. 1996-10-06 19:03:32 +00:00
cgd
c11ba5f711 key on ELF_TOOLCHAIN being defined (presumably in /etc/mk.conf)
to signal that the build is happening on a machine with an ELF
toolchain.  This is temporary, until a better toolchain-recognition
scheme is worked out.
1996-10-06 18:32:22 +00:00
cgd
d703de28b2 include stdlib.h to bring malloc()'s prototype into scope. 1996-10-06 18:27:25 +00:00
cgd
5d2117b218 don't include bsd.subdir.mk, especially _before_ bsd.prog.mk:
(1) bsd.prog.mk already includes bsd.subdir.mk, and
(2) including bsd.subdir.mk first screws up the clean/cleandir targets
    in such a way that the program's objects don't get blown away
    when you make clean.
1996-10-06 18:08:15 +00:00
jonathan
71d4d3075e Commit 1.2 release branch changes (1.6.4.1) back onto main branch. 1996-10-06 06:46:34 +00:00
jonathan
998ce62cdf Update pmax drivers to use "const" on 2nd arg to cfprint_t:
turbocnhannel: include/tc_machdep.h, tc/tc_subr.c, tc/asic.c
    kn01 baseboard: pmax/mainbus.c
1996-10-06 06:29:51 +00:00
mycroft
767522373b If we get a RXRDY interrupt, but RXRDY is not set in the LSR, briefly set IER
to 0.  This fixes a condition where some UARTs send an infinite stream of
RXRDY interrupts.
1996-10-06 01:52:26 +00:00
mycroft
d1f08e3e87 Serial console changes:
* Enable FIFO with trigger level 1.
* Set DTR and RTS so terminals are happy.
1996-10-06 01:46:04 +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
mrg
6ad189ffbb minor copyright update. 1996-10-05 23:50:49 +00:00
mrg
a632bcbe9c update for kern/sa lib Makefile.inc changes. 1996-10-05 23:46:43 +00:00
mrg
7b71cdec46 minor copyright update. 1996-10-05 23:41:53 +00:00
leo
84ed172edb Minimal bus.h. Together with the minimal pci implementation, we have just
enough functionality to find a VGA card....
Will be expanded when I buy more pci-cards ;-)
1996-10-05 21:45:30 +00:00
leo
080ee49d98 minimal pci support 1996-10-05 21:41:36 +00:00
christos
1b1e1884b3 Changes from file-3.21 1996-10-05 20:20:24 +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
scottr
d2be4a69c2 Expand tab in copyright message; it loses on some consoles. 1996-10-05 06:32:43 +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
jtk
fb2727b7e6 update to compile; needs new enum name 'Elf_sht_progbits' 1996-10-05 00:12:49 +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
5c34a4ce35 Use FBTYPE_RESERVED3 for our `unknown' fbtype ... RESERVED1 seems to
have disappeared.
1996-10-04 20:35:53 +00:00
thorpej
3db7555465 Returning ENODEV is not correct in a poll entry point. Instead, since
read/write returns an error, use seltrue().
1996-10-04 20:34:33 +00:00
cgd
c488b75b83 kill misnamed __indr_references() macro, that would have broken things
if it _had_ been properly named.
1996-10-04 19:30:04 +00:00
cgd
010a229c99 compare client names case-insensitively, since hostnames are case-insensitive. 1996-10-04 19:00:31 +00:00
scottr
d12b257695 Fix FMOVEM emulation; postincrement modes use different ordering than
predecrement modes, per 68K Programmer's Manual p. 5-88.  Pointed out
by Takeshi Nakayama <takeshi@sakabe.nuie.nagoya-u.ac.jp>, verified by me.
1996-10-04 18:07:24 +00:00
scottr
6f72cdccd4 Remove outdated BUGS section (from Mike Long, PR 2804) 1996-10-04 16:59:46 +00:00
scottr
d036bd234e Sync with Chris' changes to the alpha setroot() and friends to resolve some
problems with entering "halt" at prompts.
1996-10-04 14:07:03 +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
leo
3b5c181c8b Checkpointing my et4000 work. Note that the et-console will not be
functional until the minimal pci-support is checked in.
1996-10-04 07:27:52 +00:00
leo
f5fd8ff1f9 Additions for the et4000 driver & pci-bus.
Note that there are still missing pieces so both et4000 & pci can not yet
be used.
1996-10-04 07:12:39 +00:00
leo
982a1c25f7 Add the COMPAT_12 options. For GENERIC, also add the ch/ss/uk devices. 1996-10-04 07:08:28 +00:00
leo
c2f94265a2 Only prototype the writeback() function when the M68040 option is defined. 1996-10-04 07:04:46 +00:00