Commit Graph

17637 Commits

Author SHA1 Message Date
jonathan a066eecaf8 MachHitFlushDCache() -> mips3_HitFlushDCache() outside pmap.c. 1997-06-18 04:51:15 +00:00
jonathan a1085c85ae typo. 1997-06-18 04:23:52 +00:00
jonathan bbc40c6757 RCS id police.
Add a copyright, and a copy of the copyright from the 4.4BSD locore,
from which this is a derived work (as the CVS logs show).
1997-06-18 04:23:14 +00:00
mhitch b61d107b9b Save and restore usermode PC to/from current pcb instead of the RA slot of
the stack frame when usermode interrupt occurs.  The interrupt may have
modified the PC [such as sendsig()].  This got dropped with the stackframe
changes.
1997-06-18 04:07:06 +00:00
kleink 93da19a2f1 Rewrote break/parity/framing error handling from spec. 1997-06-17 20:41:59 +00:00
cgd 75979242d2 clean up spacing before a few DPRINTFs. Also, make the no-32-bit-support
cases uniformly DPRINTF'd and also distinguished by using slightly different
strings for each.
1997-06-17 06:06:25 +00:00
cgd 22da43e670 Change expected mapping register type argument for the pci_mapreg_map()
call for the board's memory space to be PCI_MAPREG_MEM_TYPE_32BIT_1M or
PCI_MAPREG_MEM_TYPE_32BIT depending on the board ID.  Also, remove a
bogus extra argument to an interrupt-establishment-error printf.  Problems
pointed out by Jarkko Torppa <torppa@cute.fi> in PR 3753, but fixed slightly
differently than he suggested.
1997-06-17 05:44:22 +00:00
cgd 57f46a9e4a fix several bugs pointed out by Jarkko Torppa <torppa@cute.fi> in PR 3753:
(1) fix a printf format (%x to print int, not %lx).
(2) fix probe of 4th chip/16th channel (used to tell whether or not the
    board is a 16- or 32-port board) by removing an incorrect offset so
    that the code matched its comments. (!!!)
(3) fix storage of chip number in per-channel structure so that it actually
    stores the chip number, rather than the chip offset.  This allows the
    driver to work with more than the first four channels (i.e. with chips
    other than chip number 0, which happens to have an offset of zero). (!!!)
1997-06-17 05:38:10 +00:00
cgd 6b78891053 the port number is the low 5 bits of the minor. That means that it should
be masked with 0x1f (the low 5 bits), rather than 0x0f (the low four bits).
Pointed out by Jarkko Torppa <torppa@cute.fi> in PR 3753.
1997-06-17 05:32:46 +00:00
mhitch 806f730e87 Remove stray macro definition; didn't hurt for MIPS1 only, but wrong for
MIPS3.
1997-06-17 04:12:38 +00:00
mhitch fb16ddddc7 Fix printf format/argument mismatches. 1997-06-17 04:11:33 +00:00
mhitch 6df1fecbce Virtual coeherency exception handler fixes:
Remove old code now that the new version is working.
  Correct typo for 16K cache (R4400).
  Align the saved AT register location; seems to hang if not aligned on 8
  byte boundry.
1997-06-17 04:10:19 +00:00
thorpej 3bd11220b6 Don't print a message if the user attempts SWAP_OFF. Return an error
instead.
1997-06-17 03:37:07 +00:00
jonathan b903dc73da Fix locore cache variables. (Should these be exported from locore at all?) 1997-06-17 01:40:13 +00:00
jonathan 4506da9ebd Check for '#ifdef MIPS1', not '#ifndef MIPS3', since we can now have both.
Add runtime check for 'if (CPUISMIPS3)' inside #ifdef MIPS3.
Add runtime check for 'if (!CPUISMIPS3)' inside #ifdef MIPS1.
1997-06-17 01:38:21 +00:00
is 2c7d61677f Only check for kernel bus probes when we are sure it is a bus error.
(As a side effect, this moves the  testing decision out of the main path
of the page fault code.)
1997-06-17 00:34:11 +00:00
is 5d784f73b2 Forgotten part of the 68060+bootblock+stupid ROM support: tell locore.s
that we're using BB060STUPIDROM.
1997-06-17 00:17:26 +00:00
jonathan 3d2676b809 Garbage-collect '#include <machine/pte.h>'. 1997-06-16 23:52:06 +00:00
jonathan fef3e76b31 Changes for configuring both MIPS1 and MIPS3, from a merge of
similar design and code by Jason Thorpe and Jonathan Stone.

NOTE: the kernel-stack-switching code and cacheflush() calls in
locore.S still use #ifdef MIPS3 and need more work.

