Commit Graph

8872 Commits

Author SHA1 Message Date
christos 9db40d9ba8 Add md_flags so that we can have a fix-misalign-accesses flag. 1996-09-26 18:51:17 +00:00
gwr 79b5c352a5 Fix bounds_check_with_label() as suggested in PR#2598 (Thanks to der Mouse) 1996-09-26 18:10:21 +00:00
jonathan 9b5c58c457 * When configuring a serial console on a machine with a dc serial chip,
use the pre-autoconfig cold serial-console inititialization entry
  points from the bus-specific cfattach front-end code.
* Delete post-autoconfig code to switch from PROM output to kernel
  driver for machines with dc serial chips.
1996-09-25 21:16:00 +00:00
jonathan 874baa6c95 Rewrite dc7085 (dz-11 clone) driver as MI back-end, with bus-specific
cfattach front-end code:
  dc_ds for the decstation 2100( pmin), 3100 (pmax), and 5100.
  dc_ioasic for the decstation 5000/200 (3max) which does  not have a
  DEC TC-style IOCTL asic, but is configured as if it did.

* Add pre-autoconfig  code initialization of kerenl dc driver console I/O
  for remote serial consoles.  The hack to use PROM serial I/O until the
  dc device is autoconfigured is no longer necessary.
1996-09-25 20:48:51 +00:00
jonathan 75fd343a78 Build locore using merged mips (mips1, mips3) locore source:
* Add MIPS make variable pointing at $S/arch/mips
  * Build locore from $MIPS/mips locore source
  * Build locore.o and fp.o (fp emulation) from arch/mips locore source
  * Add target and rules to build pmax-specific locore code locore_machdep.o
    from $PMAX/pmax/lcore_machdep.S
1996-09-25 20:41:00 +00:00
jonathan 2ec085cba7 Back out part of revision 1.30:
>* Use `-S' rather than `-x' to remove debugging symbols.

because the pmax toolchain and gcc disagree about what is a "local"
symbol, and ld requires a "-x" to let elf2aout build bootable a.out kernels.
1996-09-25 20:35:16 +00:00
leo ffd121b446 More preps for et-driver. 1996-09-25 15:15:07 +00:00
leo f97dcb95be The KDASSERT macro is now defined in libkern 1996-09-25 15:10:15 +00:00
leo d9ec4b0569 Second arg to print function is now 'const char *' 1996-09-25 15:07:40 +00:00
leo 8e7f6c2cf5 Catchup with -current:
- Extra argument to boot()
  - select -> poll
1996-09-25 15:03:20 +00:00
christos 6dde563e8f Fix the entries for the cyclades multiport serial cards, but leave commented
out, like the other multiport cards
1996-09-24 19:10:41 +00:00
is e6edfde31b Rename the watchdog enable bit to reflect its polarity. 1996-09-24 17:11:53 +00:00
is 2b84ad395b Don't forget to shut up Fido. 1996-09-24 16:08:36 +00:00
jtc d137b0e8ba Added new macro _PROF_PROLOG which contains the code sequence needed
to call mcount().  This is needed because the ``link a6,#0'' insn used
trips up gcc's ANSI preprocessor (A # in a function-type macro must be
followed by a macro argument).  _PROF_PROLOG is also used in the i386
asm.h.

Solaris' asm_linkage.h has a MCOUNT macro similar to _PROF_PROLOG
except it expands to different code sequences based on whether a
function is being compiled with "prof" or "gprof" instrumentation.

I also discovered that the m68k ALTENTRY is very different than the
implementation used by other NetBSD ports.  Usually ALTENTRY simply
provides an alternate function entry point.  The m68k version takes a
second argument and jumps inside the second function when profiling is
enabled.  The m68k behavior is similar to the ENTRY2 macro found in
solaris.

Providing ENTRY2 and changing all the code that uses ALTENTRY to use
it would be a desirable change.
1996-09-24 00:05:55 +00:00
cgd c54f6f32d9 update for ELF toolchain support 1996-09-23 04:32:59 +00:00
cgd a47aa08a3e define ELFSIZE to 64, for exec_elf.h 1996-09-23 04:32:44 +00:00
cgd 3bd3e6250d checkpoint current development, add ELF toolchain build support 1996-09-23 04:30:56 +00:00
cgd 6048292ba8 add -DECOFF_COMPAT to CPPFLAGS if ELF_TOOLCHAIN not defined. 1996-09-23 04:28:46 +00:00
cgd c225908c90 add netboot 1996-09-23 04:28:23 +00:00
scottr 21761e4ec0 Update for recent config(8) changes. 1996-09-22 06:49:09 +00:00
cgd a5aa202ea9 kill unused options. no point in wading through lots of lines of commented
out garbage that will never be useful on this machine.
1996-09-22 03:00:32 +00:00
jonathan 3fd5d3ba03 Add prototype for function-pointer argument "strat" in definition of
readdisklabel(), writedisklabel(), and  compatdisklabel().
1996-09-21 11:25:51 +00:00
jonathan 3a51c3ecb0 Move old 4.4bsd/pmax driver declaration below prototypes of driver
entry points, for -Wall -Wstrict-prototypes.
1996-09-21 08:47:17 +00:00
jonathan 073248247b Add prototype for 4.4bsd/pmax scsi-driver d_done() entry point. 1996-09-21 08:45:41 +00:00
jonathan cb5732503f Add fake, bogus prototype for gettcinfo(), with "void" arglist.
(Not having a prototype  breaks -Wstrict-prototypes, this callback
 isn't used, and we don't know what the prototype should be.)
