Commit Graph

679 Commits

Author SHA1 Message Date
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
thorpej 5704683922 - Pull in some interesting changes from the Amiga trap.c:
* SunOS glue

	* 68060 exception frame size definitions

	* 68060 fault detection macros

- Use `cputype' rather than `mmutype' where appropriate.

- Play the prototype game.

This file is much closer to being sharable by all m68k ports.
1996-09-11 00:44:24 +00:00
thorpej f36cec2dfc Define the CPU_* constants from <m68k/cpu.h> for assym.h 1996-09-11 00:32:16 +00:00
thorpej 75b43e0aa6 Declare a `cputype' global, and set it as appropriate. 1996-09-11 00:29:28 +00:00
thorpej e469c7beca Use <m68k/cpu.h>. 1996-09-11 00:11:42 +00:00
thorpej 1710b024c0 Document COMPAT_M68K4K, but leave it disabled by default. 1996-09-10 22:26:50 +00:00
mycroft b3ffba62a6 Move strip(1) flags into a separate variable, so that $STRIP can
be passed to subordinate make(1)s.  Remove $TOUCH.  Add HOSTED_CC,
HOSTED_CPPFLAGS, and HOSTED_CFLAGS, and use them when depending genassym.
1996-09-09 21:06:55 +00:00
thorpej de5110f41e Use <m68k/exec.h>. 1996-09-08 01:00:35 +00:00
mycroft e6dd44f034 Use SIGBUS iff we get a legitimate bus fault. Use SIGSEGV for page protection
violations (per Solaris, SVR4, AIX, Linux, Irix, and SunOS).
1996-09-07 22:26:41 +00:00
mycroft 2bc736661a Implement poll(2). 1996-09-07 12:40:22 +00:00
thorpej e0775c12c8 Don't `config-dependent' machdep.c; we already depend on the Makefile,
which accomplishes the same thing.
1996-09-07 06:52:21 +00:00
mycroft fc3def4096 Remove duplicate declarations of LKM functions and macros. 1996-09-05 15:46:22 +00:00
mycroft b3eac79b64 tty stop functions really should return void, not int, and certainly not both. 1996-09-02 06:43:16 +00:00
mycroft 30a617c634 Wrap the default definition of `S' in `.ifndef'. 1996-08-31 21:40:47 +00:00
thorpej a90c2638f0 Add the United Kingdom and Swedish HIL keyboard maps to the kernels
used in the binary snapshots.
1996-08-25 01:22:13 +00:00
thorpej 9221f4ecc6 Add COMPAT_12 to all kernels, and COMPAT_11 to a few as well. 1996-08-22 21:02:49 +00:00
hpeyerl f5f1393c35 Get rid of dkn stuff. It's deprecated. 1996-08-18 17:01:53 +00:00
mycroft 558d72128e Put into . Remove hooks for `config-dependent' and
`device-driver' flags.
1996-08-12 00:51:24 +00:00
mycroft cf67f29afe * Add a HOSTED_C_C variable, which strips `-p', `-pg', and
`-nostdinc', and use it when building genassym.
* Use `-nostdinc' just to be sure we're self-contained.
1996-08-10 06:07:57 +00:00
mycroft f94052ed3a * Define CWARNFLAGS and MKDEP in some moderately consistent fashion.
* Make S expand to an absolute path at compile time.
* Use `-S' rather than `-x' to remove debugging symbols.
* Garbage collect unused variables.
* Reverse a handful of port-specific changes that do not correspond to
the common build model and are not needed.
1996-08-10 05:29:24 +00:00
mrg 5abbf990f3 Change reboot(2) to take two arguments: bootopt like normal and also
a boot string for firmware that can do this, such as the SPARC and
the sun3 models.  It is currently silently ignored on all other
hardware now, however.  The MD function "boot()" has been changed to
also take a char *.
1996-08-09 10:30:23 +00:00