Commit Graph

13980 Commits

Author SHA1 Message Date
mark 04c5783fb7 Call mcount() on function entry if GPROF and PROFILE_ASM are both defined. 1996-10-15 01:00:29 +00:00
mark a2a2b693c8 Removed a load on unused code that has been hiding here.
The functions vidcconsolemc_render() and vidcconsolemc_cls()
will call mcount if GPROF and PROFILE_ASM are both defined.
1996-10-15 00:55:26 +00:00
mark c90d8612e7 General code cnd formatting clean up. 1996-10-15 00:52:21 +00:00
mark 0d48d902ea New build of the ARM FPE core. The core header now has a version
number field and an core identity string pointer.
Labels are now defined for all the entry points in the core header
structure so that the linker can relocate the branches to the core.
The core entry points are now branch instructions relative to the
start of the core so the address of the core function does not have to
be calcuated are call time.
1996-10-15 00:49:10 +00:00
mark ed4a15bc3d Added prototypes for tlb_flush(), cache_clean(), sync_caches() and
sync_icache().
Removed prototype for memset().
Added prototypes for atomic_set_bit() and atomic_clear_bit().
1996-10-15 00:44:58 +00:00
mark a6bf04810f Include <machine/fp.h> and <machine/reg.h>
Define the two new fields added to the FPE core header in
the arm_fpe_mod_hdr_t structure.
Added prototypes for arm_fpe_getcontext() and arm_fpe_setcontext().
Updated the prototypes for arm_fpe_core_loadcontext() and
arm_fpe_core_savecontext() to pass a fp_context_frame pointer.
1996-10-15 00:42:46 +00:00
mark fcc485e573 Define a separate set of irq numbers for ARM7500 machines if RC7500 is
not defined as the ARM7500 in A7000 machines has different interrupt
numbers than the ARM7500 in RC7500 machines.
1996-10-15 00:39:23 +00:00
mark 796814b9e9 Added -Wcomment to the CPPFLAGS.
Added -Wreturn-type to the CWARNFLAGS.
Make dependancies for makemodes.
1996-10-15 00:35:48 +00:00
mark 4d21960d40 Added checks for illegal combinations of CPU_ARM6, CPU_ARM7, CPU_ARM7500,
CPU_SA110 and CPU_LATE_ABORT.
Updated the CLKF_INTR() macro for changes made to the interrupt system.
Updated some of the CPU ID codes.
Added the CPU ID for the ARM8.
1996-10-15 00:33:03 +00:00
mark 7e836e3676 splsoftclock() is now a macro rather than a function. 1996-10-15 00:26:46 +00:00
mark 3f12639e0e Added options EXEC_AOUT and EXEC_SCRIPT. 1996-10-15 00:25:45 +00:00
mark 25d5efdd4f Updated to match reality. 1996-10-15 00:23:51 +00:00
mark 478a722a54 New configuration file for RiscPC's with StrongARM CPUs (SA-110) rather
than an ARM6 or ARM7.
1996-10-15 00:22:58 +00:00
mark b352e3549b Updated fpreg_t to match changes made to fp.h 1996-10-15 00:21:36 +00:00
mark f930769a2b New configuration file.
This is for an Acorn A7000 machine with an ARM7500 CPU and no VRAM.
This config should also work for other ARM7500 machines with an
architecture that matches Acorns.
1996-10-15 00:21:06 +00:00
mark 7e6df6c20e Added a typedef for fp_extended_precision_t.
Make fp_reg_t a typedef of fp_extended_precision_t.
Rename the fp_state structure to fpe_sp_state as it describes
the single precision FPE state held in the pcb and is internal to the
kernel.
Define a new fp_state structure that is for user access to the fp
state (e.g. via ptrace()).
1996-10-15 00:15:37 +00:00
mark a7c2e7f767 Use tlb_flush() rather than tlbflush() in the pmap_update() macro. 1996-10-15 00:09:09 +00:00
mark c544086b51 Initial commit of the Connect32 SCSI driver. This driver uses the esc
generic driver.
Currently this is only a polling driver.
1996-10-15 00:08:43 +00:00
mark b4c38ce254 Define the FP exeception types.
Use these types to create the bit values used for fp_except values.
1996-10-15 00:06:47 +00:00
mark 43fce8325b Initial commit of the esc generic SCSI driver code. This is a driver for
the AMD AM53CF94 Enhanced SCSI Controller. The code is based on the
SFAS216 driver as these chips are very similar. There are several
differences but more will follow.
1996-10-15 00:05:04 +00:00
mark c5246aee6a Updated the typedef for undef_handler_t to have a 4th argument. This
argument is a fault code integer.
1996-10-15 00:00:44 +00:00
mark bc6649505b Add definition of configuration register B. 1996-10-14 23:57:11 +00:00
mark 8b97be16ab Include podules.h for definitions of manufacturer and podule ids.
Use definitions from this file for match_podule() rather than hardcoded
values.
Added packet filter support.
1996-10-14 23:55:01 +00:00
mark 91de56b1b6 Include podules.h for definitions of manufacturer and podule ids.
Use definitions from this file for match_podule() rather than hardcoded
values.
Added a routine asc_minphys() in preparation for driver changes when on
card DMA support is added.
1996-10-14 23:53:58 +00:00
mark 56250a75b0 Include podules.h for definitions of manufacturer and podule ids.
Use definitions from this file for match_podule() rather than hardcoded
values.
Reset the interface following a bad packet. This fixes some jams when
the driver failed to recover properly after a bad packet.
1996-10-14 23:50:20 +00:00
mark ce36c22380 Include podules.h and use the manufacturer and identities defined there
for calling match_podule() rather than using hardcoded values.
1996-10-14 23:42:17 +00:00
mark a7c4273ef8 Fix comments. 1996-10-14 23:35:41 +00:00
mark b7b4a80fa1 Remove old-style disk instrumentation. 1996-10-14 23:31:29 +00:00
mark cb1d61078c Use tlb_flush() rather than tlbflush(). 1996-10-14 23:29:47 +00:00
mark 9d8ffb415e Removed all the podule manufacturer and id structures and included
podule_data.h instead.
Removed the dead function find_podule().
The 0xf5 entry in the podules chunck directory is now searched for and
the podule description associated with this entry is placed in the
description field of the podule structure.
Generally tidied up all the comments.
1996-10-14 23:26:48 +00:00
mark ccdc440eac Added a description field to the podule structure. This is filled in
at config time with the podule description (if any) that is extracted
from the podule ROM.
1996-10-14 23:21:22 +00:00
mark 7e9e37b0bf Sync with master podule list. 1996-10-14 23:17:09 +00:00
mark 1698c1854e Initial commit of master list of podule manufacturers and ids along
with tools for building podules.h and podule_data.h from this file.
1996-10-14 23:16:07 +00:00
mark 159f169ad4 Added support for the ARM7500.
Added comments to relate #ifdef and #endif
1996-10-14 23:05:34 +00:00
mark 9ddac81db7 Added definitions for evaluating the signal code argument.
Currently the code field is only valid for SIGFPE, SIGBUS and SIGSEGV.
1996-10-14 23:02:53 +00:00
mark 06083cc7b9 Updated #ifdef to reflect filename change. 1996-10-14 22:57:37 +00:00
mark f0137e2cc0 At last, a version of profile.h that works properly and allows kernel
profiling.
Define an all assembly mcount stub routine and make sure r0-r3 and lr
are preserved.
1996-10-14 22:52:49 +00:00
mark cae31931a9 Initial commit of header file defining various traps.
Define a user breakpoint trap.
1996-10-14 22:49:23 +00:00
mark f24b0a3f91 Initial commit of the header file defining the architecture specific
syscalls.
Declare ARM32_SYNC_ICACHE call that ensures that main memory and any
instruction cache are in sync.
1996-10-14 22:47:31 +00:00
mark 135f110149 Added an ioctl acknowledgement bit to the buffer record flags field.
Added a new ioctl to select either relative or absolution mouse position
reports.
1996-10-14 22:41:59 +00:00
mark 44faa9154f Added a blanktime field to the vconsole structure so the blanktime time
is managed per virtual console rather than globally.
1996-10-14 22:35:03 +00:00
mark c4d76a3f02 Added a field for cpu specific data in the cpu_t structure. 1996-10-14 22:32:45 +00:00
mark 60c2014d86 Added magic number of bootconfig structure passed from the bootloader.
Added a field for the physical address of the display memory used
by the bootloader if VRAM is not fitted.
Declare the boot_args variable extern here.
1996-10-14 22:30:19 +00:00
mark d7004d5a55 Commit of notes on interrupts and their usage. 1996-10-14 22:27:03 +00:00
mark 114e806627 Added note that the current development history can be found
on source-changes.
1996-10-14 22:23:50 +00:00
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 a5461e87e1 Delete spurious #endif 1996-10-14 21:16:55 +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 04f65ff081 Need to include <sys/exec.h> 1996-10-14 06:53:23 +00:00
thorpej 7ee4744ed2 Need to include <sys/exec.h>. 1996-10-14 06:51:50 +00:00
mhitch c376b68e9d Now needs sys/proc.h since compat/common/compat_util.h doesn't anymore. 1996-10-14 05:15:39 +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
cgd 40bcaca9ac fix a bogon in some new functionality apparently added in the last
commit (which was supposed only to back out the printf->kprintf changes).
The new functionality is: if the user enters control-D, return an error.
1996-10-14 04:49:21 +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
cgd 0e4ddf059b deal more sanely with ELF binaries with only a single program header
section.  Patch come up with by Bob Baron <rvb+@cs.cmu.edu> and myself.
This entire bit of code (the code which sets daddr/dsize and taddr/tsize)
is very bogus, but it's not clear what the 'right' way to fix it is
and this patch fixes a problem preventing some ELF executables from
being run.
1996-10-13 22:54:52 +00:00
christos 898d3e0b34 regen 1996-10-13 22:21:15 +00:00
christos b3de746da6 Apply PR/2840: Recognize more 3com models... 1996-10-13 22:19:19 +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 d551a4edf9 catch up with Jason's exec.h inclusion. 1996-10-13 18:30:05 +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
christos 520aa2aeba backout previous kprintf change 1996-10-13 02:52:06 +00:00
christos f443b89c92 backout previous kprintf change 1996-10-13 02:32:29 +00:00
christos e44c1d1f33 backout previous kprintf changes 1996-10-13 02:28:58 +00:00
christos ee3d88fbdf fix uiomove's first argument and remove unnecessary casts 1996-10-13 02:27:52 +00:00
christos 92a808f167 backout previous kprintf changes 1996-10-13 02:21:25 +00:00
christos a1dcf4b026 backout previous kprintf change 1996-10-13 02:10:01 +00:00
christos 5545959d0b backout previous kprintf changes 1996-10-13 02:03:00 +00:00
christos cb32007a8b backout previous kprintf change 1996-10-13 01:59:55 +00:00
christos bcf4552fb1 revert kprintf changes 1996-10-13 01:39:03 +00:00
christos 86373f8cf9 backout kprintf changes 1996-10-13 01:37:04 +00:00
christos 4d99ae39b0 Remove STACKGAPBASE dependencies. 1996-10-13 01:16:19 +00:00
christos e14a71a3ae catch up with Jason's changes. 1996-10-13 00:56:02 +00:00
christos 53e42f3487 Backout previous kprintf change. 1996-10-13 00:46:49 +00:00
christos dcf74c0b02 Catch up with Jason changes.
Backout kprintf stuff
1996-10-13 00:08:26 +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
christos 9a2c8cf28c revert previous kprintf change 1996-10-12 23:23:13 +00:00
christos cf900b3ef9 - Back out previous kprintf change.
- change uiomove() argument from caddr_t to void *; this was the last caddr_t
  in systm.h.
