Commit Graph

9147 Commits

Author SHA1 Message Date
mark 2c6e3deb80 Not needed as this file has been merged into the main TODO list. 1996-10-14 22:22:12 +00:00
mark 77cd383ae6 Updated. Now includes things that I hope users will work on as well. 1996-10-14 22:21:15 +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
is 8c0a8c37fe KNF patrol. 1996-10-14 18:40:15 +00:00
jonathan 19c816fd6b Delete #ifdef'ed-out TC support (for 5000/200). 1996-10-14 17:28:46 +00:00
jonathan f2c95d6cce Use kernel driver for serial console. PROM console output no longer used at all. 1996-10-14 17:15:42 +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
scottr 534c6caa6b Add EXEC_AOUT and EXEC_SCRIPT 1996-10-14 07:01:10 +00:00
thorpej 7ee4744ed2 Need to include <sys/exec.h>. 1996-10-14 06:51:50 +00:00
jonathan 9d781ce37f Back out second inclusion of <sys/poll.h> from duplicated poll(2) changes. 1996-10-14 04:55:26 +00:00
jonathan 02fb4a1255 Back out previous revision's change to use mips family-independent locore
initialization.
Locore doesn't (yet) set up cpu_id early enough for mach_init() to use it.
1996-10-14 04:31:57 +00:00
mhitch b4355fb150 More fallout from printf->kprintf->printf: printf in sys/systm.h now
conflicted with stdio.h.  Get rid of sys/systm.h, as it isn't needed.
1996-10-14 03:04:32 +00:00
mhitch be3a168305 Removed stray ";" so conditional return is really conditional. Fixes
autoconfig display for xcfb.
1996-10-14 01:39:57 +00:00
jonathan 27ec6276b8 Rename mips CPU-family locore prefixes for case-consistency:
mips_r2000_, mips_R2000_ -> mips1_
    mips_r4000_, mips_R4000_ -> mips3_
(which are also, for mnemonic reasons,  consistent with gcc flag usage,
 rather than using mipsI_ and mipsIII_).
1996-10-13 21:37:35 +00:00
mhitch bc4aec6c5b Fix error from in_addr_t changes by christos: htonl() takes in_addr_t
parameter, not in_port_t.
1996-10-13 20:59:02 +00:00
cgd 01565a3ced typedef, not typeded 1996-10-13 19:57:59 +00:00
cgd 77483f297b increment cnt.v_intr for I/O device and clock interrupts 1996-10-13 19:57:49 +00:00
christos 05d14bf764 catch up with Jason's changes 1996-10-13 18:28:49 +00:00
christos ad67e04154 backout previous kprintf change 1996-10-13 16:50:51 +00:00
is 65e53018c2 Fix an error message, and extend it to indicate possible workarounds. 1996-10-13 13:39:52 +00:00
jonathan 8b2066b7ad Remove sys/arch/pmax/pmax/{locore.S,trap.c}.
Use versions from sys/arch/mips/mips instead.
1996-10-13 13:24:48 +00:00
jonathan 4be3cd1350 Remove pmax/tc/if_le.c. Superseded by sys/dev/tc MI TC/ioasic lance drivers. 1996-10-13 13:18:06 +00:00
jonathan 23ad284399 Remove obsolete `#include <machine/MachConst.h>'.
Where CACHED_TO_HYS() is still needed for kernel-virtual-to-physical
or physical-to-uncached mapping (fb drivers), replace with
`#include <mips/cpuregs.h>'.
1996-10-13 13:13:50 +00:00
jonathan 0c048bf278 poll(2) changes for rcons, pmax framebuffer hardware-independent layer. 1996-10-13 12:47:55 +00:00
jonathan 1f97bf2ceb Update SCCS id to 4.4-lite2. We already had lite2 tz.c changes from
Raph Cambpell.
1996-10-13 12:34:20 +00:00
jonathan e1a0a7fc77 Split dcparam() into two parts:
* dcparam() with normal tty t_param interface, which calls
    * cold_dcparam() called with explicit dc7085 register address
      and flags, which does the work and is also callable when cold,
      to set up console (or kgdb) line parameters.
