Commit Graph

1394 Commits

Author SHA1 Message Date
leo d4713d24c2 Implement the kernel part of pr-1891. This allows for a more flexible sized
msgbuf. Note that old 'dmesg' and 'syslogd' binaries will continue running,
though old 'dmesg' binaries will output a few bytes of junk at the start of
the buffer, and will miss a few bytes at the end of the buffer.
1997-09-19 13:52:37 +00:00
gwr 8b680f206c Need to flush the I-cache before jumping into just-loaded code.
Without this, boot programs fail with some PROM versions...
1997-09-18 01:47:08 +00:00
mycroft a9155c5057 Set the status word as well, and remove a bogus comment. 1997-09-12 10:29:20 +00:00
mycroft 50cfb2fcdd Kill vestiges of Locore.c. 1997-09-12 07:55:17 +00:00
mycroft 982f24e698 Always initialize all registers in setregs(). 1997-09-12 07:00:30 +00:00
mycroft 16a8787248 Fix execve(2) and *setregs() interfaces so emulations can set registers in a
more correct way.  (See tech-kern.)
1997-09-11 23:01:44 +00:00
gwr b1fe1c2452 Generalize somewhat (now works for alpha too). 1997-09-10 16:25:07 +00:00
gwr d2e3710fa9 Cosmetic (s/sun3_/_/) to be closer to the sun3x version. 1997-09-05 04:51:06 +00:00
gwr c04589c8a8 Make stand/Makefile.inc work with obj directories. (Fixes PR 4014) 1997-09-05 04:31:50 +00:00
bouyer 6f3bab1f59 Merge scsipi branch in the mainline. This add support for ATAPI devices
(currently only CD-ROM drives on i386). The sys/dev/scsipi system provides 2
busses to which devices can attach (scsibus and atapibus). This needed to
change some include files and structure names in the low level scsi drivers.
1997-08-27 11:22:52 +00:00
mjacob 6ac7f6248f add a before tab to SCSIVERBOSE 1997-08-23 19:16:06 +00:00
mjacob 1a7afa3853 add commented out reference SCSIVERBOSE option 1997-08-20 18:38:13 +00:00
gwr 6b93a0192b cosmetic 1997-08-12 16:52:11 +00:00
gwr 5c339e9f73 Resolve conflict with <m68k/cpu.h> 1997-08-12 15:47:00 +00:00
fair 7a06252f07 %x -> 0x%x, fixes for PR#3757 1997-07-29 06:43:51 +00:00
fair bb5815cc39 fix compiler warnings; %x -> 0x%x; add arg to panic in change_pte appropriate to format string; see PR#3757 1997-07-29 06:41:35 +00:00
drochner bdb232d2b6 Don't use <lib/libsa/if_ether.h> anymore. This was a copy of the
old (before ARP changes) <netinet/if_ether.h>, intended for
temporary use.
1997-07-22 17:41:01 +00:00
jtk 9388f271a9 use locator defines in "locators.h" to index cf_loc[] 1997-07-17 02:12:50 +00:00
perry ad1710ce1e update comment from 1981 on memory and disk prices -- pr-2754 from Curt Sampson 1997-07-12 16:18:36 +00:00
veego 3feb40be26 Restore the define of UPAGES. 1997-07-10 08:23:30 +00:00
jeremy bbf76eb63e Implement pmap and va caching within C table managers to help speed
up PV->(pmap,va) operations.
1997-07-02 03:23:57 +00:00
jeremy 63c23f2337 Add reference to DMA selection variable used in dev/ic/ncr53c9x.c and sample
code to enable it.  Currently commented out.
1997-06-27 02:07:32 +00:00
jeremy 335b7a2d00 Duplicate changes recently made to the SPARC version of this file:
Do not print warnings if selection of a target via DMA was interrupted
by another target.
1997-06-26 02:47:09 +00:00
thorpej cf016f61f4 foosize()'s return value is in DEV_BSIZE units; adjust the size obtained
from the disklabel accordingly.
1997-06-24 00:56:28 +00:00
mrg 71ee532c82 move man pages into share/man. 1997-06-22 06:25:58 +00:00
pk f9d3344f9c xysize(): only call xyopen()/xyclose() if not already open, per the
current `openmask'.
1997-06-18 20:47:00 +00:00
pk 4269e0eab1 xdsize(): only call xdopen()/xdclose() if not already open, per the
current `openmask'.
1997-06-18 20:45:03 +00:00
mrg 552af779d2 bring mrg-vm-swap2 onto mainilne. 1997-06-12 15:46:19 +00:00
mrg dc6a98e92c bring mrg-vm-swap2 onto mainilne. 1997-06-12 15:09:23 +00:00
veego 3aed12bd06 Delete _btos and _stob.
The remaining 'Mach derived conversion macros' are now in <m68k/param.h>
1997-06-10 19:48:33 +00:00
veego 6cf26b26ae s/_round_page/m68k_round_page/ s/_trunc_page/m68k_trunc_page/
s/_btop/m68k_btop/ s/_ptob/m68k_ptob/
1997-06-10 19:42:25 +00:00
veego 6dbfc7764b s/_round_page/m68k_round_page/ 1997-06-10 19:37:58 +00:00
veego b1dc6a8603 s/_trunc_page/m68k_trunc_page/ 1997-06-10 19:36:53 +00:00
veego 489e0898d3 Delete _btos and _stob.
The remaining 'Mach derived conversion macros' are now in <m68k/param.h>
1997-06-10 19:35:56 +00:00
veego 05b8948c41 Define NBSG from (1 << SEGSHIFT) and move some variables before
<m68k/param.h>.
1997-06-10 19:32:15 +00:00
veego 6bdd438fca s/_round_page/m68k_round_page/ 1997-06-10 19:27:08 +00:00
veego 4ef51880a6 s/_round_seg/m68k_round_seg/ s/_trunc_seg/m68k_trunc_seg/
s/_round_page/m68k_round_page/ s/_trunc_page/m68k_trunc_page/
1997-06-10 19:25:28 +00:00
veego faa86d39b1 s/_trunc_seg/m68k_trunc_seg/ s/_round_page/m68k_round_page/ 1997-06-10 19:19:01 +00:00
veego 04374fdfc2 s/_round_seg/m68k_round_seg/ s/_round_page/m68k_round_page/ 1997-06-10 19:17:15 +00:00
veego 217706ec40 s/_trunc_page/m68k_trunc_page/ 1997-06-10 19:16:13 +00:00
veego 931d90fcee Use the MI <m68k/param.h> include. 1997-06-10 07:54:35 +00:00
veego a204fb7981 Initialize machine from MACHINE. 1997-06-08 23:54:19 +00:00
cjs 7a66732d34 Back out BUILDDIR and NOINSTALL changes. 1997-05-31 21:21:13 +00:00
cjs 83498d7e88 Remove empty libinstall target and add NOINSTALL=1. 1997-05-30 13:43:06 +00:00
jeremy 3f6f86d875 Undo changes which make pmap_xxxx_page() functions re-entrant; just block
all interrupts which might cause re-entrancy.