- remove parameter names from the b*() routines to make them look like the
  mem*() counterparts.
1996-10-12 23:06:02 +00:00
christos a60f3e5f6a include <sys/types.h> instead of <machine/endian.h> 1996-10-12 22:20:50 +00:00
christos 007ac90882 backout previous kprintf change 1996-10-12 22:14:10 +00:00
christos 040651bd9c Make this compile again. 1996-10-12 22:13:48 +00:00
christos 90c7de0919 revert previous kprintf changes 1996-10-12 21:58:44 +00:00
christos 3dc7953eec back out previous kprintf changes 1996-10-12 21:50:05 +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 184eb4a5e9 Remove extraneous output - ascattach() already did it. 1996-10-12 16:15:34 +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 84abe4ea20 Where did that "l" come from? Another hiccup from the netbsd-1-2 branch
merge.
1996-10-12 05:28:14 +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
thorpej 9c7bb13aeb Include <sys/exec.h> 1996-10-12 02:13:52 +00:00
thorpej bddeb30297 Don't inline stackgap_init() and stackgap_alloc(). Doing so generates
an include file dependency graph that's much more complicated than
it needs to be, and wastes space in the kernel.
1996-10-12 02:12:55 +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
cgd 4431ea58a9 replace ELF_ALIGN with ELF_TRUNC (round to lower alignment boundary) and
ELF_ROUND (round to higher alignment boundary), and use them properly.
Also, change a bit of code in elf_load_psection to use the next ELF_ROUND
macro.  This fixes a bug found by Robert Baron <rvb+@cs.cmu.edu> where
elf_load_psection, if given a properly aligned address at which to load
the section, would round actually load it at the next highest alignment
boundary.
1996-10-11 19:44:02 +00:00
mhitch cb8e03f393 Amiga needs EXEC_AOUT and EXEC_SCRIPT. 1996-10-11 19:34:54 +00:00
is 08899f4a1b Fix a mbuf leak in ip_output().
Scenario: If ip_insertoptions() prepends a new mbuf to the chain, the
bad: label's m_freem(m0) still would free only the original mbuf chain
if the transmission failed for, e.g., no route to host; resulting in
one lost mbuf per failed packet. (The original posting included a
demonstration program).