1996-09-21 03:33:18 +00:00
jonathan 456e858536 Update pmax framebuffer drivers for -Wall -Wstrict-prototypes:
* include <fb>var.h in <fb>.c
 * remove delete declarations for 4.4BSD-Lite console/kbd/mouse redirection
 * Add prototypes where not already present.
1996-09-21 03:25:15 +00:00
jonathan f78ff890d7 Change bt478.c to include bt478var.h from bt478.c.
Remove redundant declarations.
1996-09-21 03:22:24 +00:00
jonathan 2e4e1695fe Exported declararation of console-attach function for glass-tty consoles
on Decstation TURBOchannel fb drivers.
1996-09-21 03:06:36 +00:00
jonathan 5c2d5169b2 Exported declarations from brooktree bt478 chipset-level driver,
used in DEC pm framebuffers.
1996-09-21 03:02:10 +00:00
jonathan be78089fff * Add missing `UADDR' argument to RESTORE_USER_REGS() macro calls.
* Add back copyright notice and rcs ID from parent of previous
  revision (pre-merge).
1996-09-20 23:44:10 +00:00
thorpej ab49e34013 Don't attach an rcons to a cgfour/cgeight overlay plane; it doesn't work
properly.  Problem reported by Charles Hannum.

XXX This is temporary until someone with the hardware has time to fix it!
1996-09-20 17:35:49 +00:00
cgd 8644dce05c start on some network boot blocks. they work, but:
(1) the if_prom code needs to be cleaned up quite a bit
	    (right now it hard-codes client's ethernet address), and
	(2) much of this code (esp: getsecs.c, netboot.c, newvers.sh,
	    rpcc.S) should be shared with other Alpha boot blocks,
	    and dev_net.[ch] should maybe go in libsa proper.
1996-09-18 20:03:04 +00:00
cgd 675e59d762 fix for elf loading, from Matt Thomas 1996-09-18 19:34:33 +00:00
jonathan 4a465f05ff Decstation kernel config file for diskless installation:
root and swap on NFS, but includes disk and tape drivers.

Prune out most `optional' options to stay small in the hope of avoiding
PROM tftp bugs.
1996-09-18 14:10:24 +00:00
jonathan 420c045b41 Create broken-out config files for decstation baseboard devices.
Add sample config files that use them.
1996-09-18 13:43:37 +00:00
jonathan de735d506d Fix for problem report port-pmax/2173: the local variable "inst"
in the branch-emulation  code was uninitialized, due to a misplaced #endif.

Remove the relevant #ifdef (macro version of GetBranchDest), and move the
XXX note about r4000 branch targets to the  function definition.
1996-09-18 11:16:20 +00:00
briggs 197a86e724 Don't allow get_physical to attempt get_pte if mmutype is 68040.
(At least until get_pte works on the 040).
1996-09-18 03:33:23 +00:00
cgd 886dba6dff (1) split load-file functionality out from the 'main program' of the
boot block, since it will be shared with the network boot block.
(2) Kill a.out support, since it never worked was never used, and will
    never be.
(3) Add support for booting of ELF kernels, from Matt Thomas.  (Currently
    untested, but it compiles.)