1996-10-13 12:25:50 +00:00
jonathan 04cc01fd56 Commit arch/pica/pica/pmap.c changes from August 1996:
* use mips_round_page,mips_trunc_seg() instead of
    pica_round_page(),pica_trunc_page().
  * discard (unused) return value from TLBUpdate(), and delete
    (unused) temporary variable used to hold it.
1996-10-13 11:39:52 +00:00
jonathan fba8024a86 Add (missing) PAGE_IS_RDONLY() macro to test for readonly pages,
in both mips-I and mips-II versions, and use it in arch/mips/mips/trap.c.
1996-10-13 09:54:39 +00:00
jonathan 6ac1fdec40 Merge mips1 and mips3 pte/pmap code, pass 0;
* Move mips-I pte (TLBlo) definitions from pmax/include/pte.h
      to mips/include/mips1_pte.h

    * Move mips-III pte (TLBlo) definitions from  pica/include/pte.h
      to mips/include/mips3_pte.h

    * Add new mips/include/pte.h, which includes exactly one of
      mips1_pte.h or mips3_pte.h (which still have namespace collisions),
      depending on "options MIPS1" or "options MIPS3". (hack).
      Move soft kvtopte(), ptetovk() definitions to mips/include/pte.h

    * Add macro PTE_TO_PADDR() to hide the different hardware TLB formats
      when mapping from pte to physical address.

   * Add macro PTE_READONLY() to hide lack of SW read-only bit in mips-III
     tlb. (mips1 pmap uses a sw bit in the PTE, mips3 looks up RO bit in
     the kernel pmap.)

   * Use macros (not direct TLB frobbing) in mips/trap.c, to make it
     mips-1/mips-III indepenndet.

    * Change {pmax,pica}/include/pte.h to just do #include <mips/pte.h>.
1996-10-13 09:28:53 +00:00
jonathan a179b23932 Add marker labels to the end of the exception-vector (and exception
jump-table) locore entrypoints, so the stack traceback code can use
the end marker to handle entry points specially when doing  tracebacks,
even if it doesn't know about them  explicitly.
1996-10-13 08:45:15 +00:00
jonathan 96eb3c22a4 Commit (very old) partly-merged ARC Pica mips3 trap handler code:
* fold in netBSD style changes:
      ``if (foo = bar)'' -> ``if ((foo = bar) != 0)''
    * add mips1 vector as well as mips3 vector
    * change vector names to make mips1 and mips3 locore entrpoints distinct
    * add pmax additions (e.g., old fixes to ktrace code, kernel-TLB_miss
      instrumentation)
   * update stack traceback code to a newer version of the pmax code.
1996-10-13 08:15:40 +00:00
jonathan bc759e3dfb Apply
>backout previous kprintf change
change.
1996-10-13 07:45:01 +00:00
jonathan a49fa844a1 Fix stack traceback code for merged mips1/mips3 support:
add catch-all case, with distinct mips1 and mips3 ranges for locore
entry points,  cases to catch othewise-unknown locore entrypoints and
vector code (which have special entry sequences and require special
support to trace through).   The relevant mips1 and mips3 functions are
of course now distinct.
1996-10-13 07:09:33 +00:00
jonathan 0705c8f480 Kernel configuration file to build kernels for installing on diskful
machines, using diskless-boot (NFS root) as the installation method.