Original report of this bug was by jinmei@isl.rdc.toshiba.co.jp
(JINMEI Tatuya) on comp.bugs.4bsd.
1996-10-11 18:19:08 +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
christos 01d75c7c68 - printf -> kprintf, sprintf -> ksprintf
- make this compile cleanly.
1996-10-10 23:31:40 +00:00
christos 117a51c5a5 printf -> kprintf, sprintf -> ksprintf 1996-10-10 23:31:17 +00:00
christos d5bc24be7a - printf -> kprintf, sprintf -> ksprintf
- replace sequences of sprintf(p, ...);  p += strlen(p) with p += sprintf(p,
1996-10-10 23:30:58 +00:00
christos 1005eb6f98 printf -> kprintf, sprintf -> ksprintf 1996-10-10 23:25:50 +00:00
christos 98d5537195 - make this compile again
- printf -> kprintf, sprintf -> ksprintf
1996-10-10 23:22:58 +00:00
christos 6d7ad25bea printf -> kprintf, sprintf -> ksprintf 1996-10-10 23:12:43 +00:00
christos 2768f040b3 - fix NSIP; it referenced non-existing functions. 1996-10-10 23:04:26 +00:00
christos 0e189933f5 printf -> kprintf, sprintf -> ksprintf 1996-10-10 23:02:20 +00:00
christos 10191279fb - printf -> kprintf, sprintf -> ksprintf 1996-10-10 22:59:41 +00:00
christos 2688e678b9 - add missing prototypes
- printf -> kprintf, sprintf -> ksprintf
1996-10-10 22:58:29 +00:00
christos 60d201973e printf -> kprintf, sprintf -> ksprintf 1996-10-10 22:46:11 +00:00
christos 2b33d9d53a - printf -> kprintf, sprintf -> ksprintf
- use a debugging printf macro instead of #ifdef #endif everywhere.
1996-10-10 22:45:37 +00:00
christos 153ead2dff - Use debugging printf - macros instead if #ifdef #endif everywhere
- printf -> kprintf, sprintf -> ksprintf
1996-10-10 22:43:21 +00:00
christos aa4d49153b - printf -> kprintf, sprintf -> ksprintf 1996-10-10 22:40:49 +00:00
christos c514106b9d printf -> kprintf, sprintf -> ksprintf 1996-10-10 22:39:39 +00:00
christos 5d85fa8122 printf -> kprintf, sprintf -> ksprintf 1996-10-10 22:25:05 +00:00
christos 4c14cd79b2 - printf -> kprintf, sprintf -> ksprintf 1996-10-10 22:18:34 +00:00
christos 48635ba80c - printf -> kprintf, sprintf -> ksprintf
- ifdef unused variable
1996-10-10 22:14:18 +00:00
christos 43ffb37118 - printf -> kprintf, sprintf -> ksprintf
- fix a bug where tp was used before it was initialized
- remove unused variable
1996-10-10 22:12:15 +00:00
christos a551ed0d3d - printf -> kprintf, sprintf -> ksprintf
- Fix an | -> ||
1996-10-10 22:08:05 +00:00
christos 58953408cb printf -> kprintf, sprintf -> ksprintf 1996-10-10 22:04:48 +00:00
christos e51a0f737a - printf -> kprintf, sprintf -> ksprintf
- fix unused variable warning
- include <systm.h>
1996-10-10 21:27:25 +00:00
christos ce31bd3eb6 - printf -> kprintf, sprintf -> ksprintf
- Remove unused variable
- include <systm.h>
1996-10-10 21:26:04 +00:00
christos 18f1d603f0 - printf to kprintf, sprintf -> ksprintf 1996-10-10 21:25:07 +00:00
christos 764db9b35b - printf -> kprintf, sprintf -> ksprintf
- provide a default case to handle an unknown model number.
- include <systm.h>
- remove unused variable.
1996-10-10 21:23:28 +00:00
christos 245e10b406 - printf -> kprintf, sprintf -> ksprintf
- ifdef an unused variable.
1996-10-10 21:21:52 +00:00
christos 3b23328ae6 printf -> kprintf, sprintf -> ksprintf 1996-10-10 21:11:37 +00:00
christos b5c4f2fc49 printf -> kprintf, sprintf -> ksprintf 1996-10-10 20:25:34 +00:00
christos ee2c8600ee - printf -> kprintf, sprintf -> ksprintf
- remove kvtop declaration.
1996-10-10 20:04:03 +00:00
christos ea39989829 - printf -> kprintf, sprintf -> ksprintf
- add an #ifdef FreeBSD for an unused variable
1996-10-10 20:00:59 +00:00
christos b54342c9b9 - printf -> kprintf, sprintf -> ksprintf
- include <systm.h>
1996-10-10 19:59:17 +00:00
christos 95e30eafe7 printf -> kprintf, sprintf -> ksprintf 1996-10-10 19:58:18 +00:00
christos bf78c76b40 - move a variable declaration that is unused under NetBSD into the ifdef
for FreeBSD
- printf -> kprintf, sprintf -> ksprintf
1996-10-10 19:55:48 +00:00
christos a9f11a46e4 printf -> kprintf, sprintf -> ksprintf 1996-10-10 19:54:10 +00:00
christos 9cbe3b9d5f - printf -> kprintf, sprintf -> ksprintf
- include systm.h
1996-10-10 19:53:03 +00:00
christos 9cc736c839 - printf -> kprintf, sprintf -> ksprintf
- remove unused variables.
- fix cleanup code in case of probe failure.
1996-10-10 19:52:10 +00:00
christos e596968eda - printf -> kprintf, sprintf ksprintf
- const poisoning for the copy routines.
- fu* su* fixes:
  XXX:
    1. These are poorly named [better names should have real sizes in them]
    2. Not all of them are in use implemented
    3. Interface is broken; no way to detect errors in fu*
    4. The kernel man 9 pages for copy, fetch and store leave a lot to be
       desired.
1996-10-10 19:25:45 +00:00
christos 5476886e52 printf -> kprintf, sprintf -> ksprintf 1996-10-10 17:47:29 +00:00
christos de1b2b437e printf -> kprintf, sprintf -> ksprintf 1996-10-10 17:16:17 +00:00
jtc c5364e6a93 S_ISFIFO(x) should not return true with sockets. S_ISSOCK(x) should
not return true with fifos.  Users who want the previous behavior can
use (S_ISFIFO(x) || S_ISSOCK(x)).
1996-10-10 14:34:37 +00:00
thorpej 4a23efc7bc Fix botch in netbsd-1-2 merge (multiple inclusion of <sys/tty.h>),
pointed out by Jonathan Stone <jonathan@DSG.Standford.EDU>.
1996-10-10 00:27:41 +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 63a2506f79 Merge netbsd-1-2 branch back into mainline. 1996-10-09 01:15:04 +00:00
thorpej f2e79979ad Merge the netbsd-1-2 branch back into the mainline. 1996-10-09 00:59:15 +00:00
mrg 9545fa196f select -> poll 1996-10-09 00:50:55 +00:00
thorpej 0644233c4c Merge the netbsd-1-2 branch back into the mainline. 1996-10-09 00:49:40 +00:00
thorpej 401d011da6 Merge netbsd-1-2 branch back into mainline. 1996-10-09 00:14:32 +00:00
mycroft 02ee12e4ba Use PHOLD() and PRELE() rather than frobbing p_holdcnt directly. 1996-10-09 00:04:39 +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
thorpej 8ef7e73ff1 Merge netbsd-1-2 branch back into mainline. 1996-10-08 22:18:02 +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
ws e9276ff40b Add (first cut of) description of what to do when porting KGDB to
new architectures or implementing new device drivers for it.
Note the interface to serial lines (SLIP/PPP) is not yet described here.
1996-10-08 16:39:55 +00:00
cgd 35ae7afd12 remove #include of <machine/exec.h> from exec.h and place it, as
a #include of <machine/aout_machdep.h>, in exec_aout.h.
1996-10-08 13:10:29 +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 1878cacd45 KNF, de-static the functions that were static (so they'll show up
in ddb, etc.)
1996-10-08 03:40:40 +00:00
gibbs b9c06e6fa3 dev/microcode/aic7xxx/aic7xxx.seq,
dev/microcode/aic7xxx_seq.h,
dev/ic/aic7xxxreg.h:
  Remove intrinsic knowledge about SDTR and WDTR messages and replace it
  with a generic message system that allows the kernel driver to handle
  SDTR, WDTR and any other type of extended message it chooses too.  This
  makes the sequencer code much simpler, makes extended message handling
  debuggable since the bulk of the work is in the kernel driver, and saves
  lots of instruction space.

  Regen microcode header file.

dev/ic/aic7xxx.c, dev/ic/aic7xxxvar.h:
  Add code to handle WDTR and SDTR negotiation in light of the changes in
  the message interface to the sequencer.  Don't reject targets that
  negotiate async by sending an SDTR with a 0 offset.  Use an sdtr message
  with 0,0 to negotiate async when a target suggests a period that is too
  long for us to handle.  Some tape and cdrom drives don't like us doing
  the message reject that we did in the past.

  Fix a problem with handing the QUEUE FULL condition.

  Fix a race condition (most likely the cause of the SCB paging problems) that
  might allow the sequencer to get unpaused before the condition that caused
  it to be paused (a SEQINT) was handled.

  Race condition pointed out by Doug Ledford <dledford@dialnet.net> and
  by "Dan Willis" <dan@plutotech.com>.

dev/pci/ahc_pci.c:
  Add support for the 2940AU, an aic7860 based controller.

dev/pci/pcidevs.h, dev/pci/pcidevs_data.h:
  Add product IDs for the 2940AU, aic7860 and aic7855.

  Regen data file.

scsi/scsi_message.h:
  Add MSG_EXT_SDTR_LEN and MSG_EXT_WDTR_LEN - the length of bytes in these
  extended messages.

Thanks to Chuck Cranor <chuck@maria.wustl.edu> for testing these changes
out for me.
1996-10-08 03:04:02 +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 912e6fef44 include <sys/exec.h> rather than <machine/exec.h> 1996-10-07 21:47:33 +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 5094e48557 don't include <machine/exec.h> here. Even if it's necessary,
it's already included by <sys/exec.h>.
1996-10-07 19:55:07 +00:00
cgd 7b01c01516 read user SP into core dump's trapframe 1996-10-07 19:09:17 +00:00
cgd cd3ab82ec2 clean up a comment added in the last commit 1996-10-07 18:29:24 +00:00
cgd 5d4cf83257 when loading interpreter: check its vnode type, check its mount point
for NOEXEC and NOSUID, and make sure the interpreter file is executable.
The mount point checks are done because, even though the interpreter
is not the program being 'executed', code from the interpreter is being
executed, and so the mount point's flags should be respected.
1996-10-07 18:24:48 +00:00
christos 3e00b323f3 Fix PR/2801: Zero length svr4_mmap() should return EINVAL. 1996-10-07 16:16:14 +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
chuck b10785c0e4 fix "control reaches end of non-void function" in check_eh() for -Werror. 1996-10-06 21:24:36 +00:00
thorpej bc504916f3 Garbage-collect some sun3-specific stuff, add some debugging code,
and KNF.
1996-10-06 19:07:53 +00:00
thorpej 61a0ffca58 Fixup (unused) netstrategy() routine's calling convention (just returns
EIO).  Garbage collect unused netioctl() - conf.c redirects netioctl()
to noioctl().
1996-10-06 19:07:00 +00:00
thorpej a3c29be5e0 Fixup ctstrategy() calling convention. The standalone ct driver
works again.
1996-10-06 19:05:27 +00:00
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 767522373b If we get a RXRDY interrupt, but RXRDY is not set in the LSR, briefly set IER
to 0.  This fixes a condition where some UARTs send an infinite stream of
RXRDY interrupts.
1996-10-06 01:52:26 +00:00
mycroft d1f08e3e87 Serial console changes:
* Enable FIFO with trigger level 1.
* Set DTR and RTS so terminals are happy.
1996-10-06 01:46:04 +00:00
mycroft 6ea58d5fae Serial console changes:
* Enable FIFO with trigger level 1.
* Set DTR and RTS so terminals are happy.
* Do not set IEN.
1996-10-06 01:42:45 +00:00
thorpej 67cd067f25 Nuke __BDEVSW_DUMP_OLD_TYPE. 1996-10-06 00:15:31 +00:00
thorpej 39cbdb7e9f Fix kernel crash dumps. Still uses the old format for now. 1996-10-06 00:14:12 +00:00
mrg 6ad189ffbb minor copyright update. 1996-10-05 23:50:49 +00:00
mrg a632bcbe9c update for kern/sa lib Makefile.inc changes. 1996-10-05 23:46:43 +00:00
mrg 7b71cdec46 minor copyright update. 1996-10-05 23:41:53 +00:00
leo 84ed172edb Minimal bus.h. Together with the minimal pci implementation, we have just
enough functionality to find a VGA card....
Will be expanded when I buy more pci-cards ;-)
1996-10-05 21:45:30 +00:00
leo 080ee49d98 minimal pci support 1996-10-05 21:41:36 +00:00
thorpej d01962702f General cleanup:
- make a prototyping sweep
	- do some garbage collection
	- always print the status of enabling memory parity checking