1996-09-17 22:00:24 +00:00
cgd a68b586a74 add _rtt as an XLEAF into start which (like 'halt') just halts 1996-09-17 21:26:45 +00:00
cgd abcbfbdd93 use assembler directives and labels that make both the ELF- and ECOFF-
targeted assemblers happy.
1996-09-17 21:17:11 +00:00
cgd 8110fe7ca7 Differentiate between disked ("SCSI") and network ("BOOTP", but not yet MOP)
booted_dev specs.  Add code to find the device, if booted from the network.
1996-09-17 21:04:25 +00:00
cgd cab0e2aba3 hmm, fix an apparent typo (two letters got deleted!) 1996-09-17 20:58:58 +00:00
cgd 56386f3e35 Differentiate between disked ("SCSI") and network ("BOOTP", but not yet MOP)
booted_dev specs.  Add code to find the device, if booted from the network.
1996-09-17 19:46:37 +00:00
cgd 88a5419c15 print default device names slightly more nicely. (if not disk device,
don't print a blank before the close paren.)
1996-09-17 19:41:52 +00:00
jonathan ad20e52d11 Commit snapshot of reworked dc driver to trunk, to pull up fix for
serial consoles to the 1.2 branch.  Includes:
  * dynamically allocated new-config softc
  * remove dependencies on Decstation CPU type, use flags in softc instead.
  * pass in values for softc flags (q.v.) from parent-specific attach code
  * #ifdef out rts/cts flow control support until it's known to work on
    200s.
  * redo initialization of serial consoles (needs more work).
1996-09-17 19:34:40 +00:00
oki 82f8d6bb4b added ccd(blk)/ch/uk device 1996-09-16 20:08:56 +00:00
scottr d13cb4414c Convert `fpu_type' to the more consistent `fputype', and use the new
#defines from m68k/include/cpu.h.
1996-09-16 18:00:26 +00:00
cgd 66992c7399 sync with GENERIC: add pseudo-device 'rd' with one unit 1996-09-16 16:34:15 +00:00
cgd 0006f58df7 add EISAVERBOSE, TCVERBOSE as appropriate. Add UCONSOLE to all.
slight cleanup + sync.
1996-09-16 16:30:40 +00:00
leo 0e805391a3 Prepare for (soon to come) et4000 PCI console 1996-09-16 06:49:03 +00:00
leo ef074b3031 Prepare for (soon to come) et4000 PCI console. 1996-09-16 06:43:32 +00:00
leo edc2de87d0 Initialize MFP2 on both TT&HADES. 1996-09-16 06:28:41 +00:00
leo 11c0ef7354 atari_realconfig now defined in <atari/device.h> 1996-09-16 06:27:11 +00:00
leo 1b4ecd8255 Fix bootcode to work on the 68040. 1996-09-16 06:25:45 +00:00
leo 72c7d3589f Get it into sync with the previous changes to locore.s 1996-09-16 06:24:36 +00:00
leo 7a128f0c7e Sync with changes in the grf/ite/view system. 1996-09-16 06:22:27 +00:00
leo 70747dc24f Add support for Hades platform. 1996-09-16 06:20:44 +00:00
leo 4f51ebc528 - Add M68040 option where appropriate
- Reflect changes on the grf/ite/view system for et4000 console support
- Set timezone to 0
- Document FPSP option
1996-09-16 06:14:21 +00:00
leo 2eccad6548 Add macro's that do bclr/bset in a single instruction. 1996-09-16 06:03:58 +00:00
scottr 3cf197cef1 Somehow the last change got mangled. Do over. 1996-09-16 05:24:21 +00:00
jtk fc79deac52 when halting, attempt to turn off power using APM 1996-09-16 04:44:28 +00:00
scottr 014f910806 Add ZS_CONSOLE_ABORT 1996-09-16 04:35:25 +00:00
scottr debc473329 - Add a ZS_CONSOLE_ABORT option to enable a serial console break to
force a drop to the system debugger.  WARNING:  this used to be the
  default behavior!  Modify custom kernel configs accordingly.
- Check for ZS_HWFLAG_CONABRT in zs_abort(), and don't abort if it's
  not set.
1996-09-16 04:32:28 +00:00
scottr 696dd783a4 Move check for ZS_HWFLAG_CONABRT to zs_abort(). 1996-09-16 04:19:26 +00:00
jonathan 18bd3a86e3 * add RCS id.
* Allow configuring disks without tapes, or tapes without disks,
  as suggested in PR 2743.
1996-09-16 03:47:47 +00:00
cgd 5645b6ef46 simplify profiling entry. add 'label' argument tp PANIC, PRINTF, and MSG,
which is the label that the message string should be stored with.
1996-09-15 22:42:29 +00:00
cgd e025186655 save and restore registers symmetrically. don't forget to restore PV (t12). 1996-09-15 22:33:28 +00:00
cgd 89986fec30 like GENERIC, but uses built-in ramdisk image for root 1996-09-15 17:23:12 +00:00
cgd 3732f4dad6 add one 'rd' pseudo-dev. 1996-09-15 17:22:28 +00:00
cgd edf0333fe0 add ramdisk root hooks 1996-09-15 17:17:56 +00:00
cgd 17264a54f2 s/k0segtophys/ALPHA_K0SEG_TO_PHYS/ 1996-09-15 17:16:24 +00:00
cgd 3af6ed0256 pollin', pollin', pollin', make them drivers pollin'... (support poll()). 1996-09-15 17:15:26 +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
is 1cda8089e3 Kill two debug printfs whose output always haunt me in the boot
messages, but which I didn't find when looking for then.
1996-09-14 14:55:08 +00:00
scottr a4b22a046a Implement poll(2). 1996-09-14 06:08:01 +00:00
scottr 19d545f1ae - Implement poll(2)
- Convert splhigh() -> spladb()
- Guard references to adb_evq_tail and adb_evq_len!
1996-09-14 06:01:12 +00:00
scottr 81543dc7c9 Implement poll(2). 1996-09-14 05:54:53 +00:00
scottr 4ddcca6bc8 Update prototypes to match Chris' cfprint_t change. Also, update comments
in autoconf.h to reflect the mainbus.c split.
1996-09-14 05:43:24 +00:00
jtk 1541178d9b update the data segment mapping clamps to handle more screwy BIOS requests 1996-09-13 22:58:27 +00:00
jtk bfd321ca95 don't shift size fields; they're not descriptors 1996-09-13 03:10:56 +00:00
jtk 662c47ecd3 use ls, not ${LS}; remove now-unneeded Makefile.inc 1996-09-13 02:24:30 +00:00
jtk 04f1e23fe1 BIOS trampoline is a static beast; generate it in the sources like
syscalls.h & friends, and include it when needed from the source directory.
1996-09-13 00:02:36 +00:00
scottr e09160652b Sync with m68k/cpu.h changes. Also, test fpu_type instead of mmutype
when handling fp exceptions.
1996-09-12 21:25:31 +00:00
scottr d3beac22f0 Sync with m68k/cpu.h changes 1996-09-12 21:25:29 +00:00
scottr 027b51f1f9 Define spladb() (conservatively, at least for now). 1996-09-12 20:39:19 +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 5d570ded25 Update for the new way machine/cpu support is option'd in. 1996-09-12 07:36:37 +00:00
thorpej feb8b586ed Do the extern song and dance. 1996-09-12 06:14:04 +00:00
thorpej 927facbf09 Add some constants now needed by locore. 1996-09-12 06:05:42 +00:00
thorpej a1bffadb58 - Add hooks (just empty shells for now) for MVME-{162,167,177} models.
- Use information obtained from the Bug in locore to make identifycpu()
  produce some slightly more meaningful output.

- Garbage-collect some left-over hp300-specific stuff.
1996-09-12 06:02:35 +00:00
thorpej 6d0345fdb7 - Save the boot device info a little earlier in initializaion.
- Use the Bug to find out what kind of machine we're running on, and
  Do The Right Thing, namely:

	- Set `cputype' and `mmutype' as appropriate.

	- Crap out if the kernel doesn't support the machine we
	  booted on.

- Add hooks for MVME-{162,167,177} models; just an empty shell to be
  filled in later.

- Use `MMU_68040' rather than `-2' when checking the MMU type.
1996-09-12 05:57:43 +00:00
thorpej 917ef1b1be Grok machineid. 1996-09-12 05:48:54 +00:00
scottr d407764c72 Add uk, remove ch device 1996-09-12 05:34:59 +00:00
scottr 7a6fae71e8 Add ss, uk SCSI devices 1996-09-12 05:33:41 +00:00
thorpej 399b0e0f68 - Use MVME "machine options" to associate MVME models with CPU
options (a'la the hp300 port).
- Declare a "machineid" extern.
- Define constants for machineid, which match the Bug's idea
  of MVME model numbers.
1996-09-12 05:26:37 +00:00
thorpej 583912cbcf Grab the stat clock stuff from the SPARC port, and glue it to the
second timer on the PCC.
1996-09-12 05:10:44 +00:00
thorpej de02bf68b3 Update to use the new badaddr(); simplifies the code that attaches
pcc children somewhat.
1996-09-12 05:04:18 +00:00
thorpej 054bd4e4d0 Prototype badaddr(). 1996-09-12 05:01:47 +00:00
thorpej ca8ebd2ae7 Change badaddr() to take the size of the access to do, and nuke
badbaddr().
1996-09-12 04:59:56 +00:00
thorpej 2a57ba6633 Correct a comment, and add timer priming macros. 1996-09-12 04:54:19 +00:00
scottr a453e56ffd This is the development/debug machine 1996-09-12 04:50:43 +00:00
scottr 7b33c93009 Update to current reality. 1996-09-12 04:49:52 +00:00
thorpej 22adc20819 Add an FPU_UNKNOWN constant; just a placeholder for any unknown FPU. 1996-09-12 02:52:34 +00:00
thorpej 2b525e4952 Sync boot() with the hp300 version (basically, clean up a bit and
run shutdown hooks).
1996-09-12 02:45:57 +00:00
mrg c98a14ad90 update these for poll(2) changes. 1996-09-12 01:35:34 +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
jonathan 2bc8c4e5c2 Merge in 4.4BSD-Lite -> 4.4BSD-Lite2 changes. (untested).
The Lite2 changes  include:
  * Remove the last vestiges of high-bit-set-means-delay for output chars.
  * Handle the  2100/3100 having partial modem control on line 2 only,
    whereas the 5000/200 has modem control signals on lines 2 and 3.
  * Add RTS/CTS support for lines 2 and 3 on a 5000/200.
  * Add more s = spltty(); splx(s); where needed but not present.
1996-09-11 06:41:19 +00:00
explorer 5d76f7cbac remove unneeded placeholder 1996-09-11 05:24:25 +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 a437d4f6cb Use <m68k/cpu.h>. 1996-09-11 00:23:47 +00:00
thorpej e469c7beca Use <m68k/cpu.h>. 1996-09-11 00:11:42 +00:00
thorpej 521a717f6d Factor out common Motorola 68k CPU definitions from the m68k port
cpu.h header files.

Some more work could be done here, but it's a good start.
1996-09-11 00:08:52 +00:00
thorpej 7734e8980b Add COMPAT_M68K4K. 1996-09-10 22:48:05 +00:00
thorpej 9ff195106c Document COMPAT_M68K4K, but leave it disabled by default. 1996-09-10 22:45:17 +00:00
thorpej 1710b024c0 Document COMPAT_M68K4K, but leave it disabled by default. 1996-09-10 22:26:50 +00:00
thorpej 73a5b90800 Pull in the COMPAT_M68K4K stuff when appropriate. 1996-09-10 22:07:10 +00:00
cgd 0b77b04b6e set a0 to be the initial sp, and set pv to be program entry point. 1996-09-10 19:13:42 +00:00
jtk 2b5e1cd158 clean up missing prototype, extra variable 1996-09-10 11:22:33 +00:00
leo 0f821f9aa6 Conform to the hp300 style of trap.c as suggested by Jason. 1996-09-10 09:05:40 +00:00
leo 2340b495ce - Add suline() for the new trap.c (Shouldn't this move to m68k/copy.s?)
- Fix some bugs in the interrupt handlers introduced by the new mapping
  of the st io-area.
1996-09-10 08:58:42 +00:00
leo 7a87b91e9b Add suline/susword prototypes for new trap.c 1996-09-10 08:45:16 +00:00
jonathan be23611556 Apply diff from the 1.2 release branch, so that ugly IOASIC debugging
is disabled by default:
>revision 1.9.4.2
>date: 1996/09/09 20:19:11;  author: thorpej;  state: Exp;  lines: +2 -18
>Disable IOASIC_DEBUG so that autoconfiguration looks normal, by request
>of Jonathan Stone
1996-09-09 21:32:20 +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
mycroft dbacbd3636 Use machine/asm.h. Garbage collect. 1996-09-09 18:42:51 +00:00
cgd 7ba205c37e Sync the 53c94 SCSI driver with the sparc version. Update the DMA code to
match the interfaces required by the driver.
1996-09-09 18:10:35 +00:00
mycroft 379839a0df Make the build process more sane. 1996-09-09 18:07:40 +00:00
cgd adeb6b4058 replace sequences of 8 spaces with tabs (only one instance). kill
unnecessary newlines after return statements but before function
close-braces.
1996-09-09 18:01:30 +00:00
mycroft 825aca4d5d Oops; include paths are relative to $S. 1996-09-09 17:18:47 +00:00
mycroft 3fbde733bc Sync with version in ../boot. 1996-09-09 16:55:11 +00:00
cgd 2b118fc59b add entries for rd (cdev + bdev), ss (cdev), and uk (cdev). 1996-09-09 16:38:52 +00:00
mycroft 842eae0878 Add a file for local additions to GENERIC. 1996-09-09 16:37:08 +00:00
mycroft a693d5fcb0 Sync with GENERIC. 1996-09-09 16:33:20 +00:00
cgd 65538ec48d add specs for 'rd' 1996-09-09 16:31:36 +00:00
mycroft 02b3e8d73e Add ss, uk. Minor touchups. 1996-09-09 16:30:47 +00:00
mycroft 97c4dc0c80 Remove old comment about rd, and add to chrtoblk[]. 1996-09-09 15:51:34 +00:00
jtk 4b9b2da0f5 I meant to depend on apm.h, not Makefile 1996-09-09 11:34:01 +00:00
jtk ec11419661 fix compilation problems when APM not configured 1996-09-09 11:31:40 +00:00
jonathan de227b74e6 * Add missing printf("\n") at end of attach routine in cfb, sfb, pm drivers. 1996-09-08 19:28:03 +00:00
oki 9682743e21 delete unused prototype. 1996-09-08 18:46:12 +00:00
mycroft a32047fa0c Add cdev_decl(rd), for previous. 1996-09-08 15:59:56 +00:00
jtk 3b509ead1a whoops, forgot to include flags details in bioscall() comments 1996-09-08 15:51:39 +00:00
jtk 1a1feb3827 change APM to use new almost-generalized BIOS trampoline:
/*
 * void bioscall(int function, struct apmregs *regs):
 * 	call the BIOS interrupt "function" from real mode with
 *	registers as specified in "regs"
 *	(for the flags, though, only these flags are passed to the BIOS;
 *	the remainder come from the flags register at the time of the call:
 *	(PSL_C|PSL_PF|PSL_AF|PSL_Z|PSL_N|PSL_D|PSL_V)
 *
 *	Fills in *regs with registers as returned by BIOS.
 */

Thanks to Charles Hannum for complaining and inspiring me to hack this
together.
1996-09-08 15:43:37 +00:00
jtk fda7345c98 re-implement BIOS trampoline as a more general-purpose, reusable trampoline.
calling interface (via a grapple in locore.s) is:
/*
 * void bioscall(int function, struct apmregs *regs):
 * 	call the BIOS interrupt "function" from real mode with
 *	registers as specified in "regs"
 *	(for the flags, though, only these flags are passed to the BIOS;
 *	the remainder come from the flags register at the time of the call:
 *	(PSL_C|PSL_PF|PSL_AF|PSL_Z|PSL_N|PSL_D|PSL_V)
 *
 *	Fills in *regs with registers as returned by BIOS.
 */

still some generalization to do (moving this to a better named location,
cleaning up #if tests from NAPM > 0 to something else to allow easy
sharing by other drivers)

Thanks to Charles Hannum for complaining about the previous BIOS grapple
and inspiring me to hack this one together.
1996-09-08 15:36:51 +00:00
jonathan 50326ae738 * Call doshutdownhooks() before rebooting.
* Split the machine-dependent part of  rebooting out into a separate
  function, prom_halt(), making boot() a candidate for moving into
  mips/mips.
1996-09-08 11:49:49 +00:00
is 3efed5ad51 s/reutrn/return/, although in normally inactive code. 1996-09-08 11:21:11 +00:00
is 569aabbde8 "Never type in what you can equally well cut'n'paste." - (myself) 1996-09-08 07:15:56 +00:00
mycroft 1dce8ddb7f Add char device for `rd'. 1996-09-08 03:31:39 +00:00
thorpej de5110f41e Use <m68k/exec.h>. 1996-09-08 01:00:35 +00:00
thorpej c5e5dec3b7 All of the m68k ports' exec.h's were essentially the same. Merge them.
Override the N_PAGSIZ() macro; this one checks the MID of the executable
and returns the appropriate page size.
1996-09-08 00:57:29 +00:00
mycroft 9110bcca3a Add uk device. 1996-09-08 00:46:57 +00:00
mycroft 9db220fa82 Use cdev_uk_init(). 1996-09-08 00:40:08 +00:00
mycroft 9e7223f23d Use cdev_scanner_init() rather than local cdev_ss_init(). 1996-09-08 00:11:51 +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 f14cece0ae Turn off DEBUG by default now. 1996-09-07 20:26:09 +00:00
thorpej 26ecf6820b Use the stock ld(1) and the srec program to generate the serial line
bootstrap program.
1996-09-07 19:23:03 +00:00
thorpej a27c9a94f5 Add a public domain S-record generator. 1996-09-07 19:21:32 +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
mhitch b7ef581afb The MAXINE serial console is on scc0 (the only SCC on the MAXINE) instead
of scc1.  Fix the check of which scc to initialize the console serial line
so that the MAXINE serial console will work.
1996-09-07 01:25:37 +00:00
mhitch 3686def7f7 Add parenthesis to correct a check for current SII state, so that a forced
disconnect will be done (it would never have been done with the old code).
1996-09-07 01:19:45 +00:00
jonathan ac5bac38be * This driver initialized mfb devices to black-on-black. If being used
as a console, initalize as white-on-black so console messages are legible.
  (Sean Davidson reports that rcons still messes up the display, perhaps
   due to using the wrong pixel depth).
1996-09-06 07:01:06 +00:00
cgd e6e14683fe note that the AlphaStation 500 works (with the same caveats as the
AlphaStation 600).
1996-09-06 04:01:37 +00:00
mycroft fc3def4096 Remove duplicate declarations of LKM functions and macros. 1996-09-05 15:46:22 +00:00
thorpej fa0e4a3082 Make the SPARC kernel compile again after recent tty cdevsw changes. 1996-09-05 09:32:47 +00:00
thorpej d1384a9b2a Don't include the FDDI drivers in the install kernels. It's highly
unlikely that these will be needed in an install situation, and
we need the space.
1996-09-04 07:35:07 +00:00
mycroft 086bf59214 Remove gratuitous insn. 1996-09-03 02:07:34 +00:00
mycroft aeda55543b Splice in Ignatios' bus error detection code. 1996-09-03 02:07:02 +00:00
mhitch 704caddf5f Fix several errors when setting a color map entry for the maxine display.
1. Start at the specified entry instead of entry 0.
2. Use the blue value instead of the green when setting the blue color entry.
3. Don't use the starting index again for storing the saved entry - the cmap
   pointer was previously initialized using the starting index.  This fixes
   a hard hang on the maxine when console output is done after calls to
   set the color map (usually by the X server).
1996-09-02 17:35:52 +00:00
is 905db38340 Add IP multicast support as per RFC 1122 section 3.3.7 to ARCnet.
"The mapping of IP Class D addresses to local addresses is
         currently specified for the following types of networks:
	 [...]
         o    Any network that supports broadcast but not multicast,
              addressing: all IP Class D addresses map to the local
              broadcast address."
1996-09-02 17:28:22 +00:00
mycroft 0a59726320 Fix obvious typo. 1996-09-02 12:42:11 +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
mycroft 42c80a3779 Oops. Add patterns for PCI BusLogic cards. 1996-08-31 20:43:53 +00:00
mycroft 06349d0f45 Update for BusLogic and UltraStor changes. 1996-08-31 20:39:14 +00:00
mycroft 0947abc4ec Oops; fix typo. 1996-08-31 05:10:03 +00:00
mycroft fbfd18b011 Make sure b_resid is always set before biodone(). 1996-08-30 19:59:07 +00:00
thorpej 0794023752 RCS id police. 1996-08-30 17:43:56 +00:00
mycroft ecde95b64d clock >= tty | net | bio 1996-08-30 15:39:31 +00:00
jtk f6fa8f12a6 change to use consistent APM_ constant names 1996-08-30 02:37:04 +00:00
jtk f613796771 make all constants use APM_ prefix, and some other minor cleanup so that
this can be the sole APM include file
1996-08-30 02:36:00 +00:00
jtk dbeeead15d clean up includes and uses of constants so that we use one include file,
<i386/include/apmvar.h>
remove some files we don't need anymore
1996-08-30 02:32:13 +00:00
thorpej 9fd32a826d Fix name conflict with boot() prototype in <sys/reboot.h> 1996-08-30 01:34:01 +00:00
mark 97c857ef9c Initial commit of the prom interface code for VLSI RC7500 motherboards. 1996-08-29 22:35:41 +00:00
mark bda575c253 Removed stub code for copystr(), copyinstr() and copyout() now that
optimised assembly versions are in place.
Added support for mounting an NFS filesystem as the root filesystem even
for generic configs.
Don't hardcode the number of spl levels use the define in psl.h
1996-08-29 22:33:24 +00:00
mark 64860a1d74 Print the instruction word for undefined instructions. 1996-08-29 22:25:26 +00:00
mark 7568e05e32 Added machine command for reporting panic related information.
Trap undefined instructions that are used for breakpoints for all
processors modes. If the mode was USR32 then post a SIGTRAP signal.
1996-08-29 22:23:45 +00:00
mark 2fb1f405f7 Added a new machine function to report information following a panic
e.g. panic string, message buffer etc. This is to aid debugging panics
following a panic while X was running as X will swallow all the panic
text.
1996-08-29 22:21:06 +00:00
mark 75a39e190b Replaced the generic copystr() and copystrinout() functions with
optimised copystr(), copyinstr() and copyout() functions.
This removes the need for the copy{in,out}() stub code in stub.c
1996-08-29 22:18:09 +00:00
mark 8b3ff9c94f Added support for NFS root and swap.
Define argdev here.
Fixed the interpreting of the root and swap devices passed from the
boot loader.
1996-08-29 22:08:58 +00:00
mark 468b7ec21b Define swapdev here as all the other ports do. 1996-08-29 22:05:50 +00:00
mark 2c16eec75d Removed declarations of swapdev and argdev. These are now defined
elsewhere.
1996-08-29 22:03:53 +00:00
pk 686dd328c0 Faster checksumming, contributed by Zubin Dittia. 1996-08-29 20:14:49 +00:00
thorpej c4366945e5 Quiet the ahc driver down a bit by only enabling some of less useful
messages #if defined(DEBUG) in the NetBSD case.
1996-08-28 23:39:40 +00:00
thorpej 33dec3a69a Correct a comment. 1996-08-28 23:02:22 +00:00
thorpej 1a5971cc12 Renate this file; I guess I should have taken a vote :-) 1996-08-28 23:00:46 +00:00
cgd 71ad30d0e9 (1) set scsi_link channel to either the appropriate channel (if a
multi-channel driver), or to SCSI_CHANNEL_ONLY_ONE if a
    single-channel driver.
(2) use scsiprint() rather than a locally-defined autoconfig print
    function, and kill any locally-defined print function.
1996-08-28 18:59:15 +00:00
thorpej 4deb6e56b8 Kernel configuration for "NetBSD1", NetBSD.ORG's new mail server.
(This would be a good reference kernel for others setting up network
server systems...)
1996-08-28 07:17:58 +00:00
jonathan 703e546127 Add mrg's "options COMPAT_12" back into the trunk. 1996-08-28 05:50:59 +00:00
jonathan 18db5ea067 * Rename miniroot GENERIC kernel to GENERIC
* Add changes needed/used to build 1.2 GENERIC kernel:
  * Delete obsolete and ambiguous DS5000 option.
  * Add CPU_R3000 which is now required to compile in mips1 locore support.
  * Add an explicit declaration of HZ.
  * back out COMPAT_12 for this revision.
1996-08-28 05:49:35 +00:00
mrg 358f853f46 re-order to allow NBPG/PGSHIFT/PGOFSET to work always. 1996-08-28 03:01:27 +00:00
cgd 2a73ef60b7 change cfprint_t type definition to take a const char *, rather than
a char *, because that's what was really intended, and because
if the print function modifies the string, various things could become
unhappy (so the string should _not_ be modified).
1996-08-27 21:53:46 +00:00
cgd 2c47809239 include <sys/systm.h> for printf prototype 1996-08-27 16:28:08 +00:00
jonathan 73a5d45710 * Add initialization of colourmap array when using mfb as a console.
* Add interrupt handler for 3MIN, where we cannot disable TC slot interrupts.
* Change mfbinit() signature to match other (pmax) TC framebuffer init
  routines.
* TODO after 1.2: add {cfb,mbf,sfb}var.h. Declare init functions there.
1996-08-27 02:32:48 +00:00
mrg b8e9f36083 add COMPAT_12. 1996-08-26 23:39:36 +00:00
mrg 4daafadec3 add COMPAT_12. 1996-08-26 23:39:21 +00:00
scottr 7dff0aa247 After servicing an interrupt, check to see that there's not another
one pending before we clear the interrupt flag.  This avoids a condition
where the line appears to go catatonic (which is particularly easily
triggered by pppd).  From Bill Studenmund <wrstuden@loki.stanford.edu>.
XXX - we should probably log this if it gets excessive.
1996-08-26 14:09:19 +00:00
thorpej 2d88fe9293 Old-style disk instrumentation is long gone, buster! 1996-08-26 06:47:42 +00:00
thorpej 3eaf7130d9 Update for structure member name changes made in the MI code. 1996-08-26 06:39:03 +00:00
jtk b86b695240 add Advanced Power Management driver
Includes bootstrap support from FreeBSD (Tatsumi HOSOKAWA and <ukai>)
1996-08-25 23:38:57 +00:00
thorpej 7e7c76ba78 Correct mistakes similar to those made in cgfour.c: Log message from
cgfour.c:

Fix a typo and an error in color plane offset calculation.  Submitted by
Konrad Schroder <perseant@hitl.washington.edu>, PR #2695.
1996-08-25 07:47:34 +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
leo 4c996d1a2a Fix a compiler error. 1996-08-23 20:06:29 +00:00
leo 2df99561c9 - Make the Hades a valid machine type
- Add some 68040 specific prototypes.
1996-08-23 11:21:01 +00:00
leo 0f6a2c3cef - Make all definitions relative to 'stio_addr'
- Add the PCI areas.
1996-08-23 11:17:00 +00:00
leo 3a68f68754 Don't use an absolute I/O adress. 1996-08-23 11:14:59 +00:00
leo 26039da980 Fix some compiler warnings. 1996-08-23 11:12:51 +00:00
leo dd183a092a Recognize the Hades as a valid machine type. 1996-08-23 11:11:51 +00:00
leo d546be9627 Make the fpu config info print somewhat nicer. 1996-08-23 11:10:10 +00:00
leo 6ab410f919 - Make it compile & work for the 68040
- Map the various I/O areas just below Sysmap
- Cleanup a bit
- Fix machine-type detection to recognize the Hades.
1996-08-23 11:07:56 +00:00
cgd b9a7acad48 define a new frame buffer type code for the TGA2 1996-08-23 00:50:25 +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
jonathan 562faf95ac Re-apply to the trunk a change that was misapplied to 1.2 release branch:
>apply old name change, MachEmptyWriteBuffer -> wbflush()
1996-08-22 04:37:41 +00:00
jonathan eb75b94621 Re-apply change that was misapplied to 1.2 release branch to trunk:
>Cosmetic changes to pass -Wall -Wstrict-prototypes -Wmissing-prototypes:
> * remove inline prototypes for keyboard redirection,
>    include {dc,scc,dtop}var.h files instead.
> * add prototype for rcons_connect().
>
1996-08-22 04:29:43 +00:00
jonathan 9a8c8b9858 * the 3MIN does not mask non-enabled TC interrupts, and the SFB generates
a vertical-blank interrupt. Add a handler to clear the interrupt, and
  establish that  handler if running on a 3MIN.
1996-08-22 04:17:23 +00:00
mark 4be6fcfb6e Only disable IRQs during cpu_switch(). FIQs can be left activeas they cannot
interfere with a context switch.
Fixed several comments.
1996-08-21 20:29:19 +00:00
mark 4522daecc9 Added defines for more proc structure fields (used by the FPE). 1996-08-21 20:26:41 +00:00
mark 7b0a0c0a24 Initial commit of the NetBSD/arm32 kernel TODO list. 1996-08-21 20:25:04 +00:00
mark 9d18e41fd8 No longer need the relocation function arm_fpe_mod_reloc() as this is now
sorted out at link time.
fpe_arm_header is now the header structure for the fpe and no longer
a pointer to a header structure.
1996-08-21 20:21:05 +00:00
mark 7b8910c01d Vastly simplified the FPE stubs code now that there are labels for all the
core entry points. i.e. the linker does the work rather than the stub code.
Optimised transferring the trapframe between UND32 and SVC32 mode stacks
in the fpe_post_proc handler.
Added experimental code to handle must of userret in UND32 mode. This means
that the copy of the trapframe and the switch to SVC32 mode is only needed
if mi_switch() has to be called. (This saves a vast number of pointless
trapframe copies).
1996-08-21 20:16:30 +00:00
mark 3142731d09 Re-written FPE core header.
Added branches relative to the start of the module and labels to the various
entry points.
All other offsets are now relative to _fpe_arm_start.
This removes the need for boot time relocation of the FPE.
1996-08-21 20:10:04 +00:00
mark e37583ac84 Removed the prototype arm_fpe_mod_reloc(). 1996-08-21 20:06:26 +00:00
mark 66d9ef4edb Updated with more info on the ARM7500 IOC/IOMD. 1996-08-21 20:00:50 +00:00
mark 9c8e5632da Replaced arch/arm32/arm32/fusu.c with arch/arm32/arm32/fusu.S
Added new iomd device.
1996-08-21 19:56:00 +00:00
mark 45bd77d893 Initial commit of a new iomd device. This device manages IOMD devices
for all ARM processors.
1996-08-21 19:53:21 +00:00
mark 64c91a1cc3 Report EASI space timings when probing the podule bus. 1996-08-21 19:46:47 +00:00
mark e8f3059a07 Define EASI space cycle types.
Added macro for setting the EASE space cycle time for a podule.
1996-08-21 19:44:53 +00:00
mark e53ec9745b Updated to work better with the new assembly functions like fuswintr().
Removed calls to traceback() as this info can be obtained via DDB after
a panic if needed.
1996-08-21 19:42:36 +00:00
mark 165dc50b4c This file can be removed now that the stubs functions it contained have
been replaced with proper assembly version in fusu.S
1996-08-21 19:38:39 +00:00
mark e75becbba3 Initial commit of proper [fs]uword() and associated functions. This
replaces fusu.c which comtained horrible stubs to things like copy{in,out}().
1996-08-21 19:37:43 +00:00
mark 663aa7fac0 Removed the #if notyet guards as this code now works.
Optimised the imsw16() and outsw16() functions by using ldm and stm
instructions.
1996-08-21 19:19:44 +00:00
mark caddfcc9e1 Make sure we have at least 1 rtc device configured otherwise
inittodr() and resettodr() will not work.
1996-08-21 19:07:19 +00:00
mark 88331f5ddc Removed debugging/diagnostic tracebacks. We have DDB now so can traceback
from there after the panic.
Guarded several checks with #ifdef DIAGNOSTIC
1996-08-21 19:04:17 +00:00
cgd 2d7e005418 add COMPAT_12 to all configs 1996-08-21 16:25:05 +00:00
cgd 78b0ddd68b wrap a debugging printf in NEW_PMAP 1996-08-21 15:54:18 +00:00
cgd c8fbe2de87 PSL_IPL_HIGH -> ALPHA_PSL_IPL_HIGH 1996-08-21 15:53:26 +00:00
jonathan acebbfc2bd Fix sfbinit() call to pass four arguments, not three, matching the
signature in sfb.c, which was changed to support multiple sfb devices.
1996-08-21 14:02:48 +00:00
cgd 137c61ba70 OLD_PMAP -> NEW_PMAP 1996-08-20 23:18:44 +00:00