Commit Graph

989 Commits

Author SHA1 Message Date
gwr a4b09086fe Actually works now! 1997-02-12 01:07:56 +00:00
gwr cfb896375f Machine-dependent part of the KGDB remote "stub" 1997-02-12 01:03:20 +00:00
gwr 6ef591a70b Add a few more coments. (i.e. why init a6=0) 1997-02-11 19:06:08 +00:00
gwr f914f723de Add NBPG 1997-02-11 19:02:30 +00:00
gwr 9536056d54 Fix some comments 1997-02-11 18:59:23 +00:00
gwr 7bd7620f61 Sync with sun3. 1997-02-11 00:56:08 +00:00
gwr aebbe3f083 Change most occurrences of "struct frame" (union of all frames formats)
to "struct trapframe" (the minimal frame) because in most cases, all we
care about is the minimal, invariant part.  Further, if the declaration
says we have an arg of type "frame" (big union), then KGDB will try to
print the whole bloody thing out whether you want to see it or not.
1997-02-11 00:18:25 +00:00
gwr f13b3f57fd This is obsolete (and has been for a while) 1997-02-11 00:10:35 +00:00
gwr 2bdded1c83 Move the logic about entering the kernel debugger (whichever one) to
trap.c:trap_kdebug() so it can be C code instead of assembly.
Make sure the initial frame pointer is zero so KGDB will know when to
stop trying to follow frame pointers during backtrace.
1997-02-11 00:05:01 +00:00
gwr 1e0e399b63 Change most occurrences of "struct frame" (union of all frames formats)
to "struct trapframe" (the minimal frame) because in most cases, all we
care about is the minimal, invariant part.  Further, if the declaration
says we have an arg of type "frame" (big union), then KGDB will try to
print the whole bloody thing out whether you want to see it or not.