Still some more to do.
1996-10-05 09:22:47 +00:00
thorpej 84b3384afb Check for internal HP-IB in SYSFLAG much earlier (i.e. before the MMU
is turned on).
1996-10-05 09:19:58 +00:00
thorpej f52b60c3a0 Prototype ledcontrol(). 1996-10-05 09:18:22 +00:00
thorpej 2ec75a3c3c Cast a volatile pointer to caddr_t for a call to badbaddr(). 1996-10-05 09:17:38 +00:00
thorpej a6a1f78d0c Handle kernel trace traps and breakpoints like the Sun3 port:
- Only pass user trace traps and breakpoints on to trap().
	  Gets rid of some hair in the trace/breakpoint trap cases.
	- Before entering the debugger, switch to a temporary
	  stack so that the debugger can alter the stack pointer.
	- Add glue for KGDB (still not complete).
Some other minor cleanup:
	- Protect against some bad pointer derefs.
	- Be more a little more verbose when a fatal trap
	  occurs to aid debugging.
1996-10-05 07:24:10 +00:00
thorpej 8499e0131e Handle kernel trace traps and breakpoints like the Sun3 port:
- Only pass user trace traps and breakpoints on to trap().
	- Before entering the debugger, switch to a temporary
	  stack so that the debugger can alter the stack pointer.
	- Add glue for KGDB (still not complete).
