Commit Graph

8872 Commits

Author SHA1 Message Date
matthias 89a49bedc6 * Set _kernel_text to the correct value.
* Fix a typo in delay().
* Disable generation of profiling prologue for proc_trampoline,
sigcode, idle, handle_trap, flush_icache, svc and interrupt.
* A few tweaks to make kgdb and ddb work nicer.
1996-10-09 07:45:13 +00:00
matthias 560bd7e107 * New file for kgdb support. 1996-10-09 07:45:06 +00:00
matthias 9c3592a5ca * Reduce softint latency.
* Pull over change from i386 to make statclock > (tty | net | bio).
1996-10-09 07:45:05 +00:00
matthias 1dceda47e0 * Make it work for NetBSD and not for mach. Most of
this was done by Phil Budne.
* Remove things not used by NetBSD.
* Make stacktracebacks work better.
1996-10-09 07:45:03 +00:00
matthias 4484a4406d * New file for routines common for kgdb and ddb support. 1996-10-09 07:45:00 +00:00
matthias 6f37f75ecb * Make it work for NetBSD and not for mach. Most of
this was done by Phil Budne.
* Move some functions shared with kgdb to db_memrw.c.
1996-10-09 07:44:59 +00:00
matthias 79ded0d7e1 * Make it work for NetBSD and not for mach. Most of
this was done by Phil Budne.
1996-10-09 07:44:56 +00:00
matthias afd88ad8ed * Remove unused function spinwait.
* Add Phil Budne's microtime.
1996-10-09 07:44:54 +00:00
matthias 00695d93ae * Now that ddb works, boot should set esym to the correct value... 1996-10-09 07:42:13 +00:00
matthias 483cff53cd * Add the README file from Ian Dall's original distribution. 1996-10-09 07:40:45 +00:00
matthias 84b238b8eb * Add files needed for kgdb and ddb.
* Delete (commented out) ntoh.s.
1996-10-09 07:34:42 +00:00
matthias f0c2efd752 * Remove ncr_minphys. Simply use minphys.
* Protect interrupt code with splbio.
* Don't use intr_disable/intr_enable in the pdma routines.
1996-10-09 07:29:58 +00:00
matthias f28c7ec9dd * Don't use ansi c prototypes. Use the __P() macro.
* Support for bpf added.
* Don't duplicate code, use ether_ifattach instead.
* Recode plipreceive and pliptransmit in assembler.
This improves performance from 40 kbyte/s to 50 kbyte/s
between a 30mhz pc532 and a 25mhz i386.
1996-10-09 07:29:55 +00:00
matthias f8c337b300 * Remove intr_disable/intr_enable stuff.
* Reduce softint latency.
1996-10-09 07:28:52 +00:00
matthias f673492195 * redefine MAXPHYS to 128k to support DAT-tapes with a
very large blocksize.
1996-10-09 07:28:50 +00:00
matthias b5542a0938 * The expression to which ICU_CLK_HZ is defined has to be
protected by parentheses.
1996-10-09 07:28:47 +00:00
matthias 0a6d52bb21 * Make it work for NetBSD (and not mach). Most of
this was done by Phil Budne.
* Delete unused macros.
* Define a few things to support kgdb.
1996-10-09 07:28:44 +00:00
matthias b1bd20fbe2 * Delete define for DELAY.
* Add prototype for delay()
* Add prototypes for functions from various
machine dependent files.
1996-10-09 07:28:43 +00:00
matthias 1ebd4878ae * Include profiling prologue not only when PROF is
defined but also when GPROF is defined.
* Provide _ENTRY and _ASENTRY to make it possible to
define functions that should not be profiled.
1996-10-09 07:28:40 +00:00
matthias b83348353f * ddb now works.
* Profiling works as well.
1996-10-09 07:21:47 +00:00
thorpej 401d011da6 Merge netbsd-1-2 branch back into mainline. 1996-10-09 00:14:32 +00:00
thorpej b1b86c0c98 Merge the netbsd-1-2 branch into the mainline. 1996-10-08 23:40:40 +00:00
thorpej d498950fe3 Merge netbsd-1-2 branch back into mainline. 1996-10-08 22:56:04 +00:00
jtc edd633aef1 Changed "../../m68k/fpe/files.fpe" to "arch/m68k/fpe/files.fpe" because of config changes 1996-10-08 18:03:00 +00:00
jtc 705b2e0726 Changed "std.sun3" to "arch/sun3/conf/std.sun3" because of config changes 1996-10-08 18:01:47 +00:00
jtc 149707f018 Add const qualifer to second arg of bus_print 1996-10-08 17:55:23 +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
cgd d557a6a159 change md_coredump struct to actually reflect the machine-dependent stuff
that's dumped.  use it, rather than a hack, to export the info to user-land
(gdb).
1996-10-07 23:57:21 +00:00
cgd 6ab18a1959 don't include <machine/exec.h> explicitly. No other changes needed, since
<sys/exec.h> was already being included.
1996-10-07 21:43:02 +00:00
cgd 7b01c01516 read user SP into core dump's trapframe 1996-10-07 19:09:17 +00:00
jonathan ba4d6af5fa Merge back MIPS3 locore stack-traceback code. 1996-10-07 11:20:53 +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
scottr 872c12f95f Update ROM vectors for PB 500 1996-10-07 04:05:02 +00:00
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
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
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
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 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 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
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 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
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 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
leo 8eb8b97265 Grok the broken ICD partition format. This should be part of the 1.2 patches. 1996-10-04 07:02:17 +00:00
leo d8a6bb6779 Add ch/ss/uk devices. 1996-10-04 06:56:25 +00:00
cgd 1f81754e6d switch to 'swap generic' since that works now (minimal diffs from GENERIC) 1996-10-03 20:47:19 +00:00
cgd ff5e6837e6 frob things so that RAMDISK_HOOKS in the 'right' way with 'swap generic'
and/or RB_ASKNAME.  (Basically, assume that if RAMDISK_HOOKS are included,
the default root device should be rd0a, etc.)
1996-10-03 19:57:58 +00:00
cgd 5e8dcd833f reword attachment printf 1996-10-03 19:54:45 +00:00
cgd 40f6aa4b69 add major info for 'rd' ramdisk devices. make parsedisk() static.
tolerate 'halt' at any of the boot-time prompts.
fix (fatal) bug in the 'swap device' prompt reprinting code.
1996-10-03 18:42:41 +00:00
cgd f328b34c8d clean up 1996-10-03 05:32:49 +00:00
thorpej 9f287be633 Add EXEC_AOUT to all kernels. 1996-10-03 01:25:32 +00:00
abrown 748b2c4bbe Add cgfourteen framebuffer to generic configs 1996-10-03 00:05:41 +00:00
mycroft d675cc33af Add examples of NTP, MROUTING, and serial console. 1996-10-02 23:56:43 +00:00
mycroft 99e5b1260c Add EXEC_ options. 1996-10-02 23:15:58 +00:00
mycroft 3d3546293e Update to match reality. 1996-10-02 23:14:04 +00:00
mycroft eb5fab46d8 No longer used. 1996-10-02 22:24:44 +00:00
mycroft 652ec49cc8 Update to current reality. 1996-10-02 22:20:51 +00:00
mycroft 284b1db215 No longer used. 1996-10-02 22:07:59 +00:00
cgd 000f32225c bump the version 1996-10-02 21:26:17 +00:00
cgd f0e79e47bf spaces/tabs cleanup 1996-10-02 21:18:45 +00:00
cgd 0783bd2801 clean and polish a bit 1996-10-02 21:06:56 +00:00
mrg 14d1592766 update for exec changes. 1996-10-02 07:11:45 +00:00
jonathan fa2f6c517a Update pmax GENERIC config to use revamped config files with per-model
include files containing model-specific I/O device configuration.

Add more options and devices (ccd, LKM, etc), as appropriate for
documentation and as examples in a "template" GENERIC config file,
even though not all of these work completely yet.
1996-10-02 06:41:13 +00:00
jonathan 15e3cf2814 Add explicit options for elf and script exec packges to std.pmax.
Add ECOFF exec option  to my own config file; untested.
1996-10-02 05:56:37 +00:00
cgd f3f6da3473 clean up a bit 1996-10-01 21:24:37 +00:00
cgd c143646f2f Translate Lev1map to physical address for CPU core header. 1996-10-01 20:21:37 +00:00
cgd 4588414318 move kvtol1pte outside of _KERNEL 1996-10-01 20:21:05 +00:00
cgd d928dbc14a support for new-style kernel core dumps for the alpha. Could probably
be cleaned up a bit, but it works.
1996-10-01 18:41:08 +00:00
cgd 0b1ff14ff3 first cut at alpha machdep kernel coredump header 1996-10-01 18:38:05 +00:00