Commit Graph

7260 Commits

Author SHA1 Message Date
scottr 5f20924433 Move the I/O map kludge for II-class machines into the MRG init code. No
effective change, but this is more correct and averts some potential
problems.
1996-04-01 04:30:23 +00:00
briggs 1fa595a2f1 Clean up for higher warning level. 1996-04-01 01:35:48 +00:00
pk 25b6ab86fe Update device list. 1996-04-01 00:20:31 +00:00
pk 3cf5ed1f30 Various cleanup; mostly trailing spaces/tabs. 1996-03-31 23:44:53 +00:00
pk 8347d3f584 The sun4m name for this device is "auxio". 1996-03-31 23:43:21 +00:00
pk 301e978cf8 Various sun4m-related changes straight from Aaron. 1996-03-31 23:38:29 +00:00
pk e0344005b4 Changes to match 4m-aware locore.s. Note changed `trapbase' and
`sparc_interrupt_{44c.4m}' labels.
1996-03-31 23:35:20 +00:00
pk e743dda2a9 Update for 4m locore.s. Remove some items, since locore.s now #includes
param.h
1996-03-31 23:28:03 +00:00
pk cf4009e56c Include support for sun4m timers and counters: hardware register layout
has changed. There is a counter for each CPU (currently, just one supported).
1996-03-31 23:24:59 +00:00
pk 8de1fd22bc Add sun4m support. Many, many changes..
Note on multi-architecture kernels: most architecture dependent traps are
forked off directly by having a separate trap table for each (sun4,sun4c,sun4m)
This reduces the number of tests on `cputyp' significantly, and it's easier
on the mind. There are still some entry points that need to test `cputyp',
most notably microtime().. yuck.
1996-03-31 23:19:22 +00:00
pk 6d76616bf0 The sun4m IOMMU "device". 1996-03-31 23:09:32 +00:00
pk 7b55c61c27 Include support for sun4m timers and counters: hardware register layout
has changed. There is a counter for each CPU (currently, just one supported).
1996-03-31 23:07:59 +00:00
pk df2a68f25b Add sun4m VA definitions (for clock and interrupt).
Make these generic for all architectures (i.e. avoid `#if defined(SUN4*)'s).
1996-03-31 23:03:31 +00:00
pk ff109a19a3 Accomodate sun4m CPUs and caches (Aaron). Cache handling needs to be
revised.
1996-03-31 23:00:40 +00:00
pk df08150880 Updates for sun4m. 1996-03-31 22:57:09 +00:00
pk 35802bf06b Accomodate sun4m device layout (v3 PROM) and special 4m startup goo.
Heavily cleaned from most `#if defined(SUN4*)' stuff in favour of
CPU_ISSUN4* macros.
1996-03-31 22:55:33 +00:00
pk 678fbb4806 sun4m device definitions and bus structure. 1996-03-31 22:52:38 +00:00
pk b2d12c182b Aaron's sun4m-related trap handling (memory faults).
Note that fork() no longer return in syscall() in the child.

Add a couple of `#ifdef DEBUG's.
1996-03-31 22:51:58 +00:00
pk d15de4b09b Initialize DMA addresses properlier in cpu_startup().
dumpsys(): do not try to dump first physical page, this fucks up pmap_extract().
1996-03-31 22:48:24 +00:00
pk 3c89c0901d Aaron's SRMMU/sun4m pmap implementation.
Note: multi-architecture kernels use function pointers for several PMAP
entry points.

Cut down the `#if defined(SUN4*)' mess severely by using CPU_ISSUN4*
macros (see machine/param.h) wherever possible.
1996-03-31 22:42:59 +00:00
pk 2f3ec93250 Various cleanup; mostly trailing spaces/tabs. 1996-03-31 22:38:29 +00:00
pk 66539854e8 Diddling of the `power' bit in machine control register (Aaron). 1996-03-31 22:34:40 +00:00
pk 954302ae70 Handle sun4m `ledma' and `espdma'.
DMA setup requires services of the IOMMU.
1996-03-31 22:32:45 +00:00
pk 7e45b3449f Re-arrange a bit to stear clear of gcc `-Wall' bites. 1996-03-31 22:30:50 +00:00
pk 25aa56ae29 Handle sun4m `obio' devices.
Cleanup `#if defined(SUN4*)' mess.
1996-03-31 22:28:38 +00:00
pk 96f175d477 Add sbus_translate() to deal with slot address translations, including
new v3 PROM style "range" properties. This routine is also called from obio.c
(which can be viewed upon as just a another Sbus slot).
1996-03-31 22:27:15 +00:00
pk 345295ff08 Deal with sun4m le/ledma. Work around spurious interrupt problem (aaron). 1996-03-31 22:22:52 +00:00
pk bb0897eec6 Various cleanup; mostly trailing spaces/tabs. 1996-03-31 22:21:21 +00:00
pk 1c8b452515 Add a non-interrupt-priority-lowering version of SPL(). Used by splpmap()
at the moment.
1996-03-31 22:20:14 +00:00
pk 76404b0bbe Add sun4m CPU/MMU identifications. 1996-03-31 22:18:16 +00:00
pk 5703b83d00 Move autoconf subroutine prototypes to autoconf.h
Deal with sun4m `software interrupts'.
1996-03-31 22:17:14 +00:00
pk 8d9fbd0949 Add some v3 PROM glue.
Move autoconf subroutine prototypes here (from cpu.h).
1996-03-31 22:12:34 +00:00
pk 0ab4a52862 Add SRMMU/sun4m support. Size and layout of `struct pmap' has changed. 1996-03-31 22:09:13 +00:00
pk 922201e06a Add SRMMU/sun4m definitions.
Cleanup (i.e. mostly delete) `#if defined (SUN4*)' in here.
1996-03-31 22:06:55 +00:00
scottr 8b3fdd9943 Make this compile again by including <sys/types.h> 1996-03-31 14:21:03 +00:00
jonathan 3f7833c4aa Replace open-comment accidentally removed from copyright notice
whilst adding new-style NetBSD cvs id.
1996-03-31 04:38:46 +00:00
jonathan d5363eaabc Fix make depend target, and add -Werror to CFLAGS. 1996-03-31 04:34:20 +00:00
jonathan 74def7cfa4 fix "#define #define CLKF_USERMODE" typo. 1996-03-31 04:16:46 +00:00
jonathan 5163f64c0f merge mips and pica locore.S, pass 0:
* cut-and-paste all the code for both r2000 (MIPS-I) and r4000 (MIPS-III)
      into both the pica and pmax locore.S.

    * Change the names of the small segments of vector code that are
      bcopied to the machine vector locations, to avoid clashing.
      Get rid of the Sprite MachXXX names for the vector code, and
      use use mips_r2000_xxx and mips_r4000_xxx instead.

      Update the names used in the vector-copying code and trap handlers
      to match.

    * Most of the rest of the pica locore.S was copied from the pmax
      locore.S, and then edited to work on an r4000.  The names of
      functions and of manifest constants stayed the same, although
      both assmbler code and constant values changed.
      cut-and-paste such code into contiguous blocks protected by
      #if / #endif.  Much of the cache and trap-handling code
      needs r3000-only register fields, on the r3000, and r4000-only
      insns and registers on the r4000.

   * change the pmax r2000 exception-handling code to extract a trap
     code with the user/kernel bit at 0x20 rather than 0x10.
     (r2000s have 4-bit execption codes, r4000s have 5-bit.)
     Use the a 16 from-user-space + 16-from-kernel space jump table,
     just like on the r4000 pica port.

   * add NOPs to the common code where required by the r4000 pipeline
     constraints.
   * add _C_LABEL() macros to the r4000 locore.

Comitted to provide a snapshot for others to test, and work on a cleaner merge.
1996-03-31 03:38:21 +00:00
perry f825488c3c Added (commented out) line for joystick driver. 1996-03-30 23:57:09 +00:00
jtk 7ab53a4163 fix up ddb at boottime for pcvt--device not allocated yet, and not used by pcintr 1996-03-30 23:40:18 +00:00
christos b646bc023a New md conf.h per Jason's plan. 1996-03-30 21:17:55 +00:00
christos 393ad3332b Don't need this anymore; it's data are moved to <machine/conf.h> and conf.c 1996-03-30 21:15:03 +00:00
christos 2d29d17da3 Deprecate use of *_conf.h and use only <machine/conf.h> and <sys/conf.h> 1996-03-30 21:13:53 +00:00
christos c3a3efa9e6 Fix db_printf formats. 1996-03-30 21:13:02 +00:00
christos 32fe9b6a79 iUse <machine/conf.h> instead of sparc_conf.h 1996-03-30 21:12:16 +00:00
christos e4397b82d7 Use machine/conf.h, instead of sparc_conf.h 1996-03-30 21:11:33 +00:00
christos a1777d0168 Remove u_int casts from the printf %b formats. 1996-03-30 21:10:37 +00:00
christos 933d138841 Change %r -> %: as for recursive printf's 1996-03-30 21:01:21 +00:00
is 62dcb879c0 Typo squished. 1996-03-30 16:22:55 +00:00
mycroft bd6e60f0d5 Add explicit return types. 1996-03-30 07:51:51 +00:00
mycroft fba10af524 Add explicit return types. 1996-03-30 07:30:33 +00:00
mycroft e1ceb9a557 Add wds0 and wds1 to generic kernels. 1996-03-30 05:42:45 +00:00
briggs 8326aadde5 via.h -> machine/viareg.h. 1996-03-29 02:27:42 +00:00
briggs b39b4939fc Fix minor oversight in a sanity check--caught by Jason, I think, and reported
by Scott.
1996-03-29 02:12:41 +00:00
briggs 08126b5bec via.h -> machine/viareg.h. 1996-03-29 02:06:04 +00:00
briggs fdcac3b557 via.h -> machine/viareg.h and some other prototyping fixes. 1996-03-29 02:00:38 +00:00
briggs efa0c4d683 Make NTOH[SL] and HTON[SL] (void) (x) instead of (x) to get around
compiler warnings.  Followed the lead set in the sparc port.
1996-03-29 01:40:31 +00:00
mycroft df45c0b542 Prototype some internal functions. 1996-03-29 01:15:04 +00:00
mycroft 6424af4c10 Prototype delay(). 1996-03-29 00:23:28 +00:00
mycroft 6e2bbd2d92 Use offsetof() for structure offsets. 1996-03-28 23:44:04 +00:00
mycroft 42bfe3a4f3 Add a return type for main(). 1996-03-28 22:33:10 +00:00
mark 06ae03c8b0 Use the generic mouse ioctl names instead of the quadmouse ones. 1996-03-28 21:56:40 +00:00
mark e50a0e4440 Support the ARM7500 IOMD as well as the RPC600 IOMD. 1996-03-28 21:55:15 +00:00
leo 4f5cc6fac1 Drop in a more interlligent version check. 1996-03-28 21:53:35 +00:00
mark 910ee34995 Remove definitions of the inb() and outb() macros as they are now
defined in a header file.
1996-03-28 21:52:32 +00:00
mark ba871a93aa Initial commit of the PS2 mouse driver. 1996-03-28 21:50:19 +00:00
mark 0b89016846 ramdisk is now a psuedo device. 1996-03-28 21:45:40 +00:00
mark 1ff14b3c1f ramdisk is now a psuedo device.
Added pms PS2 mouse device.
1996-03-28 21:44:06 +00:00
mark e36164c8fa If the irq number passed to irq_claim()/irq_release is -1 extract
the irq number from the irqhandler structure.
1996-03-28 21:43:52 +00:00
mark c5a198dd29 ramdisk device is now a psuedo device.
Added pms device for PS2 style mouse.
1996-03-28 21:42:00 +00:00
mark 8564f152ec Added character device pms to the device table. 1996-03-28 21:40:22 +00:00
mark 9d048bd529 Define macros for inb() outb() inw() outw() inl() outl(). 1996-03-28 21:35:51 +00:00
mark 93602531a6 Added definitions for RC7500 motherboard interrupt numbers. 1996-03-28 21:29:32 +00:00
mark 044c783484 Added definitions for RC7500 motherboard IO addresses. 1996-03-28 21:28:21 +00:00
mark 7d06b49a23 Added definitions of ARM7500 IOMD. 1996-03-28 21:26:05 +00:00
mark 0ff466e21a Add VIDC20 phase lock loop frequency information for RC7500
motherboards.
1996-03-28 21:22:24 +00:00
mark 4b10d39797 Added support for RC7500 motherboards and non VRAM video systems.
Use frequency lookup table for RC7500 systems.
1996-03-28 21:18:40 +00:00
mark fba7f55646 Fix printing during attachment now ramdisk is a psuedo device. 1996-03-28 21:14:13 +00:00
is a0d45384b6 The interrupt routine of the ivsc (and the empsc, which seems to have copied
it) looks truncated. At least the return(1) is missing, which I now add as
a first stopgap. Somebody needs to find out if anything else is missing for
these boards.
1996-03-28 19:23:32 +00:00
is 8435085f72 Adapt to new attach scheme. Fix operator precedence error. Normalize
function name prefixes.
1996-03-28 18:56:08 +00:00
is fa2b7f8f47 Emplant SCSI driver backend by Sean Riddle and Bo Najdrovsky. 1996-03-28 18:41:45 +00:00
jonathan d76659a9c6 Update Pica machdep.c and locore.S to work with new, "merged" machdep.h:
* Add a MIPS-I (r3000) exception handler to the Pica locore.S.
      Change the names of the masks used to extract the exception code
      to the new MIPS_xxx names.
    *  Rename the vector code from MachException() to
      mips_r4000_exception, in both locore and in the init_main()
      code that copies it from locore to the exception vector locations.

    * Change the locore and C code to use the new MIPS_SR_INT_IE
      name for the Status register master interrupt-enable bit.

Similar changes to the pmax equivalents are in progress.
1996-03-28 12:50:37 +00:00
jonathan 8b7ade02ab Split Per Fogelstrom's Pica trap handler into two parts:
arch/pica/pica/trap.c, a generic mips trap handler
	arch/pica/pica/pica_trap.c, a  handler for Pica interrupts.

so that the common pmax and pica  trap handling can eventually be
merged and moved to arch/mips/mips/trap.c
1996-03-28 12:40:33 +00:00
jonathan 4b0f110028 Remove lint from pica kernel to compile with -Werror:
* Add cast to hardclock when it's used directly as an interrupt handler.
   * Add a null-interrupt-establish function, to avoid int vs void lint
     in pica/dev/dma.c.
   * fix include in pica/include/pccons.h to work with "standard"
     kernel-compile include path.
1996-03-28 12:26:31 +00:00
jonathan 34ab2734da Resolve all differences between the Pica and pmax versions of machConst.h:
* add "MIPS_3k_" for the MIPS-I r[23]000-specific register definitions.
    * add "MIPS_4k_" for the MIPS-II/III r4000-specific register definitions.
    * add #defines that provide the old values for locore and user
      code, so the existing code continues  to compile.

Regression-tested against the  old headers by grepping for #define's,
editing out the defined symbols, and preprocessing with both the previous
machConst.h headers and this version.

Some unused symbols (CPU and FPU must-be-zero constants) are no longer defined.
Pica interrupt masks are now constant expressions instead of constant
values.

TODO:
    * factor out the common #defines into src/sys/arch/mips.
    * Get rid of the Sprite coding-style names (MACH_xxx).
    * Separate out the r3k/r4k differences from the Pica/pmax differences.
    * Figure out how to have a run-time choice of r3k vs. r4k support,
     instead of a compile-time choice.
1996-03-28 11:34:05 +00:00
phil 5f5484b74a tweek to delay (locore.s) and to FPU trap handler(trap.c). 1996-03-28 05:00:06 +00:00
phil e7b9b54ea3 Remove __SWAP_BROKEN. 1996-03-28 04:53:17 +00:00
phil 6d61867cc0 Remove old files not needed now that the pc532 uses the MI ncr5380 driver. 1996-03-28 04:49:32 +00:00
mark 611837babe RCS Id police. 1996-03-27 22:42:08 +00:00
mark 57dd9b776a Push r4-r6 on the stack at the beginning of the function to avoid
trashing r5 and r6 if copystr() is called with a length of 0.
1996-03-27 22:19:32 +00:00
mark c8d5b80dea Define name for the floppy interrupt handler.
Fixed declartion of fdopen() now that it does not clash with fdesc open
function.
1996-03-27 22:18:44 +00:00
mark 585c401e02 Define name for the interrupt handler.
Include mouse.h instead of qmouse.h now that there is a generic
interface.
1996-03-27 22:14:45 +00:00
mark 9852119eff Updated to reflect the latest major/minor allocations. 1996-03-27 22:09:30 +00:00
mark 395f0fd59c Define name for the interrupt handler for use with vmstat -i. 1996-03-27 22:08:25 +00:00
mark 8345378c81 Define name for interrupt handler. 1996-03-27 22:07:26 +00:00
mark b4aaf66b7a Remove prototype for Debugger() as this is defined in systm.h. 1996-03-27 22:05:19 +00:00
mark 6245ffb5e5 Define a name for the sbic interrupt handler. 1996-03-27 21:51:22 +00:00
mark 44d3ebb603 Define a name for the network interrupt handlers for use with vmstat
-i.
1996-03-27 21:49:26 +00:00
mark 30fe804249 Define a name for the vsync interrupt handler. 1996-03-27 21:47:29 +00:00
mark 79ec25c520 Removed #define/#undef of fdopen as clash with fdesc nolonger exists.
Removed local definition of cdev_qm_init. Mouse drivers are now declared
with cdev_mouse_init from sys/conf.h
1996-03-27 21:42:36 +00:00
mark c1dff5e43e Removed duplicate stores and loads of the stack pointer during context
switches. Removed some dead debugging code from the __FORK_BRAINDAMAGE
days.
1996-03-27 21:24:39 +00:00
mark 02aafe8ddb Define a name for the hardclock timer interrupts. 1996-03-27 21:21:59 +00:00
mark cf15dd8123 New description of the generic mouse interface structures and ioctls.
This will replace qmouse.h now that we have multiple mouse drivers to
support and want a common interface.
1996-03-27 20:57:18 +00:00
mark 47804c6e17 Table of interrupts names has been padded out to 14 characters so that
it can be filled in when interrupt handlers are attached. Table moved
from the text area to the data area.
1996-03-27 20:42:53 +00:00
mark 6119d33eeb Build the intrnames table from the interrupt name strings for vmstat -i
if IRQSTATS is defined.
1996-03-27 20:16:30 +00:00
mark 2f5136afa9 Added ih_name field to the irq handler structure to point to an ascii
name for the interrupt. Used to build the intrnames table for vmstat -i
1996-03-27 19:42:03 +00:00
perry ee2fa11baf add joystick driver from Matthieu Herrb (pr #2267) 1996-03-27 19:11:13 +00:00
perry 39ac1f2cad Remove obsolete rd_match_hook and sync with sun3 version again. 1996-03-27 16:38:33 +00:00
leo ccde176c63 Small nits because of changes in ym2149 handling. 1996-03-27 12:15:28 +00:00
jonathan 999a06cace Update Pica kernel configuration (files.pica, std.pica) and the default
template to use the merged mips code in sys/arch/mips/{conf,mips}.
1996-03-27 11:02:19 +00:00
jonathan 77199aee5c Update Pica kernel makefile template (Makefile.pica) to NetBSD 1.1A
conventions, so that Pica kernel can build libkern and libcompat.
Based on the changes to pmax/conf/Makefile.pmax.
1996-03-27 11:00:38 +00:00
leo 202c5712f6 - Add printer device
- Add ym2149 files
- Make ramdisk a pseudo-device
1996-03-27 10:31:09 +00:00
leo 28e46e648f Add centronics printer driver. 1996-03-27 10:20:44 +00:00
leo 8526e9844c Allow call-back functions to drop to spl0(). 1996-03-27 10:16:04 +00:00
leo 72e826cbd4 Remove rd_match_hook(). 1996-03-27 10:13:09 +00:00
jonathan ba9685ceff minial subset of bus.h, from CGD's description:
bus memory and I/O space access functions/macros, to be used by
machine-independent code for more sane access to bus resources.
New functions will be added to this set, in the future, as appropriate,
but this is a good starting set.  Defines:
        bus_{io,mem}_{map,unmap}
        bus_{io,mem}_{read,write}_{1,2,4,8}
functions, and several types to go with them.
1996-03-27 10:09:10 +00:00
leo c5a7f4e977 Take out direct access to the YM2149. The chip definitions are moved
from video.h to ym2149reg.h.
1996-03-27 10:07:45 +00:00
jonathan 5cb9a24e79 Fixup after "New device attachment scheme": Fix cfattach typos.
"struct cfattch pms_ca" (should be "cfattach"), and
"struct cfattach fd_cd" ("should be fd_ca").
1996-03-27 10:02:56 +00:00
mycroft 30c174cdcf Use a more standard and more sane error cleanup convention... 1996-03-27 06:49:54 +00:00
cgd da3136aba8 modify these to provide a new, better-specified PCI interface
(soon to be documented on mailing lists; eventually in section 9 manual
pages), most importantly:
	(1) support interrupt pin swizzling on non-i386 systems with
	    PCI-PCI bridges (per PPB spec; done, but meaningless, on i386).
	(2) provide pci_{io,mem}_find(), to determine what I/O or memory
	    space is described by a given PCI configuration space
	    mapping register.
	(3) provide pci_intr_map(), pci_intr_string(), and
	    pci_intr_{,dis}establish() to manipulate and print info about
	    PCI interrupts.
	(4) deprecate the pci_map_* functions, and provide them only
	    as compatibility interfaces (in pci_compat.c) which will
	    eventually go away, implemented as wrappers around
	    the functions described above.
	(5) make pci functions take as an argument a machine-dependent
	    cookie, to allow more flexibility in implementation.
1996-03-27 04:01:10 +00:00
scottr 360590468a Remove bogus reference to BSDSRCDIR here; still doesn't work, though. 1996-03-27 03:56:22 +00:00
gwr a77bcc1072 replaced by if_levar.h 1996-03-26 23:17:13 +00:00
gwr f8a1588bfc This was carved up and reincarnated as si* 1996-03-26 22:08:24 +00:00
gwr 96918eaac2 obsolete 1996-03-26 22:05:53 +00:00
gwr 2e7e6c537d Use the traditional names (*reg.h, *var.h) 1996-03-26 22:04:14 +00:00
christos 564084ce99 - add the GETHRTIME and GETHRVTIME traps. Do the best we can for them.
- getcontext() fills the stack_t portion of the context with an 8k size
  stack, 0 flags, and below our current stack pointer. I am not sure where
  to set the pointer. Thanks pk [2-2] for noticing that.

Now netscape and java work...
1996-03-26 19:09:31 +00:00
christos 70e15a2ba9 Make fpu_regs a union of doubles and ints to get the alignment of the
machine dependent portion of the context correct. Thanks pk [1 of 2]!
1996-03-26 19:04:48 +00:00
is 77e56e826d Yet more MC68060 bits. 1996-03-26 16:55:37 +00:00
gwr 92d7925a57 No longer used. 1996-03-26 15:23:35 +00:00
gwr fa59facc05 New autoconfig design that controls attach order. 1996-03-26 15:15:46 +00:00
gwr 3bc57e3794 Document how to configure a kernel with ttyc,ttyd instead of kbd/ms 1996-03-26 15:14:27 +00:00
gwr c5ea521ed9 New "mainbus" driver allows control over autoconfig order. 1996-03-26 15:03:58 +00:00
gwr c0a60cd87b New driver to handle the "interrupt register". 1996-03-26 15:03:11 +00:00
gwr e4b4200e43 Take advantage of the new config attach stuff by
splitting out the obio and vme support code.
Also move it back to the traditional name (si).
1996-03-26 15:01:10 +00:00
gwr 3d58330322 No longer need rd_match_hook. 1996-03-26 14:58:47 +00:00
gwr fa2d8c6e76 New driver for handling the memory error interrupt. 1996-03-26 14:57:43 +00:00
gwr 5ea3281a61 Adapt to redesigned autoconfig scheme for obio, and
define a fast ETHER_CMP routine for dev/ic/am7990.c
1996-03-26 14:42:18 +00:00
gwr 8eb8bb83b4 Take advantage of the new config attach stuff by
splitting out the obio and vme support code.
1996-03-26 14:38:29 +00:00
jonathan 449a7f5b59 Remove files moved to mips/mips; they are included in mips/conf/files.mips.
Add the pmax-specific portion of trap handler, pmax/pmax_trap.c, which
was split off from pmax/trap.c.
1996-03-26 12:21:39 +00:00
jonathan bfa1f425bc Add mips/mips/mem.c and mips/mips/process_machdep.c 1996-03-26 11:45:59 +00:00
jonathan 467aeaf9f5 Remove src/sys/arch{pmax/pmax,pica/pica}cpu_exec.c; no significant differences,
or for which the Pica port is an older revision of the pmax branch.

A merged version with the NetBSD/pmax revision history is in mips/mips/.
	cpu_exec.c
	elf.c
	mem.c
	process_machdep.c
1996-03-26 11:43:41 +00:00
pk c299fd2d61 Bitfields are unsigned. 1996-03-26 01:28:50 +00:00
pk a8564828ee Back to normal printf()s, now that gcc understands `%b'. 1996-03-26 00:35:25 +00:00
mrg 8d14f53bd0 install stand tools. 1996-03-25 22:48:09 +00:00
pk 3d5031d609 PROM does not like %p's.. 1996-03-25 20:46:56 +00:00
perry 0e05503b1b added to support rd (ramdisk) pseudodevice needed for new install system. 1996-03-25 18:49:18 +00:00
perry 0c01ef4333 Add changes to support rd (ramdisk) pseudodevice, needed for new
install system.
1996-03-25 18:47:47 +00:00
perry 4a9fd2c5f4 Added support for rd (ramdisk) pseudodevice, needed for new install system. 1996-03-25 18:44:29 +00:00
jonathan 97f32908b1 Split trap handler into mips-generic and port-specific functions:
* Delete pmax-specific functions and declarations from trap.c

* Delete mips-geeneric functions and declaratinos from pmax_trap.c

* Rename the function pointer used to handle hardware interrupts to
 "mips_hardware_intr".  Define it in trap.c. Change references elsewhere,
  including machdep.c.

Verified to boot on a 5000/200.
1996-03-25 06:44:17 +00:00
jonathan 458024d39d Random additions from the Pica r4k port:
* Add spl4() and spl5() functions from the Pica port.
* Add MachFPTrap() as an alternate entry point for MachFPInterrupt.
  The r4k reports floating-point execptions as a trap, not an interrupt,
  and the Pica port uses the name MachFPTrap().
* Add nops to the Mach_spl?() functions and MachFPInterrupt, as required
   for the r4k port.
Commit "floppy"  interrupt counter for vmstat -i.
1996-03-25 06:40:39 +00:00
jonathan 522f8705a1 Copy src/sys/arch/pmax/pmax/trap.c to pmax_trap.c.
trap.c will contain the port-independent mips trap-handling functions.
pmax_trap.h will contain the pmax-specific interrupt handlers.
1996-03-25 05:55:30 +00:00
perry 3a7ebace87 Add COMPAT_11 option. 1996-03-25 05:45:08 +00:00
briggs b329936803 Fix for more pedantic -W options. 1996-03-25 03:27:51 +00:00
jonathan e920e8f829 Force reporting of memory errors for the 3MAX (aka kn02 aka 5000/200) to
always be eight digits.
Copy the kn02 memory-interrupt reporting function to the kn03 (5k/240)
memory-error handler, since the 3MAXPLUS seems to use the same ECC hardware
as the 3MAX.
1996-03-25 03:18:15 +00:00
jonathan 36424c73cf Rename the original pmax/include/machAsmDefs.h file, with CVS history,
to mips/include/asm.h.

Until all references to <machine/machAsmDefs.h> in the pmax and
pica tree are changed  to use <mips/asm.h> directly, just do
#include <mips/asm.h>, for compatibility.
1996-03-25 02:55:18 +00:00
jonathan 3b5a818c4e Rename from pmax/include/machAsmDefs.h to mips/include/asm.h.
Update the include-idempotency preprocessor token to match.

References to machAsmDefs in vendor (sprite, 4.4bsd) headers left unchanged,
for historical accuracy.
1996-03-25 02:50:50 +00:00
briggs 2422f1bc4e Get rid of a compiler warning about Debugger(); 1996-03-24 16:58:46 +00:00
jonathan 29aa0d22ca Replace pica and pmax include/trap.h with versions that #include <mips/cpu.h>,
after merging the definition of T_USER in the pmax port, and moving
the result to mips/cpu.h.
1996-03-24 08:17:04 +00:00
jonathan 71b212b66a Change pmax T_USER bit (software only) to be 0x20, the same as the
Pica port. (The r4000 CPU used in the pica has more hardware execption types.)
1996-03-24 08:12:53 +00:00
jonathan c5f3b155a3 Replace pica and pmax include/cpu.h with versions that #include <mips/cpu.h>,
and add port-specific and r3k vs. r4k definitions.
1996-03-24 07:54:42 +00:00
mhitch e1d4601b24 Fix for SCSI mode sense disk_pages structure change, and use the _lto3b()
conversion function.
1996-03-24 04:12:27 +00:00
pk 2dd9317452 Remove reference to sense code "internals". 1996-03-23 21:09:04 +00:00
jonathan 893a0b508b fix case typo: CLKF_BASEPRI_R4k to _R4K 1996-03-23 20:28:19 +00:00
jonathan cd58cb9caa Factor out r3000 versus r4000 differences (CLKF_USERMODE() and CLKF_BASEPRI()),
provide r3k and r4k versions of each, and move to sys/arch/mips/include.

Note in comments where each mips-based port should provide
definitions in its own cpu.h after including this file.
1996-03-23 20:21:49 +00:00
jonathan cc54da72aa Just include the merged pica/pmax r2000/r4000 mips_opcode.h from
mips/include/mips_opcode.h.
1996-03-23 19:10:06 +00:00
jonathan 78aac1c7b9 Merge in additions of missing MIPS-I opcodes, and r4000-in-32-bit mode
opcodes from the Pica port.   Per Fogelstrom claims the latter are all
supposedly  MIPS-II (r6000) instructions, rather than MIPS-III (R4000),
but we haven't checked to be sure.  Are LL/SC really in MIPS-II?
CVS:: ----------------------------------------------------------------------
1996-03-23 18:49:29 +00:00
is a6a8779b4e It looks like the sense_data structure lost the extended_ prefix in the
name of some of its members. Adapt sbic.c to this. (Fixes PR 2245)
1996-03-23 15:09:54 +00:00
scottr ecd20bc823 Add PPP compression options 1996-03-23 06:12:11 +00:00
jonathan bfb10e5bdf Rename "pmax_elf_makecmds()" to "mips_elf_makecmds()".x 1996-03-23 04:59:00 +00:00
jonathan 8fb3add520 * Change setregs() to copy the initial entry point to $t9, to support PIC
code following the MIPS ELF abi.
* Move the kn01 interrupt handler outside of #ifdef DS5000, to support
  3100-only kernels.
* Add #ifdef DS3100 around kn01_enable_intr() to allow configuring
  turbochannel-only kernels.

Configuration-time support for specific models of DECstation still needs
more thought/work.
1996-03-23 04:35:03 +00:00
jonathan 1ca217b445 Replace the following header files from src/sys/arch/pica/include/
with versions that  include  equivalent files from <mips/include>.
(cvs magic copied the previous revisions, with history, to
 src/sys/arch/mips/include).

ansi.h bsd-aout.h cdefs.h ecoff.h elf.h endian.h exec.h float.h ieeefp.h
kdbparam.h limits.h pcb.h pmap.h proc.h profile.h ptrace.h reg.h regdef.h
regnum.h reloc.h setjmp.h signal.h stdarg.h types.h varargs.h vmparam.h

NB: Some files (e.g., limits.h reloc.h pmap.h) add pica-specific #defines
to the  generic mips support.
1996-03-23 03:42:25 +00:00
leo 634f5ade49 Correct #ifdef that survived the after-debug cleanup (Thanks Chris). 1996-03-22 09:07:03 +00:00
gwr ac302c84e6 Correct type of the nofault pointer. 1996-03-21 23:03:49 +00:00
gwr edf28f2285 Catch-up with cf_driver/cf_attach changes. 1996-03-21 23:01:21 +00:00
is 2ecf0a7b85 Interupts must be disabled and cleared before the PROM is read, as the int
line is shared with one of the PROMs address lines.
From PR #1478 by Jukka Marin.
1996-03-21 21:00:21 +00:00
scottr 32a38f24e7 DEBUG -> SBC_DEBUG, and fix comment regarding sbc_options 1996-03-21 04:49:20 +00:00
mark cb3bacff44 Added abort function that just hangs in an infinite loop.
GCC/arm addeds calls to abort to the end of functioned declared
as not returning e.g. panic().
1996-03-20 18:57:58 +00:00
mark 9adb4b41cb Make this work following the attachment changes. 1996-03-20 18:49:56 +00:00
mark 6973956563 Fixed references to match function. 1996-03-20 18:46:58 +00:00
mark c8d47951ba Fix references to the match function. 1996-03-20 18:38:00 +00:00
is ab622e51f5 - Zeroth version of M68060 support (dont want to cause emulation traps for
the "Fast Assembler Version of the copy loop)
- Yet another sanity check included: initialize unused receive buffers to
  zero sender id; and test for sender hardware id of zero in the receiver.
  Gives us better error messages in case flaky hardware causes spurious
  receive interupts.
1996-03-20 13:28:50 +00:00
leo 8106a55133 And more proto's..... 1996-03-20 13:11:56 +00:00
leo e0aeb3dc13 Another bit of prototyping... 1996-03-20 12:41:30 +00:00
jonathan 212f41c0da Merge more header files with arch/mips/include, by replacing
with versions that #inlude the <mips/XXX.h> file:
	reloc.h regnum.h varargs.h
1996-03-20 09:49:29 +00:00
leo 083fa0d1b9 Belongs to the last changes made to the ??boot/??boot.s files I did
yesterday.
1996-03-20 08:23:35 +00:00
leo 7b7df70d77 Fix typo in neew config changes. 1996-03-20 08:17:48 +00:00
scottr 0b59005d3d Fix a long-standing bug uncovered by the new device attachment
model.  Thanks to Jason Thorpe for the fix (fixed PR 2235).
1996-03-20 05:10:54 +00:00
jonathan 69a70ec129 Merge in changes from the Pica port.
Still needs more thought for single-stepping and process_write_regs().
1996-03-20 01:30:49 +00:00
jonathan 5d4883f9ed Add "mips" to the machine line, to make config create a link
compile/XXXX/mips ->  mips/include, and to use mips/conf/files.mips.
1996-03-20 01:17:06 +00:00
thorpej 5c98887b14 Fix typo. 1996-03-19 22:56:53 +00:00
jonathan e3bc270a69 Change "XXX_pmax" to "XXX_mips" in preparation for merging with
Pica reloc.h.
1996-03-19 22:18:45 +00:00
jonathan f8342fcf97 Remove #ifdef LANGUAGE_C - protected definition of "struct reg".
(It was a duplicate of the real definition reg.h and was never used.)
1996-03-19 15:20:39 +00:00
leo 414369f5c6 Use the right cd-names. 1996-03-19 13:16:47 +00:00
leo 38432e7448 Debugger() prototype is in systm.h, don't define Debugger() here. 1996-03-19 13:15:34 +00:00
is f6ff8b93d4 Add clobber lists at the appropriate places. The MMU initialization would
brake with gcc272 -O2.
1996-03-19 11:12:10 +00:00
jonathan 4758b69e7b Replace ansi.h with a version that just does #include <mips/ansi.h>. 1996-03-19 11:00:16 +00:00
jonathan 53143b46f1 more merged pmax/mips header files: types.h
Replace header files from src/sys/arch/pmax/include/ with versions that
include  equivalent files from <mips/include>.
(cvs magic copied the previous revisions, with history, to
 src/sys/arch/mips/include).
1996-03-19 05:18:26 +00:00
jonathan e1373a1fbf Replace the following additional header files from src/sys/arch/pmax/include/
with versions that  include equivalent files from <mips/include>,
after merging changes from the pmax and pica ports into the
src/sys/arch/mips/include tree.

	ptrace.h cdefs.h pmap.h signal.h kdbparam.h
1996-03-19 04:39:01 +00:00
jonathan d2c42783a3 Add trap definitions added for the r4000 port.
Note: T_USER is different in the pmax and pica ports!
1996-03-19 04:34:57 +00:00