Clearly mark the MMU enable trampoline code.
1996-10-05 07:16:52 +00:00
thorpej 0ff075f6e7 Define FR_SIZE as sizeof(struct trapframe) 1996-10-05 07:11:44 +00:00
thorpej 2f9a90e967 Don't lower spl before calling main. For now, do it right before
calling hilinit().  Eventually, would like to enable them only after
autoconfiguration is finished.
1996-10-05 07:06:11 +00:00
scottr d2be4a69c2 Expand tab in copyright message; it loses on some consoles. 1996-10-05 06:32:43 +00:00
thorpej 2793eb282e If console is on an ite, make sure the HIL is initialized enough for
the keyboard to work.  Fixes a bug where booting with `-d' worked
only on systems using a serial console.

While I'm here, eliminate some redundancy in the ite console intialization
code.
1996-10-05 05:22:04 +00:00
jtk fb2727b7e6 update to compile; needs new enum name 'Elf_sht_progbits' 1996-10-05 00:12:49 +00:00
thorpej 5f728fb6de Garbage-collect some now-unused PANICBUTTON code. 1996-10-04 22:22:15 +00:00
thorpej 608fae21af Clean up handling of non-maskable interrupts. 1996-10-04 22:19:47 +00:00
thorpej 5c34a4ce35 Use FBTYPE_RESERVED3 for our `unknown' fbtype ... RESERVED1 seems to
have disappeared.
1996-10-04 20:35:53 +00:00
thorpej 3db7555465 Returning ENODEV is not correct in a poll entry point. Instead, since
read/write returns an error, use seltrue().
1996-10-04 20:34:33 +00:00
cgd c488b75b83 kill misnamed __indr_references() macro, that would have broken things
if it _had_ been properly named.
1996-10-04 19:30:04 +00:00
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
thorpej 9a4909e2e2 Prototype cd9660_setattr(). 1996-10-04 03:27:49 +00:00
thorpej f3a02a3e45 Prototype the inline functions before declaring them. Compiles again
on the SPARC.
1996-10-04 03:23:36 +00:00
explorer 870052156e Better error message when the card is found but shared memory isn't enabled 1996-10-04 01:28:54 +00:00
thorpej f0929a096f Correct a comment about cdev_fb_init(). 1996-10-03 23:40:59 +00:00
cgd 55c7430b56 rename the ELF section type constants to be Elf_* rather than Elf32_*,
since they're shared between ELF32 and ELF64.  (Thought i checked this in
earlier, but apparently didn't!)
1996-10-03 22:55: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
cgd 8bc6b679b5 fix typo in definition of Elf32_e_ident 1996-10-03 05:20:58 +00:00
cgd 65148dea43 kill (re)definitions of EXEC_ELF32. They're no longer necessary
(because of the EXEC_* option changes), and now cause warnings.
1996-10-03 05:02:05 +00:00
thorpej 8dd444adbd Fix a section header check that didn't get updated with the elf32/elf64
changes.  Make this compile again with the new EXEC_* options.
1996-10-03 02:16:18 +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
thorpej 5636f8d06d Make sure a kgdb.h file gets generated.
(*grumble*)
1996-10-02 21:41:37 +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
cgd bd581c1c73 fix several endianness bugs that caused name lookup (!!) and symlink
expansion to fail on little-endian machines.
1996-10-02 20:28:26 +00:00
ws 2da166f660 Fix p_nice vs. NZERO code.
Change NZERO to 20 to always make p_nice positive.
On Christos' suggestion make p_nice explicitly u_char.
1996-10-02 18:04:56 +00:00
ws 31afb65969 Remove superfluous -I. accidently introduced when I imported the PPC port 1996-10-02 16:19:51 +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 cc06b3f10f Remove the implicit inclusion of EXEC_ELF32 when COMPAT_LINUX and/or
COMPAT_SVR4 is included.
1996-10-02 05:30:29 +00:00
cgd ccd26363f6 allow a.out executable support to be optional (conditioned on EXEC_AOUT),
and shell script support to be optional (conditioned on EXEC_SCRIPT).
Remove the implicit inclusion of EXEC_ECOFF when COMPAT_OSF1 and/or
COMPAT_ULTRIX is included, and of EXEC_ELF32 when COMPAT_LINUX and/or
COMPAT_SVR4 is included.
1996-10-02 05:29:29 +00:00
mrg 0b5143d0a7 we don't need bsd.prog.mk here. 1996-10-01 23:42:47 +00:00
cgd 60b9a20b61 initialize vnode_free_list and mountlist at compile time with the new
queue.h list/queue head initializer macros.  mountlist was converted so
that panics (or other reboots) early on in kernel startup don't cause
sys_sync() to croak.  vnode_free_list was converted because it was nearby.
1996-10-01 22:49:11 +00:00
cgd ed72b85031 add and document *_HEAD_INITIALIZER macros, which provide structure
initializers which can be used to initialize list/queue heads at
compile time.
1996-10-01 22:45:06 +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
christos 76f9ea8676 Elf32_sht_progbits -> Elf_sht_progbits 1996-09-30 23:56:01 +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
cgd 3b34cba879 exec vnode locking protocol changes: in a nutshell, don't keep vnodes
locked for any longer than we have to.
1996-09-30 23:18:43 +00:00
cgd 6f5b5cefc7 make the check_header and load_file functions static 1996-09-30 23:02:14 +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
jonathan 1a7bdb411d Added non-enodev() poll() entrypoint for framebuffers to cdev_fb_init(). 1996-09-30 22:27:46 +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 0d59d2eb20 Enter new KGDB on panic just like other kernel debuggers 1996-09-30 17:32:01 +00:00
ws 5804d3f648 PowerPC port 1996-09-30 16:34:14 +00:00
ws 093a00671f Add (and change) machine independent files for KGDB support 1996-09-30 16:16:45 +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
ws 839f3e4fe9 Add missing extern declaration of dumpsize 1996-09-30 16:03:15 +00:00
ws fd225e6527 Add support for booting from cd9660 fs
Support directory traversal and symbolic links for nfs booting
Close device when file opening failed
Plug memory leak in ufs code
1996-09-30 16:01:18 +00:00
ws d67d39b37c Allow compilation of libkern as library for standalone programs 1996-09-30 15:54:35 +00:00
ws f41078daf3 Extern inline functions to better support cross-compilation 1996-09-30 15:53:13 +00:00
ws 7299885617 Allow changing the length of devices and fifos on the readonly 9660 fs. 1996-09-30 15:52:00 +00:00
ws f3c7374317 Formatting police 1996-09-30 15:50:19 +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
mrg ba10db77a3 install sys headers from sys/Makefile. 1996-09-29 23:29:16 +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
christos 169edbf5a3 Don't epstop() at the and of the attach 1996-09-29 11:20:32 +00:00
christos 26699175a4 Apply PR/2661 [from Jonathan Stone] 1996-09-29 11:19:42 +00:00
jonathan 3281d4c16d Fix cut-and-paste (ouap vs ap) bugs so the previous revision actually
compiles.  Change variable names to use "ap" instead of "ouap" everywhere
to avoid similar bugs in future.
1996-09-29 10:52:02 +00:00
jonathan 9b84ee7f35 Fix data-corruption bug on async targets:
*  When we are transferring in DATA (in asc_dma_in) and the target
  is an async device, there is sometimes an extra byte in the FIFO.
  If so, we need to drain that byte out of the fifo, but if and only
  if the target is async.  See also the comments in asc_dma_in()
  in the related Mach mk84 asc driver (scsi_53C94_hdw.c), which
  has an identical fix but applied in more restrictive conditions
  than we need, with async *disk* targets, as well as async tapes.