Allow virtual addresses which are not managed by the MI VM system to
participate in the PV system.

Remove a few frivoulous TLB cache flushes.
1997-05-30 07:02:14 +00:00
jeremy 4502541573 When turning off the drive motor, de-select the drive so the busy light
extinguishes.
1997-05-30 03:23:11 +00:00
gwr e512003d6e Add non-inline version of _splraise. 1997-05-29 22:20:01 +00:00
gwr bdb1fd223a typo 1997-05-29 21:26:20 +00:00
gwr 14cd11bef6 Add non-inline version of _splraise. 1997-05-29 21:22:47 +00:00
gwr b2502668e5 Increase the default datasize limit to 16MB (enough to build libc). 1997-05-29 21:18:42 +00:00
gwr 175d58b59a Define getsr() as _getsr() for backward compatibility. 1997-05-29 21:17:38 +00:00
gwr 9ab3caec28 Add inline definitions for _getsr() and _splraise(), and
define splimp() using splraise so early calls to the VM
code (and pmap) do not accidently enable interrupts.
1997-05-29 21:16:59 +00:00
jeremy 1b2aae80c2 Added new lock system for the two virtual pages used in temporary mappings.
Allows pmap_zero_page() and pmap_copy_page() to be re-entrant.
1997-05-28 04:28:52 +00:00
jeremy b53e0d4fb7 Coded to work with new lock system for tmp_vpages. 1997-05-28 04:27:00 +00:00
jeremy 89aa743138 Config file for a RAMDISK kernel. 1997-05-27 01:06:33 +00:00
jeremy fc60f1979e Prevent RAM disk hooks from compiling until sun3 md_root.c can support
ram disk images that are read in from the outside.
Sync with some old local changes.
1997-05-24 00:09:49 +00:00
jeremy 0304ff6aed Implement code to dynamically size the number of page tables based on available
RAM at boot.