Many options turned off to keep kernel small and avoid boot-PROM errors.
1996-10-13 05:57:19 +00:00
jonathan 5a80d438e9 Update pmax config files ``GENERIC'' and ``DSG'' with post-1.2
NetBSD-current changes:
    * change include paths to be relative to the kernel-source tree
      (e.g., `/sys') instead of arch/pmax/conf.
    * add explicit options for exec packages (EXEC_ELF32, EXEC_ECOFF
      for COMPAT_ULTRIX)
   * comment out references to still-unsuppoted MI scsi.
1996-10-13 05:40:44 +00:00
jonathan bb34d39024 Change pmax port over to using ``mips MI'' trap handler. 1996-10-13 05:28:48 +00:00
jonathan 50201a6c48 Comment out config lines for MI scsi drivers, to make it absolutely clear
we don't yet support them.
1996-10-13 05:21:17 +00:00
jonathan 54766d93cf Merge low-level mips trap handling and move to arch/mips/mips/trap.c. 1996-10-13 05:14:35 +00:00
jonathan 87414435ba Add initializers for System V ipc, semaphores, and shared-memory,
for options SYSVMSG, SYSVSEM, and SYSVSHM, respectively.
Fixes pr #2823.
1996-10-13 04:32:26 +00:00
jonathan 8ab94387e9 Change boot() to honour "always halt" flags in boothowto,
other boot() changes modelled on arch/alpha/alpha/machdep.c.
1996-10-13 04:26:49 +00:00
christos 17f5b2a175 backout previous kprintf changes 1996-10-13 04:10:34 +00:00
christos a087bfeb5c backout previous kprintf change 1996-10-13 03:47:25 +00:00
jonathan 9bcd95a0ae Header file with dc7085 (dz-11 clone) declarations used by pmax console and
framebuffer code.
1996-10-13 03:42:17 +00:00
christos d286889901 backout previous kprintf change 1996-10-13 03:39:27 +00:00
christos e37692f04d backout previous kprintf change 1996-10-13 03:29:05 +00:00
christos 16b74d2c00 use in_addr_t and in_port_t 1996-10-13 03:28:00 +00:00
christos 40ecbf8e72 backout previous kprintf change 1996-10-13 03:21:13 +00:00
christos bd73314ed9 backout previous kprintf changes 1996-10-13 03:19:38 +00:00
christos 9dc680b6a4 backout previous kprintf change 1996-10-13 03:19:10 +00:00
christos 30efd6881a use in_addr_t and in_port_t 1996-10-13 03:16:41 +00:00
christos 30b3cc3d09 backout previous kprintf changes 1996-10-13 03:14:05 +00:00
christos 7c9b908394 use in_addr_t and in_port_t 1996-10-13 03:12:38 +00:00
christos ca36ac9ef4 backout previous kprintf change 1996-10-13 03:05:43 +00:00
jonathan 986daa1436 Split sii driver into bus-dependent front-end and chip-specific back-end:
sii_ds.c -- front-end for Decstation 2100, 3100, 5100(?)
    sii.c --  driver for DEC scsi asic used in decstations and vax 3400s
    siivar.h -- shared softc
1996-10-13 03:02:39 +00:00
christos de83b4558f use in_addr_t and in_port_t 1996-10-13 03:02:26 +00:00
christos 8d9699acda backout previous kprintf change 1996-10-13 02:59:55 +00:00
christos cabe1f09ff use in_addr_t and in_port_t 1996-10-13 02:59:54 +00:00
christos 7d1960f502 backout previous kprintf change 1996-10-13 02:59:38 +00:00
christos 55ff7d5106 backout previous kprintf changes 1996-10-13 02:59:37 +00:00
christos 0039d4aa0c backout previous kprintf change 1996-10-13 02:59:25 +00:00
christos d7363b596f backout previous kprintf changes 1996-10-13 02:59:23 +00:00
christos e43661dda6 use in_addr_t and in_port_t 1996-10-13 02:57:47 +00:00
christos b078069824 in_addr_t and in_port_t changes 1996-10-13 02:55:48 +00:00
jonathan 99a94f057e Put back the ttstop-returns-void changes accidentally clobbered by
merging the 1.2 and -current branch serial-console fixes.
1996-10-12 23:41:35 +00:00
jonathan 0c820bd260 Split driver for decstation-3100 framebuffer (BrookTree bt478 RAMDAC,
DEC dc503 cursor chip) into  Decstation 2100,3100 cfattach front-end
and ``machine-independent'' back-end.
	pm_ds.c:  pmin/pmax cfattach front-end
	pm.c:  bt478, 503 back-end
	pmvar.h: declarations of back-end normal and console attach
	         entry points.
1996-10-12 23:33:18 +00:00
mark 5b9a5a91b2 Added a macro for un-cacheable un-bufferable ptes. 1996-10-12 18:31:10 +00:00
mark 8759f643d5 Don't need to include machine/reg.h here. 1996-10-12 18:29:32 +00:00
mark 9e61254436 Fixed typo. 1996-10-12 18:25:59 +00:00
mark 61d95c8ea3 Initial commit of doc describing boot options and parameters recognised
by the kernel.
1996-10-12 18:24:43 +00:00
cgd b2f63215fc don't forget to switch back to the .text after emitting warning
strings in their own sections.
1996-10-12 18:08:12 +00:00
mhitch c67390fd59 mmutype and fputype disappeared from machine/cpu.h during a merge toward
m68k stuff.
1996-10-12 17:34:52 +00:00
mhitch 3831c5a790 KDASSERT is now in lib/libkern/libkern.h, so we don't need
amiga/amiga/kdassert.h.
1996-10-12 17:27:28 +00:00
mhitch 784dc6bd1b poll(2) changes for framebuffer. 1996-10-12 16:00:21 +00:00
mhitch b403f60a0e Don't try to probe devices past the number of tz devices configured - stops
corrupting data past the end of tz_softc[].
1996-10-12 15:59:39 +00:00
mhitch 4d1a9465f1 Add arch/mips/mips/mips_machdep.c, it's now compiled as a separate file. 1996-10-12 15:49:15 +00:00
scottr 2903ee4df5 Add second Quadra class and machineid (gestalt value) for Color Classic II 1996-10-12 07:35:29 +00:00
mhitch 0b8603b55b Needs <stdio.h> now that printf() isn't defined in kernel headers. 1996-10-12 04:34:16 +00:00
thorpej 4879f62ed8 Need <sys/exec.h> for the PS_STRINGS definition. 1996-10-12 02:20:37 +00:00
mhitch 574994daaf Fix compile errors when not configured for the Draco. 1996-10-11 21:32:56 +00:00
mhitch c21fad0c51 Changes for poll(2). 1996-10-11 21:12:43 +00:00
leo 3d5284e11e - Fix configuration name of 'lpt'
- add 'pcibus' as a mainbus device.
1996-10-11 21:07:02 +00:00
leo 64096bf6d1 - add a iteet_ioctl function so iteconfig(1) can be used to select the
screen geometry.
- Re-arrange et_loadmode() and et_inittextmode() to write into shadow
  register set instead of writing to the card-registers directly.
- provide et_hwsave()/et_hwrest() functions to transfer the card-registers
  to and from the shadow set.
1996-10-11 21:02:48 +00:00
leo 6cfe8836c4 *** empty log message *** 1996-10-11 21:01:26 +00:00
leo b88d6013b6 Remove grf_ite_ioctl(). Replace it by 'itexx_ioctl' that is configurable
per ite-type.
1996-10-11 20:50:34 +00:00
mhitch f22ea83247 The dc has to have needs-flag so dc.h gets generated. 1996-10-11 19:58:43 +00:00
mhitch 2d3fc12c2b Fixed typo on EXEC_ELF32.
Newline at end of file was missing.
1996-10-11 19:55:38 +00:00
mhitch e0e8090630 Add missing const to simple_devprint() char * parameter. 1996-10-11 19:49:49 +00:00
mhitch cb8e03f393 Amiga needs EXEC_AOUT and EXEC_SCRIPT. 1996-10-11 19:34:54 +00:00
christos eb314d8358 printf -> kprintf, sprintf -> ksprintf 1996-10-11 01:50:21 +00:00
christos 19d8368f2f printf -> kprintf, sprintf -> ksprintf 1996-10-11 00:44:42 +00:00
christos de08983084 add in_addr_t and in_port_t 1996-10-11 00:43:00 +00:00
christos 848c9d8f02 printf -> kprintf, sprintf -> ksprintf 1996-10-11 00:39:22 +00:00
christos 06555645c2 printf -> kprintf, sprintf -> ksprintf 1996-10-11 00:24:36 +00:00
christos 8f56de03e1 printf -> kprintf 1996-10-11 00:22:09 +00:00
christos 60dd5ceebe printf -> kprintf, sprintf -> ksprintf 1996-10-11 00:06:28 +00:00
christos c47b25b2e5 add -Wall -Wstrict-prototypes -Wmissing-prototypes.
We are compiling cleanly now!
1996-10-11 00:04:22 +00:00
christos 1f54d4ded6 add in_addr_t and in_port_t and use them. 1996-10-11 00:02:47 +00:00
christos e6302ff46c - add missing prototypes
- printf -> kprintf, sprintf -> ksprintf
1996-10-10 23:56:50 +00:00
christos 946833855f printf -> kprintf, sprintf -> ksprintf 1996-10-10 23:51:21 +00:00
christos 4335eeb4ed - fix uninitialized sticks
- printf -> kprintf, sprintf -> ksprintf
1996-10-10 23:51:19 +00:00
christos a60beecedb printf -> kprintf, sprintf -> ksprintf 1996-10-10 23:44:49 +00:00
christos 9beb92aad7 printf -> kprintf, sprintf -> ksprintf 1996-10-10 23:32:59 +00:00
cgd c11d591cfe add support for ELF toolchain, including weak alias support (for upcoming
libc changes) and reference warnings.
1996-10-09 22:41:54 +00:00
cgd 6d0af59ad0 change __va_list's "offset" field to be a 'int' to match what gcc now
uses, plus add a compatibility hack so that code compiled with old
versions of gcc (e.g. libraries) can work with code compiled with
new versions.
1996-10-09 21:13:04 +00:00
explorer e331708d2f turn off floppy motor (and light) even if the drive isn't found. This fixes
some laptop indicator lights which would be stuck on after the probe
1996-10-09 16:10:14 +00:00
matthias 9176e41d88 * Pull over prototyping fixes from i386. 1996-10-09 07:45:28 +00:00
matthias b43657168e * Add prototypes.
* Add support for ddb and kgdb.
1996-10-09 07:45:25 +00:00
matthias 9d22d4d454 * Fix declaration of setconf. 1996-10-09 07:45:23 +00:00
matthias 85ddb3de03 * A few prototyping tweakes and deletion of unused variables.
(pulled over from i386).
1996-10-09 07:45:20 +00:00
matthias e90bc618bd * Support for ddb.
* New patchable variable maxphysmem to limit physical memory.
That's useful to simulate small machines for testing install
kernels.
* Make debugging crashdumps with gdb -k work.
* microtime is moved to clock.c.
* Reserve memory for symbol table when ddb is configured.
* Move checks for RB_KDB into consinit.
1996-10-09 07:45:17 +00:00
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
ws f828028e92 Add some files that CVS missed somehow
These are empty for now, but are needed by MI code
1996-10-01 16:13:50 +00:00
cgd acaf5ffad5 kill __BDEVSW_DUMP_OLD_TYPE 1996-10-01 14:26:18 +00:00
cgd 4f59e73235 implement a simple (mostly brain-dead; old-style) kernel core dump routine,
which dumps all "system"-cluster memory we know about.
1996-10-01 14:25:47 +00:00
jonathan b2ba37c8b9 Delete old dkstat index (sd_dk) from old pmax scsi-driver struct, and delete
the last references to it from the old/new config glue in pmax/conf-glue.c.
1996-10-01 01:04:48 +00:00
abrown 7557090650 Add cgfourteen_poll() entry point to sync with recent changes in frame
buffer cdev code.
1996-10-01 00:06:45 +00:00
christos 0b99fde177 Fix PR/2782: Remove definition of dos_partitions[]. 1996-10-01 00:06:05 +00:00
abrown c04e2bf00c Add cgfourteen to conf.h.
Add new framebuffer types for recent-model graphics devices to fbio.h.
1996-09-30 23:45:10 +00:00
abrown 1547bff1c4 Add cgfourteen frame buffer at device major number 99. This is what Solaris
uses; I don't have access to a SunOS system with a cg14 to tell what
it uses.
1996-09-30 22:49:12 +00:00
abrown e46ca2d67c Add cgfourteen driver as device "cgfourteen" 1996-09-30 22:43:38 +00:00
abrown 19b3f7f50b Initial commit of cg14 framebuffer driver for Sun4m SPARCs.
- This driver supports the on-board mbus-based cgfourteen (sometimes referred
  to as "SX") video hardware present on SS20-class machines.
- It does *not* support any of the SX acceleration features.
- It does support the 8-bit mode of the hardware, and looks to X like
  a cgthree.
- It does support the cg6-style hardware cursor, even when running X in
  cgthree emulation.
- It does support DPMS power-down of compatible displays on later-revision
  cg14's.
- There is code to support the true color (32-bit) mode of the cg14 as
  cg8 emulation, but it is disabled by default because it is most likely
  broken. #define CG14_CG8 to turn it on.

The driver is not yet installed in the conf files, but I will do so
shortly...
1996-09-30 22:41:01 +00:00
christos 13b8943557 fix PR/1085: fix read and write label routines so that they can be called
with a null cpu_disklabel
1996-09-30 21:24:49 +00:00
ws 5804d3f648 PowerPC port 1996-09-30 16:34:14 +00:00
is 1589992f74 Same as mhitch corrected in the CIA B interupt handler few days ago:
Check only the IR bit of the CIAA Interrupt Control Register when testing
for a level 6 interrupt.  An interrupt only occurs if IR is set, and IR is
only set if the individual mask bits are set.  The individual interrupt
status bits can be set without causing an interrupt if the corresponding
enable bits are not set.
1996-09-30 16:10:03 +00:00
jonathan e459401a61 Fix for PR #2739: change reference to ioasic interrupt mask in a
DEBUG printf() in kmin_intr() from  "kn03_tc3_imask" (3max+  ioasic mask)
to  "kmin_tc3_imask" (3min ioasic mask)
1996-09-30 08:31:54 +00:00
jonathan 2c2c7c31cb Add files.pmax entries for separate cfattach front-end and ``MI'' backend
drivers:
	pm - pmin/pmax  d503 PCC + BrookTree 478 framebuffer
	dc - dc7085 DZ-11 clone
	asc - ioasic and TurboChannel SCSI option card 53c94 SCSI-2
	sii - DEC scsi ASIC used in pmin/pmax, 5100, and Firefox vaxes
1996-09-30 08:11:23 +00:00
jonathan 7cd0363289 Just include <mips/cpuregs.h>, which has the same contents this
file used to.
1996-09-30 07:58:20 +00:00
jonathan 701c775b0b Update all the include directives to use pathnames relative to the root
of the kernel source tree, not the port config directory.
1996-09-30 02:38:17 +00:00
jonathan 0c1b5cd12b Build and link in locore_machdep.S. 1996-09-30 02:35:34 +00:00
jonathan 6c0d846a3d Include <mips/asm.h>, not the Sprite header names. 1996-09-30 02:21:20 +00:00
jonathan a1d3dd50d8 * Move Decstation-specific locore code (sii DMA copy, vmstat -i counters)
from arch/mips/mips/locore.S to arch/pmax/pmax/locore_machdep.S.
* Move ARC-specific locore code (vmstat -i counters) to
  arch/pica/pica/locore_machdep.S.
* When the mips3 locore support is known to work, both  ports can now use
  arch/mips/mips/locore.S.
1996-09-30 01:51:16 +00:00
jonathan 1fc59008c3 Move Decstation-specific locore code (sii DMA copy, vmstat -i counters)
from arch/mips/mips/locore.S to arch/pmax/pmax/locore_machdep.S.
1996-09-30 01:30:21 +00:00
jonathan e82e5facd0 Add _ prefix to the PROM-callback-vector entrypoint in standalone
wrappers for:
	gets.c getenv.c strcat.c strcpy.c
so they compile again (if _KERNEL is defined).

For bootblock space reasons it would be prereable to call the PROM entrypoints
directly, via the macro wappers in de_prom.h, rather than C function wrappers.
1996-09-30 01:14:39 +00:00
jonathan 6c56d533b3 Add "const" to second argument to devopen.c, to match sys/lib/libsa/stand.h. 1996-09-30 01:02:06 +00:00
jonathan 0cfd4f8641 Update arch/pmax/Makefile to build in NetBSD rather than 4.4-Lite:
* Create arch/mips/Makefile.inc with source list of generic MIPS-cpu
    files for tags
  * Use mips/Makefile.inc and updated tag list in pmax/Makefile
  * Try building bootblocks in arch/pmax/stand.
1996-09-29 23:51:22 +00:00
is 5a86eaccfc a) replace our delay() with a Gordon Ross style one, calibrated at
clock_attach() time (for now).
   This removes our dependance on the DraCo ROM access timing and frees
   the second CIA on Amigas.
b) support for DraCo rev. >= 4 native timer chips.
1996-09-29 21:27:30 +00:00