* Add a watchdog and timeout active SCSI requests, to eliminate any
  potential for deadlock due to applying the fix above on newer
  silicon versions of the 53c94 which may not have the above problem.
  Should use the MI scsi per-target timeout instead, when available.
1996-09-29 03:02:19 +00:00
christos 2dff852a85 Add prototype for quotactl. 1996-09-28 19:07:06 +00:00
mhitch 5699bff0d4 The declarations for the interrupt enable address should only be done if
_KERNEL is defined.  The bash install process was including the extern
statements into its generated Makefile.
1996-09-28 15:54:04 +00:00
mhitch 3a51f86499 Check only the IR bit of the CIAB 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-28 15:45:41 +00:00
mycroft 4cd799d5a9 Remove unused variable. 1996-09-28 03:37:36 +00:00
mycroft aaad0e1149 Sync with Alpha version. 1996-09-28 03:21:04 +00:00
mycroft 3729419cc8 * Bitbucket extra status bytes rather than barfing.
* Add copyright.
1996-09-28 03:16:56 +00:00
mycroft e097189e2b Restructure code more like aic6360 driver. Also:
* Check for some errors during reselect.
* Don't recognize MESSAGE PARITY ERROR.  A target is not allowed to
send it.
* Check the size of a SDTR.
1996-09-28 02:10:55 +00:00
thorpej 8d5c3b9cd1 Sync with the alpha version, fixing several SCSI protocol bugs.
NOTE: THESE FILES ARE NOW IDENTICAL TO THEIR ALPHA COUNTERPARTS.
The C preprocessor does the Right Thing when these files are built
on a SPARC.  This makes it significantly easier to diff the two
versions (until a real MI 53c9x driver is done, hint hint).
1996-09-28 01:49:06 +00:00
thorpej 15516a9a89 - Add some missing prototypes and kill an unused label.
- Add some missing SPARC_DRIVER stuff.
- Make SPARC_DRIVER automatic.