Also did some cleanup of unused functions, updated several comments, and
removed unecessary 'XXX's.
1997-05-20 06:01:19 +00:00
jeremy 70d1c8b8c8 Return EIO instead of EFAULT when read/write is too big or small. 1997-05-16 05:33:48 +00:00
jeremy 608a6800e6 Things are stable enough that DDB, PMAP_DEBUG and DIAGNOSTIC aren't needed
anymore.
1997-05-15 01:49:27 +00:00
gwr a83cf310c1 The Hydra is 20 MHz and the Pegasus is 33 MHz. 1997-05-14 16:45:22 +00:00
gwr 5079510304 Make the "hydra" call leds_hydra() from clock_attach(). 1997-05-14 16:42:45 +00:00
gwr b209530013 Remove call to leds_init (it is already in obio_init). 1997-05-14 16:13:31 +00:00
jeremy ebb856e274 Long awaited MI/MD separation completed. 1997-05-14 01:37:23 +00:00
gwr 1aa91b893d Eliminate references to vmspace.vm_pmap
(also fix some comments).
1997-05-13 17:17:12 +00:00
gwr d69bf3ded2 Eliminate references to vmspace.vm_pmap
(also fix some typos in comments).
1997-05-13 17:16:28 +00:00
gwr 1d8ffff9d9 Use GLOBAL(), _C_LABEL(), etc. 1997-05-13 16:31:26 +00:00
jeremy 3d8d0c485c Add call to leds_init() after everything has started up ok. 1997-05-11 06:15:09 +00:00
mycroft 185b24dd5b Use libinstall::, not install:, to prevent instaling LIB. 1997-05-07 16:20:26 +00:00
lukem 6fe4889b92 cleanup use of whitespace 1997-05-07 02:20:26 +00:00
lukem a9016579ab clean up whitespace use 1997-05-07 02:14:59 +00:00
jeremy 3f7423a432 Wrap all label references with new macros in m68k/asm.h in preperation
for ELF switchover. (eventually)
1997-05-02 23:07:35 +00:00
jeremy e5380025ac Now in dev/ic. 1997-05-02 06:31:16 +00:00
gwr 24af362f60 Implement pmap_pa_exists() so that /dev/mem works.
This was the reason ps (kvm_getargs) did not work.
1997-05-01 15:00:11 +00:00
gwr b9a0ca59bb oops... 1997-05-01 14:58:20 +00:00
gwr 42f8cf900b Use unsigned when doing copy/xor check. 1997-04-28 23:43:56 +00:00
gwr cb96a536e4 Add a comment about obio_mapin(). 1997-04-28 23:38:47 +00:00
gwr 1046c915b6 Drivers that use obio_mapin should enforce OBIO attachment
(just to be paranoid).
1997-04-28 23:30:19 +00:00
gwr 304d49b554 include <machine/leds.h> 1997-04-28 23:21:01 +00:00
gwr 712f2e8d93 Moved leds_* declarations into leds.h 1997-04-28 23:19:39 +00:00
gwr 589bdf49d5 si_intr: if our CSR indicates an interrupt, return 1. 1997-04-28 22:10:41 +00:00
gwr 445e244536 Do console initialization earlier (see obio_init).
Document initialization order dependencies.
1997-04-28 22:08:36 +00:00
gwr 2e1c5c36ad Be quiet in _save_symtab() unless there is a problem.
Improve some comments (and sync with sun3x code).
1997-04-28 22:06:20 +00:00
gwr 2223431f0a No longer needs an early init call (just normal autoconfig).
Only animate the LEDs when we were idle (like SunOS).
1997-04-28 22:04:29 +00:00
gwr df35245ac0 Fix a bug where OBIO locators were not presented to the children.
Rename obio_alloc to obio_mapin; add comments, etc.  (like sun3x)
1997-04-28 22:02:43 +00:00
gwr 388bf0e0e0 Rename obio_alloc/obio_mapin and check for obio in match functions
for attachments that will use obio_mapin.
1997-04-28 21:59:19 +00:00
gwr a5efc65699 Sync. up with the sun3x version. 1997-04-28 21:55:59 +00:00
gwr 479d3fa66d No longer needs an early init call (just normal autoconfig). 1997-04-28 21:51:49 +00:00
gwr 3c841dcb79 Export the symbol _Idle for clock.c (and fix some comments). 1997-04-28 21:49:38 +00:00
gwr dcd4fae823 Use AUTOVEC_BASE instead of 0x18. 1997-04-28 21:48:25 +00:00
gwr 46cd1d0fec Add a kernel declarations section. 1997-04-28 21:47:10 +00:00
gwr 52e455e8ba Fix declaration of get_control_byte(). 1997-04-28 21:46:31 +00:00
gwr 236a126750 Declare peek_long(). 1997-04-28 21:45:47 +00:00
gwr a0d8cf3b65 Kill an obsolete comment. 1997-04-28 21:44:53 +00:00
gwr 5d8f130bb6 Be quiet in sunmon_abort(). 1997-04-25 22:26:14 +00:00
gwr 678f326c7f Make idprom_init() figure out where the IDPROM resides.
Add autoconfig glue, which currently just shows the
address where the IDPROM was found.
1997-04-25 19:02:06 +00:00
gwr e2ca51d2a1 Fixed OBIO locators bug, so this can do the normal thing now.
Also improved handling of spurious interrupts, and sync up with
the sparc version.
1997-04-25 18:55:05 +00:00
gwr 4c64781365 Moved the actual model identification work into identifycpu(),
which used to be in _startup.c:_verify_hardware().
Use sunmon_abort() in cpu_reboot() for now...
1997-04-25 18:52:11 +00:00
gwr 9ae1b69554 Rename "Idle" to "_Idle" so clock.c can reference it. 1997-04-25 18:48:39 +00:00
gwr 25d7b6b348 Provide a struct representing only the clock. 1997-04-25 18:47:41 +00:00
gwr 885a1fc439 Add /dev/leds support. 1997-04-25 18:46:10 +00:00
gwr 2dd63e3378 Use bus_mapin, and minor tweaks. 1997-04-25 18:45:39 +00:00
gwr f7749f47fe Add "oclock" support for the Sun3/470. 1997-04-25 18:31:37 +00:00
gwr 8f9276c727 Move the _verify_hardware() work into machdep.c:identifycpu().
Call obio_init() after _vm_init() so we can use peek_byte() to
probe the idprom.  Be quiet in _save_symtab() when all is well.
1997-04-25 18:29:58 +00:00
gwr b41693a034 Moved bus_scan() and bus_print() from here to bus_subr.c
because they are now different in sun3 vs sun3x.
1997-04-25 18:07:36 +00:00
gwr 477a320277 Moved bus_scan() and bus_print() here from autoconf.c
because they are now different in sun3 vs sun3x.
1997-04-25 18:02:47 +00:00
gwr 3619a4da3d Rename obio_alloc to obio_mapin, update *_init declarations.
Remove OBIO_P4_REG (not a fixed address, but per-device).
1997-04-25 18:00:49 +00:00
gwr 963c410824 Change the OBIO address probe order a little, to allow determination of
which kind of idprom and clock we have (3/80 vs 3/470 differences).
Fix a bug where obio_submatch() failed to copy some locators.
Rename obio_alloc to obio_mapin.  Add lots of comments.
1997-04-25 15:35:27 +00:00
thorpej 48fa8154e7 Adjust for <m68k/m68k/trap_subr.s> 1997-04-25 01:49:05 +00:00
thorpej f05b58b229 Use common m68k sigcode. 1997-04-13 02:37:15 +00:00
gwr dcc94a5dd9 Document the flags accepted by the esp driver. 1997-04-12 19:48:00 +00:00
thorpej 016ccc25a3 This file is obsolete. 1997-04-10 01:18:49 +00:00
thorpej a2be180b39 Adjust for new kcore.h 1997-04-09 21:00:35 +00:00
thorpej 00c04fe742 Use <m68k/m68k/proc_subr.s> 1997-04-09 20:58:33 +00:00
thorpej 9b8a0b60b7 Pull in m68k/cpu.h to get regdump() prototype 1997-04-09 20:50:03 +00:00
thorpej f0085f91af Adjust for new m68k/kcore.h 1997-04-09 20:49:06 +00:00
thorpej 4fb277fd75 Use <m68k/m68k/proc_subr.s> 1997-04-09 20:43:52 +00:00
thorpej 7b5647f03a regdump() is prototyped in m68k/cpu.h now. 1997-04-09 20:42:25 +00:00
thorpej fb4514fe4d Use <m68k/kcore.h> 1997-04-09 20:40:54 +00:00
thorpej 378c9b0f3b Remove redundant file directives 1997-04-09 20:37:17 +00:00
jeremy fa9f5b2448 Constants for the p4 register. 1997-04-09 04:50:43 +00:00
jeremy 3c962bb544 First working version. 1997-04-09 04:49:09 +00:00
jeremy b7dd41d4e2 Location of printer port registers for 3/80 was off. 1997-04-09 04:42:25 +00:00
jeremy 60d41bb34e Add floppy controller and floppy drive. Also add MS-DOS filesystem for
use with floppies.  Remove 'SYMTAB_SPACE' now that we have our own
bootloader.
1997-04-09 04:36:56 +00:00
jeremy eabfcc3f00 Removed spurrious ``#ifdef ISO''. 1997-04-07 21:26:19 +00:00
gwr b5f838ad77 Add a comment. 1997-04-04 20:48:59 +00:00
christos ad36b6970e Add netatalk netisr 1997-04-03 17:25:18 +00:00
gwr 0faac5faf2 Back-out the CWD hack... 1997-04-01 23:11:28 +00:00
jeremy 68755b199e Physical page status functions pmap_clear_reference()
and pmap_clear_modify() weren't testing if the page whose status was being
changed was being managed.  This caused kernel panics with X11.
1997-04-01 02:15:33 +00:00
gwr a09110f073 Use <m68k/pcb.h> 1997-03-31 21:35:39 +00:00
jeremy b572daa4dc In-tree GNU ``as'' does not know of 'pmove <reg>,tt0' instruction. Changed
instances of this instruction to hardcoded opcode statements.  Thanks to
jthorpe for pointing this out.
1997-03-31 02:22:25 +00:00
thorpej 80631ee3b7 Keep the compile/ directory in the distribution. 1997-03-31 01:23:37 +00:00
thorpej 2268a2c7eb Don't allocate mclrefcnt[]; it's dead and gone. 1997-03-27 21:01:52 +00:00
gwr 5b48e061ce cleanup 1997-03-27 00:15:31 +00:00
gwr c29412f1bb fix a warning 1997-03-26 23:27:12 +00:00
gwr 37b247edde Renames: /dumpconf/cpu_dumpconf/, /boot/cpu_reboot/ 1997-03-26 22:42:13 +00:00
gwr 71e43d14ab Move findroot/setroot stuff from configure() to cpu_rootconf(). 1997-03-26 22:38:40 +00:00
gwr 7b23790667 Add cdev_lpt_init(NPP,pp) for the 3/80 1997-03-26 17:29:10 +00:00
gwr 90a79f75fe Change continue to break in a few places (as suggested by mycroft). 1997-03-24 23:49:39 +00:00
gwr 7c0bd080c9 No longer force boothowto=RB_SINGLE|RB_KDB
(Yes, it goes multi-user just fine! 8^)
1997-03-24 17:57:12 +00:00
gwr 8bec95da2c Use ${INSTALL} ... 1997-03-24 17:48:19 +00:00
gwr 199246e95f No longer need SYMTAB_SPACE now that sun3x/stand/* works.
(Thanks, Jeremy!)
1997-03-24 17:39:04 +00:00
gwr c874276d35 First cut at crashdump support. 1997-03-21 22:46:05 +00:00
jeremy 4d949455d4 Fixed address for bwtwo framebuffer. 1997-03-21 07:28:36 +00:00
gwr a4b8e33b2b This needs muli-include protection now. 1997-03-20 16:21:10 +00:00
gwr c3f299a527 Now using dev/ic/ncr53c9x.c 1997-03-20 16:01:36 +00:00
gwr 4663c4fa2a Sync with the sun3 version. 1997-03-18 23:49:07 +00:00
gwr 9f13c3afe5 Read the EEPROM once at attach time, then do user I/O on the copy.
Make /dev/eeprom support normal "read to EOF" behaviour.
Removed ee_console, ee_get_byte (dead code).
1997-03-18 23:31:59 +00:00
gwr dee24f1082 Moved the _KERNEL declarations to machdep.h 1997-03-18 23:26:38 +00:00
gwr 1161fcc583 Add /dev/leds, and allow both that and /dev/eeprom to
return EOF when you read to the end of the device.
Garbage collect some dead code after the switch.
1997-03-18 23:21:04 +00:00
gwr c960be72aa Add /dev/leds (closes PR#2172 from der Mouse) 1997-03-18 22:21:50 +00:00
gwr 03c1c9cee0 Fixup dependencies 1997-03-17 20:59:47 +00:00
gwr 08f7a407f9 Separate bcopy and copypage stuff from copy.s 1997-03-17 19:46:36 +00:00
gwr d531b1ed42 s/fpu_type/fputype/g 1997-03-17 19:03:11 +00:00
thorpej 1d987a161b #include <net/if_media.h> 1997-03-17 03:17:34 +00:00
thorpej b6f3695cd1 Use <m68k/m68k/support.s> 1997-03-16 11:04:52 +00:00
is 07b064e02e New ARP system, supports IPv4 over any hardware link.
Some of the stuff (e.g., rarpd, bootpd, dhcpd etc., libsa) still will
only support Ethernet. Tcpdump itself should be ok, but libpcap needs
lot of work.

For the detailed change history, look at the commit log entries for
the is-newarp branch.
1997-03-15 18:09:08 +00:00
gwr 40b1a6f68b No longer need to define SUN_BOOTPARAMS 1997-03-14 21:28:38 +00:00
gwr 2f598d011a Sync with sun3 (Trap 1,2,15 handlers) 1997-03-13 20:46:37 +00:00
gwr 0fefd47a64 Use arch/m68k/m68k/sig_machdep.c 1997-03-13 20:30:19 +00:00
gwr ee531cb3c9 s/sun3x_/_/ in sun3x_(round|trunc)_(page|seg) macros 1997-03-13 17:40:33 +00:00
gwr f3952a7326 No longer need to override DEFS 1997-03-13 16:19:01 +00:00
gwr 032d13fc7d s/sun3_/_/ in sun3_(round|trunc)_(page|seg) macros 1997-03-13 15:58:49 +00:00
gwr a9bc70551a Clarify duties of traps 1, 2, 12, 15 for emulations
Include <m68k/m68k/sigreturn.s> code.
Add/fix some comments...
1997-03-11 22:58:57 +00:00
gwr 4756c63625 Call isr_soft_request() at most once per zshard interrupt.
In the softintr, raise to spltty before calling tty code.
1997-03-11 21:54:35 +00:00
gwr 05a47d22ea Correct handling for Trap #2 in SunOS executables,
now that we know it is supposed to flush the cache.
(Was thought to be "some obscure FPU operation".)
1997-03-11 21:30:51 +00:00
gwr f64034e8f6 Sync up with changes in GENERIC 1997-03-11 21:21:49 +00:00
gwr b4de41ef34 Update the description of the flags for "si" devices.
Remove wired-down scsi disk targets (no longer needed).
Add ch, ss, uk (scsi devcies) at mycroft's requst.
1997-03-11 20:59:10 +00:00
gwr 3aa49c4b33 Remove unnecessary differences (T_BRKPT, T_WATCHPOINT gone). 1997-03-11 20:31:20 +00:00
gwr ec6bb1d018 s/-T/-Ttext/ 1997-03-11 20:13:20 +00:00
gwr 4ad7ed0b97 Moved dev_net.[ch] to sys/lib/libsa 1997-03-11 18:29:30 +00:00
gwr d0a45ab470 Use the macros sc_if, sc_addr to avoid lots of references to sc_arpcom. 1997-03-10 21:45:01 +00:00
gwr 51cfd7ed4d Get the numbers of kernel MMU tables right. 1997-03-06 05:16:34 +00:00
gwr 9a79f92460 Clean out some junk I forgot to remove last time... 1997-03-06 00:15:56 +00:00
gwr a4e5a18b63 Add pmap_bootstrap_setprom() with sets the PROM level-A tables to
allow the PROM monitor to see mappings in kernel space.  This also
fixes a problem with exiting to the monitor with the stack pointer
set to some place in kernel space.  Also fix NUM_KERN_PTES, and
change get_pte() so it works on any virtual address.
1997-03-06 00:04:18 +00:00
gwr 3ca8e4699d Add pmap_bootstrap_setprom 1997-03-05 23:55:54 +00:00
gwr 201bc0aa96 Add ptest_addr 1997-03-05 23:54:08 +00:00
gwr da2622290c Allow access to the PROM via /dev/kmem (like the sparc port) 1997-03-05 23:02:29 +00:00
gwr 63221bf3b2 Fix race conditions that allowed the interrupt latch register to have
the wrong value.  Now using the <m68k/asm_single.h> stuff from Leo.
1997-03-05 22:22:11 +00:00
gwr eac582d36e Do some of the clock init a little later, in clock_attach.
(plus some other mostly cosmetic cleanup)
1997-03-05 19:00:07 +00:00
gwr 88bf00b5bf No need to block out ZS interrupts in clock_intr() as long as
we are careful to use the single_inst_* macros.
1997-03-05 00:01:13 +00:00
gwr 9587adc460 Fix race conditions that allowed the interrupt latch register to have
the wrong value.  Now using the <m68k/asm_single.h> stuff from Leo.
1997-03-04 23:37:48 +00:00
gwr 7c5b45aead Fix a warning. 1997-03-04 22:20:04 +00:00
gwr c03be2ad19 Add declaration for isbad(). 1997-03-04 21:59:08 +00:00
gwr 67f52ad8a0 Reinstate "isbad" which is used by the xd and xy drivers. 1997-03-04 19:33:23 +00:00
jeremy c0b46da054 Use IOMMU_PAGE_SIZE instead of NBPG, since theoretically the IOMMU page size
is different than the CPU page size.
1997-03-03 06:51:42 +00:00
jeremy 290f55615a Took switch statement out of main loop in pmap_protect() and explained more
of the rationale behind it.
1997-03-02 07:59:21 +00:00
gwr 8e9324f653 Allow access to the PROM via /dev/kmem (like the sparc port) 1997-02-28 22:35:12 +00:00
gwr 403bdb83fa Add xxc_print functions to pass to config_found() instead of NULL.
(Thanks to Chris Demetriou suggesting the improvement.)
1997-02-28 21:23:06 +00:00
gwr 507bc60404 Define pmap_page_index as a macro. 1997-02-28 19:57:35 +00:00
gwr 03ff0a0c9b Allow pmap_page_index to be a macro (in pmap.h)
Make pmap_free_pages() teturn what actually remains
(Thanks to Wolfgang Solfrank for suggesting the fix.)
Fix some typos while I'm here...
1997-02-28 19:55:37 +00:00
gwr 58a45b478c Remove a diagnostic check in sunmon_reboot broke reboot on the sun3. 1997-02-28 19:47:15 +00:00
gwr 1354ca2916 Get rid of some printf noise. 1997-02-28 17:17:22 +00:00
gwr 4d534f3d52 Define VM_MAX_KERNEL_ADDRESS using KERN_END instead of a constant. 1997-02-27 18:22:53 +00:00
gwr 9b75e011ab Allow option MCLSHIFT=x to control MCLBYTES etc. 1997-02-27 18:12:38 +00:00
gwr 07b4e45308 Allow per-target control over disconnect/reselect. 1997-02-26 22:26:00 +00:00
gwr bb9cc8ad2b Use ALIGNBYTES in the new ALIGNED_POINTER macro.
(That is always good enough on the m68k.)
1997-02-26 20:36:13 +00:00
gwr 3435c699a5 Add ch, fd, ss, tun, uk
Add cdev for md
Add lkm slots
1997-02-25 01:15:01 +00:00
fvdl 115b6d92fa Define ALIGNED_POINTER 1997-02-24 23:16:53 +00:00
gwr ae70fb71ec No need for dma_cd, so move it into the #if 0 section too. 1997-02-24 15:02:23 +00:00
jeremy 1c79e9f83d The first GENERIC config for sun3x. Includes new esp driver. 1997-02-24 03:53:52 +00:00
jeremy ad9700fa62 Initial import from SPARC port. 1997-02-24 01:45:13 +00:00
jeremy 202a9fe423 Added some more comments and disabled removal of DVMA alias mapping from
kernel space in dvma_mapout() as it may cause problems with the current
pmap_remove().
1997-02-24 01:37:52 +00:00
jeremy 689b14f477 Get rid of inclusion of pmap_pvt.h and use the standard pmap functions for
mapping.
1997-02-24 01:35:33 +00:00
gwr eb84168030 Suport size=4 in bus_peek(), and clean out some junk. 1997-02-22 19:27:18 +00:00
jeremy 0b6a4ac7bb Make the device attach output look more like the SPARC iommu. 1997-02-22 04:02:39 +00:00
jeremy d6034ecf66 Add page size constant, since I/O mapper page size may differ from cpu page
size.
1997-02-22 04:01:04 +00:00
jeremy 996c634929 Rewrite pmap_remove() to be speedier with large address spaces. 1997-02-22 03:18:30 +00:00
gwr 900bc3f621 Add OBIO_EMULEX_SCSI, and some comments about attach order. 1997-02-21 20:33:09 +00:00
jeremy 043293d2da Added the '@' symbols that GAS needs for address register indirect addressing
statements that are used when PMAP_DEBUG is undefined.
1997-02-20 00:54:21 +00:00
gwr c14237282d Make this use sys/dev/clock_subr.[ch] 1997-02-19 23:38:46 +00:00
gwr 2e84cacf02 Add dev/clock_subr.c 1997-02-19 23:36:38 +00:00
gwr b76d5979d8 Make this use sys/dev/clock_subr.[ch] 1997-02-19 23:35:02 +00:00
gwr 69da16abc9 Need to define M68020 for copy.s
Add PM_CTXNUM, tweak...
1997-02-19 16:02:59 +00:00
gwr 1b7813bc35 Just M68030 is enough. 1997-02-19 15:59:21 +00:00
gwr eb8bfe4829 Forgot the quotes (slow down...) 1997-02-19 15:55:33 +00:00
gwr 62bb836d73 Oops... need to define M68020 for copy.s 1997-02-19 15:54:26 +00:00
jeremy 035b20b171 Update copyright and fix typos in macro definition used when not debugging. 1997-02-19 04:17:32 +00:00
gwr 7e74608bf9 Get the screen size right on the 3/260 (Fixes PR#2402) 1997-02-19 00:22:40 +00:00
gwr 8b7e154aab Oh... can not set cold=0 before swapconf() is done with any I/O
that might cause a call to sleep (procinit not done yet).
1997-02-19 00:20:52 +00:00
gwr 5f501028f6 No longer need pm_stats 1997-02-18 21:21:11 +00:00
gwr 9ed330d6df Add pmap_wired_count() 1997-02-18 20:18:56 +00:00
gwr 12fdd0800f Add pmap_wired_pages() 1997-02-18 20:16:54 +00:00
gwr 3480f70835 Set kgdb_debug_panic if we connect to gdb. 1997-02-18 16:09:59 +00:00
gwr d2a3410f0c Moved straytrap() to trap.c (and minor cleanup) 1997-02-18 15:53:15 +00:00
gwr c1699a0c88 Add a debug helper for detecting recursive kernel-mode traps.
Move straytrap() here from machdep.c
1997-02-18 15:37:57 +00:00
gwr e61bb6f903 Define "cold" over in autoconf.c 1997-02-18 15:30:01 +00:00
gwr 626bde2f9b Add bus_subr.c 1997-02-18 15:10:40 +00:00
gwr 1af5733370 New implementation of the findroot/setroot business. Eliminates
dependency on wired-down SCSI target/LUN for boot devices.
1997-02-18 15:07:29 +00:00
gwr 201c1f178e Move bus_peek(), bus_mapin() here from autoconf.c so the latter
may be shared with the sun3 port.
1997-02-18 14:58:32 +00:00
gwr 48da5b3d44 Move bus_peek(), bus_mapin() here from autoconf.c so the latter
may be shared with the sun3x port.
1997-02-18 14:57:41 +00:00
gwr 7190ad9936 Fix a major bug in pmap_remove_kernel() that causd the removal of
one page too many (worse, it unmapped our stack page... Ouch!)
Also, use loadcrp() and such instead of calling pmap_activate
in various places so we have more control over TLB flush.
Now pmap_activate() is called only by locore (and that call is
done only if PMAP_DEBUG is defined).  Other minor clean-up...
1997-02-16 19:38:08 +00:00
gwr 2053794556 Add sun3/regdump.c 1997-02-14 20:10:50 +00:00
gwr ae0ec6bc84 Moved regdump() and friends to sun3/regdump.c 1997-02-14 20:09:14 +00:00
gwr f01121ece4 Moved sendsig(), sys_sigreturn() to sun3/sig_machdep.c
Moved regdump() and friends to sun3/regdump.c
1997-02-14 20:00:51 +00:00
gwr 780e636b2d Pull regdump() out of machdep.c and correct a problem where it
would try to print things that are beyond the end of the stack.
1997-02-14 19:55:18 +00:00
gwr 7275a8976f Add pmap_count(), fix some bugs... (from Jeremy). 1997-02-14 03:56:49 +00:00
gwr dc9ad25881 Define pmap_resident_count(), pmap_wired_count() as
macros that call pmap_count().  (from Jeremy).
1997-02-14 03:55:33 +00:00
gwr fb373dd41e Add sun3/sig_machdep.c 1997-02-13 22:21:22 +00:00
gwr 905e296504 Moved sendsig() and sys_sigreturn() to sig_machdep.c
Rename some trapframe variables for consistency.
1997-02-13 22:16:53 +00:00
gwr 91c7291256 Move sendsig() and sys_sigreturn() from machdep.c to here.
Should probably move to m68k/m68k eventually...
1997-02-13 22:04:03 +00:00
gwr 443faad4e1 Reorganize/simplify the way the memory layout is done.
Update to the latest sys/dev/isa/if_ie.c (new ieget).
1997-02-13 20:48:36 +00:00
gwr 5997a69a3e Tune MXFRAMES and MXFRAMES down a little.
Reorganize the softc for convenience in ddb.
1997-02-13 20:43:18 +00:00
gwr 6a83772a4e Replace caddr_t with u_int in device structs.
Reduce MAXMCAST by a few to be safe.
1997-02-13 20:40:11 +00:00
gwr 45ff882a54 Replace sun3/kgdb_stub.c with sun3/kgdb_machdep.c 1997-02-13 18:14:31 +00:00
jeremy 8869e895a8 Convert meaningless '0' into a more human readable 'IOMMU_PDE_DT_INVALID'. 1997-02-13 07:38:21 +00:00
gwr 27b8c79679 Latest version from Jeremy. Changes too numerous to describe here. 1997-02-12 23:09:32 +00:00
gwr c4fa121f14 Reinstate call to pmap_activate() for now, because it is helpful
for debugging the pmap code.  The in-line version of the same is
still here and will be used if PMAP_DEBUG is not defined.
1997-02-12 23:06:27 +00:00
gwr 3476b1d4a4 Adapt to changes in pmap.h 1997-02-12 23:03:14 +00:00
gwr bb35ee4ae8 In struct pmap, replace pm_mmucrp with pm_a_phys.
Define pmap_resident_count(), pmap_wired_count()
to call pmap_resident_pages(), pmap_wired_pages()
respectively, so we can keep those statistics on
lower-level structures instead of here.
1997-02-12 23:01:28 +00:00
gwr 6cb54de668 Avoid dereferencing null curproc in dumpmem(). 1997-02-12 16:06:18 +00:00
gwr bb7dc881a3 Force RB_SINGLE for now (in addition to RB_KDB). 1997-02-12 16:04:33 +00:00
gwr 05a09b938e Must convert from/to BCD when reading/writing the clock chip. 1997-02-12 16:00:31 +00:00
gwr 20c8082e79 Now using <kern/kgdb_stub.c> 1997-02-12 01:32:39 +00:00
gwr 9b3ad7dd7e Now using <sys/kgdb.h> 1997-02-12 01:30:36 +00:00
gwr 292e8e784f The KGDB include is now <sys/kgdb.h>
Add the kgdb_recover trick.
1997-02-12 01:10:21 +00:00
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