mips/include/cpu.h:
    Add CPUISMIPS3 for run-time tests of what CPU architecture level
    we're running on.

mips/include/locore.h:
    Add declarations of locore cache-size variables for ref/def toolchain.

mips/include/mips1_pte.h:
    mips1 TLB bit definitions.

mips/include/mips3_pte.h:
    mips3 TLB bit definitions.

mips/include/pte.h:
    define accesor macros for TLB bits (e.g., mips_pg_m_bit(),
    that expand to CPU constants if only one CPU arch is configured,
    or to inline functions if both MIPS1 and MIPS3 are configured.

mips/mips/locore_r2000.S:
    Use MIPS1_PG_xxx constants inside mips1-specific code.

mips/mips/locore_r4000.S:
    Use MIPS3_PG_xxx constants inside mips3-specific code.

mips/mips/locore.S:
    Use MIPS1_PG_xxx constants inside mips3-specific code.
    Use MIPS1_PG_xxx constants inside mips1-specific code.
    (Needs more  work!)

mips/mips/{pmap.c,vm_machdep.c,trap.c}, pmax/pmax/machdep.c:
    Use MIPS3_PG_xxx constants inside mips3-specific functions,
         and MIPS1_PG_XXX inside mips1-specific code.
    Otherwise, use mips_pg_XXX_bit() macros where they apply,
    and use "if (CPUISMIPS3) { ... } else {... }" where they don't.

mips/mips/mips_machdep.c:
    Import Michael Hitch's fixes from the pmax locore-init code
    into mips_vector_init().

pmax/pmax/machdep.c:
    Use generic mips_vector_init() locore vector-init function.
1997-06-16 23:41:40 +00:00
is 483b07bee4 Add option BB060STUPIDROM, which makes the early kernel startup probe for
an 68060/68LC060, possibly switching on the 68060 FPU, instead of trusting
the value passed from the ROM OS to us by the bootblock.

Most 68060 boards, unlike the DraCo (which seems to have heavily patched OS
ROMs) don't set the AMIGA_68060 flag; instead, upon detecting an 68060, its
FPU is disabled to make the ROM scheduler work, and at a much later time (at
least, later than bootblock booting time), the "68060.library" installs the
Motorola 68060 software support, patches the scheduler for the 68060 FPU, and
re-enables the FPU.

Maybe this will be fixed one day, if Amiga International sells upgraded OS
ROMs which know about the 68060. Until then, and for legacy machines, this
kludge is needed if we want to boot a non-DraCo 68060.

Btw, thats why this is NOT in std.amiga, but in GENERIC; the DRACO
configuration doesn't need it (and I still plan to make std.draco go away).
1997-06-16 21:12:38 +00:00
drochner f504cf88e8 Conditionally compile without symlink support (#ifdef NFS_NOSYMLINK).
Saves 708 bytes (i386). (close pr misc/3335)
1997-06-16 20:47:11 +00:00
thorpej c61704d37c Remove the code that sets dumpdev, for two reasons:
- It was incorrect.  A dev_t should _never_ be compared against
  NULL, as 0 is a valid value (major 0, minor 0).
- The operator mave have _intentionally_ set dumpdev to "none"
  (i.e. NODEV), and setting it the first time a VBLK swap device
  is added would break the semantics.
setroot() deals with all dump device selection.  Dumps and swap are now
in no way related.
1997-06-16 20:21:55 +00:00
christos d980c28e1d From Paul Mackerras: use sl_compress_setup, not sl_compress_init 1997-06-16 17:01:36 +00:00
drochner a52a25467d Implement quad_t (%qx, %qd, %qo) printf formats.
Closes pr kern/3747.
1997-06-16 15:02:27 +00:00
mrg 5dad1a32a4 move installboot.8 into src/share so everyone builds it. 1997-06-16 13:58:24 +00:00
is 1445a45c28 Moved manpage to share/man/man8/man8.amiga 1997-06-16 13:39:48 +00:00
mrg c258d0d05e make it "options IPFILTER_DEFAULT_BLOCK". 1997-06-16 13:38:05 +00:00
mrg c78d0720ff - set dumpdev if not already set
- don't use nocoalease (from thorpej).
- fix priority list management (from pk).
- update comment for swapoff.
- free swap device extent name safely (from thorpej).
1997-06-16 13:35:17 +00:00
jonathan 2eec9b0bc3 Back out previous change:
Add placeholder for Ted Lemon's years-old-but-new cursor-movment range checks.
1997-06-16 09:53:14 +00:00
jonathan eb1d8427cc Garbage-collect redundant declarations:
mips/include/locore.h:
  Add prototypes for HitFlushDCache() functions. Moe cpu_prid definition here.
mips/include/cpu.h:
  remove  cpu_prid definition.
pmax/pmax/machdep.c:
   remove local protoypes of HitFlushDCache() functions.
mips/mips/vm_machdep.c, mips/mips/vm_machdep.c::
   remove local protoypes of HitFlushDCache() functions.
1997-06-16 09:50:26 +00:00
jonathan b0e19a6a74 Set model string for 5000/150 (kmin with r4000 daughterboard). 1997-06-16 09:19:25 +00:00
jonathan 1b10e8336c Drop in pmspoll() from NetBSD-current/i386 pms.c. 1997-06-16 09:12:14 +00:00
jonathan 79d31e9983 Delint pica Sonic driver, pass 0:
* Finish new ARP (struct ethercom) changes.
    Some references to sc_ac were left danglnig.
  * Include if_dl.h and if_media.h.
  * Delint printf() messages: int vs. long , int vs. pointer.
  * Delete unused variables.
1997-06-16 08:44:30 +00:00
jonathan 1bd86a07d6 First delint pass of old NetBSD/pica device drivers:
* add prototypes to <dma.h> for the per-device dma-setup  functions.
  * MachEmptyWriteBuffer() -> wbflush().  Also #include <bus.h>,
    so that wbflush() expants to the locore callback vector entrypoint.
1997-06-16 08:41:15 +00:00
jonathan 2d10220f8f Yet more mips1/mips3 merging:
Move mips-specific pmap definitions (PMAP_PREFER for mips3, declaratin
of pmap_bootstrap() for the system-specific machdep.c) from
arch/pmax/include/pmap.h to arch/mips/include/pmap.h.
1997-06-16 07:47:42 +00:00
jonathan df6533a42e Fix idempotent inclusion test macro: _MACHCONST -> _MIPS_CPUREGS_H_
to avoid collision with obsolete Sprite-derived NetBSD/pica  header file.
1997-06-16 07:41:08 +00:00
jonathan de475d3704 Rescuscitate after bitrot:
* rewrite findroot() based on NetBSD 1.2F i386 findoot().
  * Rewrite makebootdev() to use struct devnametodevmaj pica_nam2blk[].
    Previous changes changed the `devname' char array and findroot()
    bot not makebootdev().
  * Add prototypes, delint for gcc -Wall.
1997-06-16 07:35:46 +00:00
scottr 9dfb9a7f87 Add support for Mouse Systems A3 mouse. From Colin Wood. 1997-06-16 06:35:26 +00:00
jonathan 5db35a8cce Yet more merging:
* Move declaration of locore communcation variables (CPU family,
     cache sizes, etc) to mips/include/locore.h.  Delete from
     pmax/include/cpu.h and older versions from pica/include/cpu.h.

   * Move definitions of CLKF_BASEPRI, CLKF_USERMODE to mips/include/cpu.
   * Delete duplicate definitions in pica/include/cpu.h, pmax/include/cpu.h.
1997-06-16 06:17:25 +00:00
jonathan 8ccf9122e4 Garbage-collect MIPS_3K_xxx, MIPS_4K_xxx outidde mips/include/cpuregs.h:
MIPS_3K_xxx ->    MIPS1_xxx
    MIPS_4K_xxx ->    MIPS3_xxx
1997-06-16 05:37:32 +00:00
jonathan 3409ae8dcd Garbage-collect <machine/locore.h> 1997-06-16 04:30:15 +00:00
jonathan 157d46c672 Commit addition of `#include <mips/locore.h>' to pmax/include.bus.h. 1997-06-16 04:22:15 +00:00
jonathan c34f92cbd1 <machine/locore.h> -> <machine/bus.h> 1997-06-16 04:18:57 +00:00
jonathan 59c33b9f85 Garbage-collect #include <machine/machConst.h>. 1997-06-16 03:52:37 +00:00
jonathan d3ecedb9fb Garbage-collect non-jumptable prototype for wbflush(). 1997-06-16 03:52:08 +00:00
jonathan 0bca2bff6d include <machine/bus.h>. 1997-06-16 03:46:29 +00:00
jonathan 2557a6fa43 GC more old header files:
<machine/locore.h> -> <mips/locore.h>
    <machine/mips_opcode.h> -> <mips/mips_opcode..h>
1997-06-16 03:29:07 +00:00
jonathan 2520d0a604 Remove genassym.c. (pmax has used genassym.cf for some time.) 1997-06-16 02:58:28 +00:00
jonathan f4dc901780 Use #include <machine/bus.h> in pmax device drivers.
Garbage-collect `#include <pmax/locore.h>' lines.
1997-06-16 02:53:23 +00:00
jonathan 817af928bf Add placeholder for Ted Lemon's years-old-but-new cursor-movment range checks. 1997-06-16 02:18:47 +00:00