This driver now compiles as-is and works on both the SPARC and Alpha.
1996-09-27 21:37:17 +00:00
cgd ad1c1f7b3d fix up section header type enum/values 1996-09-27 21:21:15 +00:00
mycroft be1172e37b Fix dangling pointer in debugging message. 1996-09-27 20:21:38 +00:00
mycroft 00089386d6 If we get an unexpected disconnect while issuing a REQUEST SENSE, do a reset. 1996-09-27 19:55:41 +00:00
mycroft 3075e1443b Functional changes:
* Handle message retransmissions and partially sent messages correctly.
* Make sure we clear ATN after the last message is sent.
* Do the right thing if the target initiates negotiation for async mode
after having negotiated sync mode.
* Fix some cases where we set ATN with no message queued, or schedule a
message without setting ATN.
* Issue a REQUEST SENSE after an unexpected disconnect, per SCSI spec.
* Fix abort handling in a number of cases.
* Recognize selection timeouts better (to speed up probing).
1996-09-27 19:36:34 +00:00
abrown 28068e33c0 Oops. Last change will slow down a GENERIC kernel. Add a CPU type test
for cleanliness.
KNF a return statement.
1996-09-27 18:30:15 +00:00
cgd 7c3255776d slightly clean up some of the changes made when ELF64 support went in 1996-09-27 18:14:23 +00:00
cgd d896ecd5f0 compile .S files with cpp | sed | as, to work around a bug with the
ELF-outputting version of the assembler.  (It was dying when it saw
some CPP line number markers.)  This is temporary.  (Workaround suggested
by Matt Thomas.)
1996-09-27 17:33:04 +00:00
cgd a3ad409098 add EXEC_ELF64 and EXEC_SCRIPT as standard options 1996-09-27 17:18:02 +00:00
cgd 80f9ed76f6 update for changes to config. 1996-09-27 17:08:32 +00:00
abrown d7ef005a81 Fix long-standing bug with Lance ethernet and Sun4m's, where each packet
would generate two interrupts, one real and one spurious. The solution
is to force a drain of the SBus->MBus write buffers after writing to the
lance to clear the interrupt. Thanks to Chris Torek for pointing out a much
easier way to do this than I had planned...
1996-09-27 15:11:43 +00:00
scottr 0f40954572 Add ROM vectors for the LC III, verified by Mike DeLima
<miked@netrover.com>.
1996-09-27 06:55:29 +00:00
cgd fea9aa2096 clean up a comment (in code derived from the a.out code, where i cleaned
up the comment earlier).
1996-09-27 03:38:27 +00:00
chopps daf7d29beb make work with DESTDIR 1996-09-27 03:23:12 +00:00
cgd 2f42e5b8ed fix some typos and clean up some comments. 1996-09-26 23:34:46 +00:00
cgd bbfe67624b enough 64-bit fixes to make network booting work on the Alpha. In general,
these are hacks (s/long/int/, etc.), but this code really needs a heavy
cleaning (including fixed-size typing) and I don't have time to give it one
now.
1996-09-26 23:22:01 +00:00
cgd f496a53cbf make sure new allocations are aligned. 1996-09-26 23:15:00 +00:00
cgd f4888b894a label changes, pulled down from libc 1996-09-26 23:04:30 +00:00
cgd db9418238e add support for the prom 'write' operation. 1996-09-26 22:51:53 +00:00
cgd d7d34c74ec since these just included mips/ecoff.h, they need to be changed to include
mips/ecoff_machdep.h.
1996-09-26 22:40:53 +00:00
cgd 64f4e1937e rename <machine/ecoff.h> to <machine/ecoff_machdep.h> for clarity and
consistency with the way machdep headers for other things are done.
(the creation of the ecoff_machdep.h files was done on the CVS server, to
keep the RCS logs intact.)
1996-09-26 22:39:14 +00:00
cgd 0e097578a2 add and use a machine-dependent header, which currently defines some
macros to use to remove #ifdefs from the machine ID case check.
Eventually, these headers will contain other information, e.g.
machine-dependent relocation information, etc.
1996-09-26 21:50:55 +00:00
cgd aff6c1c4c7 kill DDB 1996-09-26 21:45:05 +00:00
cgd 9c3e274c7b adapt ELF-using compat code to use new ELF definitions/code. At this point,
these are restricted to 32-bit ELF, and should be severely cleaned.
1996-09-26 20:52:42 +00:00
cgd 79bd41b179 add support and reorganize for 64-bit ELF, included by EXEC_ELF64
option.  (Also, make EXEC_ELF32 option a way to explicitly include
32-bit ELF support.)
1996-09-26 20:51:03 +00:00
cgd 006b20dd51 add definitions for 64-bit ELF. Provided by Matt Thomas, then integrated
and cleaned up a fair bit.
1996-09-26 20:48:55 +00:00
thorpej e1b380e139 Fix a bus mem space leak; always unmap the card, regardless of the success
of cy_find().
1996-09-26 19:24:04 +00:00
thorpej a962c12194 Use "cy_port_num" rather than "cy_port" where appropriate. 1996-09-26 19:16:02 +00:00
christos 869fd46175 Implement T_FIXALIGN by adding code to fix unaligned accesses and a bit
in md_flags. This should bring the solaris mac emulator software a step
closer to working.
1996-09-26 18:58:33 +00:00
christos e33f712af6 Initialize md_flags. 1996-09-26 18:55:51 +00:00
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 8eca2b2bb4 * Rewrite asc driver with ``mi'' backend and parent-specific front-end
cfattach code for TC SCSI option cards  and ioasic 53c94 baseboard SCSI.
    ascvar.h:  shared softc  declarations
    asc_ioasic.c: ioasic front-end code.
    asc_tc.c: Turbochannel option (and 5000/200 basebard) front-end code.