Also add the function trap_kdebug() which takes care of calling one of:
kgdb_trap (for KGDB), or kdb_trap, (for DDB) or the Sun PROM monitor.
This logic used to be in locore, but it is better as C code.
1997-02-11 00:01:15 +00:00
gwr 4bcf6b565f Change most occurrences of "struct frame" (union of all frames formats)
to "struct trapframe" (the minimal frame) because in most cases, all we
care about is the minimal, invariant part.  Further, if the declaration
says we have an arg of type "frame" (big union), then KGDB will try to
print the whole bloody thing out whether you want to see it or not.
1997-02-10 23:57:34 +00:00
gwr 569d97a2f9 Save/restore the monitor "v" command handler. 1997-02-10 23:44:23 +00:00
gwr b31965da5a Set cputype,mmutype at compile-time. 1997-02-10 23:42:05 +00:00
gwr b7d7f667f3 minor nit in bounds_check_with_label() 1997-02-10 23:40:24 +00:00
gwr c70de0b625 Actually works now. 1997-02-10 23:36:09 +00:00
gwr 2f46cb47e2 update comments 1997-02-10 23:35:27 +00:00
gwr dfddf9c39b Actually works now. 1997-02-10 23:34:38 +00:00
gwr f55c7652b7 Export zs_get_chan_addr() for zs_kgdb.c
Print the "console on ..." in cninit(), and
avoid reference to kbd/kd drivers if NKBD==0
1997-02-10 23:29:52 +00:00
gwr 196f91101a Make some more things static, and cosmetic stuff. 1997-02-10 23:26:21 +00:00
gwr 9f9e8281e0 Add zs_get_chan_addr(), zs_kgdb_init() 1997-02-10 23:24:18 +00:00
gwr 7ceee3c729 Add -fno-defer-pop to COPTS (helps ddb backtrace).
Add AFLAGS=-m68020 and use it with ${AS} commands.
Depend kgdb_stub.o on Makefile (KGDBDEV, KGDBRATE).
1997-02-10 19:23:41 +00:00
gwr a5b114c665 Forgot to initialize cn->cn_dev, cn->cn_pri 1997-02-10 19:11:12 +00:00
gwr 60d4782469 Get rid of HOSTED_CC. 1997-02-07 22:55:44 +00:00
gwr ca11ffdfae Kill a type-cast. 1997-02-05 17:44:59 +00:00
gwr b4f4d97d22 s/romp/romVectorPtr/ 1997-02-05 17:39:21 +00:00
gwr 84fad0db28 include <machine/pte.h> 1997-02-05 17:33:46 +00:00
gwr 699e513ced Add -Dsun3 1997-02-05 17:31:46 +00:00
gwr 8b6cbcf45c sync with the sun3x version 1997-02-05 14:51:23 +00:00
gwr c0b220738c change :: to : 1997-02-04 17:15:38 +00:00
perry 19d153fc48 Nuke some options GENERIC residue. 1997-02-04 04:57:10 +00:00
perry 0b3a46d6b3 Nuke some GENERIC residue. 1997-02-04 04:31:55 +00:00
gwr d372229de2 This little awk program translates the initialized data table found
in the assembly file genassym.s into the usual assym.h file.  The
assym.h file generated this way is identical to the output generated
if I simply compile and run the genassym.s file.  "Heh, Kewl!"
Thanks to Matthias Pfaller for the "translate the .s file" idea!
1997-02-03 21:31:17 +00:00
gwr 165a7a3eeb Put all the name/value pairs in an initialized array of structures
so that this can be compiled to assembly code and then translated
directly into assym.h by a simple awk program (genassym.awk).
This program can still be run the old way for verification.
1997-02-03 19:31:44 +00:00
thorpej 8501929f45 Use copypage() and zeropage() in the right places. 1997-02-02 08:41:10 +00:00
thorpej adcdf4cc59 zeropage -> devzeropage, and make it static. 1997-02-02 08:39:55 +00:00
thorpej 8d00d8cb60 Remove an un-true comment. 1997-02-02 08:38:51 +00:00
thorpej 95e30218f2 Declare and set cputype and mmutype. 1997-02-02 08:36:39 +00:00
thorpej 109700d828 Use copypage() and zeropage() in the right places. 1997-02-02 08:35:27 +00:00
thorpej 2bde56ef38 zeropage -> devzeropage, and make it static. 1997-02-02 08:34:16 +00:00
thorpej 3af641fa98 Remove an untrue comment. 1997-02-02 08:33:11 +00:00
gwr 186a6ad683 Add include <machine/mon.h> so this compiles, etc. 1997-01-31 22:33:47 +00:00
thorpej 739819c9ba Adopt for new file system and root spec grammar. 1997-01-31 06:05:14 +00:00
thorpej 739f23a219 This file is obsolete; this information is now generated by config(8). 1997-01-31 05:12:49 +00:00
thorpej bb87691950 Use new machine-independent setroot(). 1997-01-31 02:08:50 +00:00
thorpej 95380a8478 Adopt for new file system and root spec grammar. 1997-01-31 02:08:19 +00:00
gwr d9267b93fd Forgot to initialize cs->cs_rr0_dcd and fiends in attach. 1997-01-31 00:07:06 +00:00
gwr 3cf095df8d The sunmon_* declarations are now in machdep.h 1997-01-27 22:55:07 +00:00
gwr 5f1abbe73b Add OBIO_EMULEX_SCSI 1997-01-27 22:42:44 +00:00
gwr 2e2e2a855c Change "machdep.h" to <machine/machdep.h> 1997-01-27 22:33:34 +00:00
gwr 8fddc5d688 Kill sunmon.h 1997-01-27 22:24:03 +00:00
gwr 0352f52a7a Kill sunmon.h; add sun "code names" (Hydra, Pegasus). 1997-01-27 22:22:51 +00:00
gwr 21da6a34c0 Add machdep.h; use sunmon_abort() instead of mon_exit_to_mon(). 1997-01-27 22:16:37 +00:00
gwr 39d7966a63 Kill sunmon.h 1997-01-27 22:15:06 +00:00
gwr 46cb437677 Nuke sunmon.h, add machdep.h 1997-01-27 21:57:44 +00:00
gwr cdac61715c Just declare the sunmon_* functions here. No need for sunmon.h 1997-01-27 21:48:37 +00:00
gwr 9d2ab17c95 Include <sun3/sun3/vector.h> 1997-01-27 20:54:14 +00:00
gwr ca8e9852d2 Use sunmon_abort() instead of mon_panic(), etc. 1997-01-27 20:50:36 +00:00
gwr c8b0ad744c Changed "machdep.h" to <machine/machdep.h> 1997-01-27 20:43:51 +00:00
gwr feaca6a0df Let idprom_init() have void return. 1997-01-27 20:36:50 +00:00
gwr 9b52402303 Use sunmon_abort() instead of mon_panic()
Let idprom_init() have void return.
1997-01-27 20:35:58 +00:00
gwr 0942e69a7b Let bus_mapin() return void *; moved machdep.h 1997-01-27 19:56:33 +00:00
gwr ced023ffd8 Let bus_mapin() return void * 1997-01-27 19:54:53 +00:00
gwr f8d04bcffb Update comment about si_obio_options 1997-01-27 19:54:06 +00:00
gwr 340699a2b1 Fix copyrights (/s/REGENTS/FOUNDATION/) 1997-01-27 19:40:46 +00:00
gwr 8e207f0cda Eliminate reference to "romp" macro. Moved machdep.h, Fix copyright. 1997-01-27 19:19:59 +00:00
gwr ded84699df Use stuff from <sun3/sun3/sunmon.h>
Setup the msgbufp here like others.
Do vm_map_protect() on kernel text.
1997-01-27 17:45:50 +00:00
gwr 13cb0851cb Implement _pmap_fault() (does the VA check and calls pmap_fault_reload).
Correct VA range checks in pmap_protect and elsewhere (lower limit of
kernel VA for our purposes is virtual_avail, not VM_MIN_KERNEL_ADDRESS).
Make pmap_activate flush the cache (only if needed).  Fix copyright.
1997-01-27 17:23:31 +00:00
gwr a2bebc4a6b Sync. with the sun3x version (now the same, so sun3x can use this).
Update exframesize[] array from hp300, comments, misc. cleanup, etc.
Replace machine-dependent section that called pmap_fault_reload()
with a simple call to the new _pmap_fault() macro which does any
of that MD stuff that might be necessary.
1997-01-27 17:19:22 +00:00
gwr 39258ec971 Remove code that is now in sun3/sunmon.c (shared with sun3x)
Rename some functions (remove sun3 prefix).  Fix copyright.
1997-01-27 17:14:34 +00:00
gwr fe9fba89df Rename some of the sun3-specific things to be closer to the sun3x version.
Call pmap_activate with just one arg (the pmap), and do the cache flush
in there (if needed).
1997-01-27 17:11:36 +00:00
gwr 65e048e41c Reorder to be somewhat more "top-down" (cosmetic).
Fix copyright.
1997-01-27 17:04:12 +00:00
gwr e22c9eba99 Remove unused PMAP_ACTIVATE/PMAP_DEACTIVATE macros.
Add new _pmap_fault macro used in trap.c
Declare pmap_activate() correctly.
1997-01-27 17:02:14 +00:00
gwr 741b72ec69 Pull out things now declared elsewhere. 1997-01-27 16:58:59 +00:00
gwr dff67a76a8 Map regs using sizeof(struct lereg1) instead of OBIO_AMD_ETHER_SIZE.
Also fix copyright (s/REGENTS/FOUNDATION/)
1997-01-27 16:57:12 +00:00
gwr 4618767f94 Add sun3/sunmon.c (also kill trailing spaces) 1997-01-27 16:11:11 +00:00
gwr c19546380b Check interrupt_reg==0, not clock_va (Oops!) 1997-01-26 06:17:07 +00:00
gwr b805b73cbe Use sunmon_abort() instead of mon_panic(). 1997-01-25 21:47:44 +00:00
gwr b224329ecd Just return if clock_va is not set.
Use <sun3/sun3/sunmon.h> for abort.
1997-01-25 21:46:19 +00:00
gwr 8d9bb0e996 Use <machine/machdep.h> 1997-01-24 00:09:34 +00:00
gwr f13a8dfcb5 Use <sun3/sun3/sunmon.h> 1997-01-23 23:58:05 +00:00
gwr a4a29b13a7 Use <machine/machdep.h> 1997-01-23 23:54:26 +00:00
gwr c0170a476f Use <machine/machdep.h> and <sun3/sun3/sunmon.h> 1997-01-23 22:48:40 +00:00
gwr d33b4cd423 Load the root pointer using VM_PMAP_MMUCRP
Also rename nodb_trap to _nodb_trap
1997-01-23 22:47:36 +00:00
gwr 73234aa5f6 Use <machine/machdep.h> 1997-01-23 22:44:43 +00:00
gwr 04f1ba99a2 Remove PCB_MMUCRP, add VM_PMAP_MMUCRP and VM_PMAP_A_TMGR 1997-01-23 22:40:38 +00:00
gwr 12e2d4d8f7 Replace the intersil7170 stuff with mostek48t02 stuff.
XXX: Still need to move date conversion functions to
XXX: libkern or somewhere...
1997-01-23 22:30:15 +00:00
gwr 8b175f2050 Move a bunch of stuff to sun3/sunmon.c where we can share it. 1997-01-23 22:27:29 +00:00
gwr 06655500a0 Wrap prototypes with ifdef _KERNEL 1997-01-23 22:25:56 +00:00
gwr f91c597e92 Add <machine/pte.h> and the new pm_mmucrp member of struct pmap.
Kill macros PMAP_ACTIVATE and PMAP_ACTIVATE (not used).
Add macro _pmap_fault for use in trap.c
1997-01-23 22:24:04 +00:00
gwr 05bbc1f7ee Rename members of struct mmu_rootptr, and add a comment. (From Jeremy) 1997-01-23 22:15:41 +00:00
jeremy d0ba6f78a0 Fixed leap year bug. (Doesn't happen until 2100, but still important.) 1997-01-23 04:13:39 +00:00
thorpej 7b40f5228e "md" is declared in sys/conf/files, now. 1997-01-21 09:39:20 +00:00
gwr ad79a66933 Separate out the stuff used to get in and out of the PROM monitor.
This file can be shared between the sun3 and sun3x.
1997-01-21 00:04:37 +00:00
gwr e710e7a369 Kill PCB_MMUCTX, add VM_PMAP_CTX. 1997-01-20 18:38:31 +00:00
gwr 40e3eede04 Make this once again identical to the hp300 version.
Perhaps this should exist as <m68k/include/pcb.h>
1997-01-20 18:34:11 +00:00
gwr 090dfd13c2 Now that interrupts are enabled AFTER autoconfiguration, put in the
cute little trick where the zs interrupts are enabled as soon as the
zs driver has done its attachments.   That allows a console break to
enter the debugger during the rest of autoconfiguration.
1997-01-18 19:49:01 +00:00
gwr 324e1c6027 Enable interrupts AFTER autoconfiguration, to avoid spurrious ones. 1997-01-18 19:32:37 +00:00
gwr 94b20c709d Move sun3_btop (etc.) macros from param.h to pte.h 1997-01-18 19:27:16 +00:00
gwr 233b6dd00e Add declaration for db_recover. Also fix copyright. 1997-01-18 19:24:54 +00:00
gwr 84bd1d6f2c Use the same names (OBIO_ZS_*) as the sun3x port... 1997-01-18 19:17:28 +00:00
gwr be760a77bf Moved MACHINE_NONCONTIG into include/vmparam.h
Also kill obsolete "options NEWCONFIG" line.
1997-01-18 19:09:15 +00:00
gwr 18f6e98a4a Define MACHINE_NONCONTIG here instead of in conf/std.sun3. 1997-01-18 18:58:21 +00:00
gwr 8ea480525d Use the same names (OBIO_ZS_*) as the sun3x port so we can share zs. 1997-01-18 17:19:52 +00:00
gwr 3752fafb35 Use the same names (OBIO_ZS_*) as the sun3x port so we can share zs. 1997-01-18 16:28:56 +00:00
gwr 89778a556e Do loadcrp(&mon_crp) only when returning permanently to the monitor. 1997-01-18 16:17:33 +00:00
gwr 4dcea02177 Fix a comment (PCB_MMUCTX is a virtual address). 1997-01-17 16:30:05 +00:00
gwr aaf91fd6aa Adapt to rename of pcb_mmuctx to pcb_mmucrp, and corrected
prototype of loadcrp(), which kills some bogus type casts.
1997-01-17 16:27:17 +00:00
gwr 67015f3d8b Update for rename of pcb_mmuctx to pcb_mmucrp
Also reorder things a little.
1997-01-17 16:19:42 +00:00
gwr c3621700c9 Add PCB_MMUCTX, and reorder things a little. 1997-01-17 15:03:39 +00:00
gwr f286cdd282 Move declaration of struct mmu_rootptr to mc68851.h
Kill a cast that is now unnecessary.
1997-01-16 22:12:50 +00:00
gwr dad92086a4 Make sure the string passed to mon_reboot() is in our data segment
where the PROM can see it.  (Bug found by Jeremy  -- Thanks!)
1997-01-16 22:08:31 +00:00
gwr 07a2670421 Before dropping into the PROM monitor, restore its CPU Root Pointer (CRP),
and restore our own CRP if we resume.  Make sure the string passed to
mon_reboot() is in our data segment where the PROM can see it.
1997-01-16 21:53:07 +00:00
gwr 477556a159 Add an introductory comment about pte.h vs mc68851.h
Move sun3x_round_up_page() to here.
1997-01-16 21:48:32 +00:00
gwr cd7b9cf2ee Add an introductory comment about pte.h vs mc68851.h
Move sun3x_round_up_page() to pte.h
Define struct mmu_rootptr here.
1997-01-16 21:47:31 +00:00
gwr 66a113c1a3 Use db_regs_t instead of struct mc68020_saved_state 1997-01-16 15:41:39 +00:00
jeremy 499dd92e9d Added conditional include of iommu kernel driver manipulation routines.
Fixed a few comments.
1997-01-16 06:38:26 +00:00
gwr 2ffbfe169b Punt some historical stuff that was ifdefed out. 1997-01-14 21:01:33 +00:00
gwr daa7a6dc57 Initial import. Gets as far as nfs_mountroot. 1997-01-14 20:57:09 +00:00
gwr 3921aef310 Initial revision 1997-01-14 20:57:08 +00:00
gwr cd05f4190d Initial import. Gets as far as nfs_mountroot. 1997-01-14 20:57:07 +00:00
gwr c8cc66764e Initial revision 1997-01-14 20:57:06 +00:00
gwr 99f640b958 Initial import. Gets as far as nfs_mountroot. 1997-01-14 20:57:06 +00:00
gwr 2ad3428397 Initial revision 1997-01-14 20:57:05 +00:00
gwr 2dbfabbb97 Initial import. Gets as far as nfs_mountroot. 1997-01-14 20:57:01 +00:00
mikel aed485cdf2 add 'pseudo-device ccd' where necessary; PR kern/1830. 1997-01-11 09:11:37 +00:00
gwr 1468d5102b Remove some junk. 1996-12-30 21:13:50 +00:00
gwr b3adae991a Fix warnings. 1996-12-30 21:12:01 +00:00
pk 3bbf01bfb7 rename: ramdisk => md 1996-12-28 23:53:10 +00:00
pk d5b11782b5 rename: ramdisk => md 1996-12-28 23:27:00 +00:00
gwr 7a5585d645 Make sure the MDP_STACKADJ flag is cleared in p->p_md.md_flags
Do this in both machdep.c:setregs() and trap.c:(end of syscall)
for now.  Need more analysis to see what is the best way...
Fixes PR#3034 (Thanks very much to Ian Dall for the fix!)
1996-12-17 21:35:30 +00:00
gwr 3cc81b9726 Add a diagnostic to panic when obio config data has a
default address, which is no longer supported on obio.
1996-12-17 21:21:13 +00:00
gwr 0c5e3e4955 Make this compile with -Werror -Wall -Wstrict-prototypes
(finally! yea!)  Also get rid of __BROKEN_INDIRECT_CONFIG
1996-12-17 21:10:35 +00:00
gwr 282e39f88d Adapt to the new version of dev/ic/z8530*
(Note: now define zsc_softc here.)
1996-12-17 21:00:54 +00:00
gwr ac4b9ad819 The declarations for cache_flush_xxx are now in machdep.h 1996-12-17 20:55:28 +00:00
gwr 2140ee3fb9 The declarations for isr_add_xxx are now in autoconf.h 1996-12-17 20:54:23 +00:00
gwr 1169ecb0a2 Adapt to the new definition of struct zsc_softc
(the zsc_cs[2] members are now POINTERS!)
Also fix warnings...
1996-12-17 20:46:11 +00:00
gwr 31a2dbff56 No longer used. 1996-12-14 15:51:31 +00:00
gwr 250c59b7a6 Files with just an include line do not need a wrapper. 1996-12-13 20:23:51 +00:00
gwr 5eaee56ccf Increase MAXMCAST from 50 to 250 (to match dev/ic/i82586.h). 1996-12-13 19:54:08 +00:00
gwr 5736d8f544 Kill some dead code. 1996-12-13 19:50:10 +00:00
gwr 6d6e6e45e0 Define MAXBSIZE as 32KB to limit the size clustered transfers. 1996-12-13 19:46:14 +00:00
cgd 96acdadef7 First step inn removing config_scan() and the hacks that gave devices
on indirect-config busses a (permanent) softc that they could share
between 'match' and 'attach' routines:

Define __BROKEN_INDIRECT_CONFIG so that old autoconfiguration
interfaces are used, until drivers are converted to use the new
interfaces (actually, converted back to use the _older_ interfaces)
which prohibit indirect configuration devices from receiving a softc
in their match routine that they can share with their attach routine.
1996-12-05 00:13:47 +00:00
jonathan 4c1d96de78 * Replace explicit -O2 in CFLAGS with COPTS macro. Default COPTS?= -O2.
Lets users over-ride with makeoptions COPTS="..." in kernel config files.

  Leave `mandatory' flags (like  -msoft-float which  on m68k enforces no
  FP in kernel) in CFLAGS.
1996-12-01 06:12:25 +00:00
gwr 43df579125 Get rid of md_upte[] and my copyright line. 1996-11-25 22:09:11 +00:00
gwr 9ccd21bece Copyright assigned to The NetBSD Foundation 1996-11-21 13:57:20 +00:00
gwr 0332502588 Most files that were copyright Adam Glass and/or Gordon W. Ross
are now copyright The NetBSD Foundation (rights assigned).
1996-11-20 18:56:49 +00:00
gwr 51cc81ac4f Move SWAPPAGER, VNODEPAGER, DEVPAGER to std.sun3 1996-11-19 21:04:44 +00:00
gwr 576fa146ac kill some outdated stuff 1996-11-19 20:58:32 +00:00
thorpej a0dffcafc2 Use bitmask_snprintf(). 1996-11-13 07:00:30 +00:00
cgd 8a3333b2a9 Fix an inconsistency that came in with Lite: setrq() was renamed to
setrunqueue(), but remrq() was never renamed.  Rename remrq() to
remrunqueue().
1996-11-06 20:19:19 +00:00