* ioasic_attach meeds more work to eliminate pmax_type dependency
   and to verify the clocks speed passed to 53c94.
* Add prototypes for asc script entry points; should compile with
  -Wstrict-prototypes -Wmissing-prototypes.
* Use tcvar.h interface.  The usage of tc_syncbus() and tc_mb() may
  not be quite stylistically on an Alhpa, but it apparently makes no
  difference on the eerly-generation Alpha CPUs in TC Alphas.
1996-09-25 21:07:46 +00:00
christos 3f15a06497 Recognize %.2x as %02x 1996-09-25 21:03:06 +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
thorpej 63b18ee2f2 This file is now obsolete. 1996-09-25 20:44:09 +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 42d3980338 Fix PR/2779: statvfs returns incorrect sizes. From Aaron Brown 1996-09-25 04:37:13 +00:00
mycroft 605403ce1e portal_fsync -> genfs_nullop 1996-09-25 03:01:41 +00:00
christos f44e9d22db Avoid problems with ptrdiff_t and size_t being different on different
architectures, by adding explicit casts to printf arguments. Is there
a better way to do this?
1996-09-25 02:22:10 +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
christos ded50ae798 New Cyclades driver from Timo Rossi 1996-09-24 18:02:33 +00:00
christos e76a4ef86b New cyclades driver from Timo Rossi. 1996-09-24 17:59:33 +00:00
christos 7c744984f3 New cyclades driver from Timo Rossi. 1996-09-24 17:47:14 +00:00
christos 5d34f1a62b New cyclades driver from Timo Rossi 1996-09-24 17:45:14 +00:00
christos 3f0fed8ce8 Add stub for cyclades multi-port serial cards 1996-09-24 17:43:35 +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
ghudson ed1f3fd647 Handle relative paths to the source tree if they begin with '.'. 1996-09-23 05:01:52 +00:00
ghudson a08c3a1feb Handle relative paths to the source directory if they begin with a '.'. 1996-09-23 05:00:45 +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
cgd 788923c1ab add a missing #else, pointed out by Wolfgang Solfrank 1996-09-22 16:23:31 +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
perry 17fcad6b2c commit fix in pr 2772 -- the IP input code was assuming that the
reserved (must be zero) flag must necessarily be zero. We now define
an IP_RF (by analogy to IP_DF and IP_MF) and mask it out when necessary.
1996-09-21 19:44:32 +00:00