Commit Graph

11018 Commits

Author SHA1 Message Date
leo 175e17b45f Catchup with arp changes. 1997-03-17 13:29:05 +00:00
leo 2f50159652 Revert to new method of generating assym.h. 1997-03-17 13:23:14 +00:00
briggs b315c448dc Flip around Takeshi Yanagisawa's name. Add back a physaccess() call that I was a bit hasty
in removing.
1997-03-17 13:11:24 +00:00
briggs 559613a9a7 *Blush* It's Denton, not Dennis, Gentry. 1997-03-17 12:26:52 +00:00
briggs e716e490a1 Make this compile again. XXX - save ethernet address in softc until multicast is supported. 1997-03-17 04:57:56 +00:00
briggs c20d7dc997 Integrate a couple of changes suggested by Scott Reynolds and Takeshi Yanagisawa. 1997-03-17 04:38:28 +00:00
thorpej 9018eb5208 Use if_media to select media (or autoselect rules) on the Sun4m. 1997-03-17 03:24:26 +00:00
thorpej 1d987a161b #include <net/if_media.h> 1997-03-17 03:17:34 +00:00
is 57f2f47e2c move if_arc.h to sys/net 1997-03-16 23:27:07 +00:00
hpeyerl 52cbdd41c4 Lager is now config.new. ya ya, I've been busy. 1997-03-16 18:46:56 +00:00
is 530a88d144 On request from Allen Briggs, converted this to new ARP
system. Somebody should actually test if this compiles (and works) on
Mac68k... I only carefully checked cvs diff -u.
1997-03-16 13:41:14 +00:00
jonathan ab9bbd64d6 Use genassym.sh script to make assym.h, for cross-compiling.
Remove dependencies on genassym.
1997-03-16 11:54:03 +00:00
thorpej b6f3695cd1 Use <m68k/m68k/support.s> 1997-03-16 11:04:52 +00:00
thorpej 48556a75d2 Use <m68k/m68k/support.s> 1997-03-16 10:49:43 +00:00
thorpej f88e127939 Some misc. m68k asm support routines. This file currently contains
setjmp/longjmp and _insque/_remque.  More to come.
1997-03-16 10:47:33 +00:00
thorpej e93bf2f15b Garbage-collect hpux_dumpu(). 1997-03-16 10:00:45 +00:00
thorpej 701652d81c In cpu_coredump(), don't bother dumping an HP-UX style u-area. What it
produced was useful once, but isn't worth the clutter now.
1997-03-16 09:59:40 +00:00
thorpej de5a4c2d10 Remove reference to Locore.c 1997-03-16 09:47:48 +00:00
thorpej 611fa5e05b Old lint helper, not used anymore, and really quite amazingly out of
date; this is 4.3 vintage.  Just nuke it.
1997-03-16 09:45:38 +00:00
thorpej 5a1149b25d Nuke MDP_HPUXTRACE. 1997-03-16 09:40:01 +00:00
thorpej c5b6d5ed07 Prototype hpux_setregs(). 1997-03-16 09:14:25 +00:00
thorpej c9e8e99421 Remove the COMPAT_HPUX stuff from setregs(); the HP-UX compatibility
code has its own implementation now.
1997-03-16 09:12:13 +00:00
thorpej 832cc66899 Implement hpux_setregs(). While I'm here, nuke the MDP_HPUXTRACE
code.  In practice, no one traces NetBSD programs with HP-UX debuggers,
and the evil required to make it work should not be discussed in the
presence of small children.
1997-03-16 09:10:31 +00:00
thorpej 27c7e59344 Define the HP-UX sigcontext structure here, and prototype hpux_sendsig(). 1997-03-16 03:45:33 +00:00
thorpej 5a14c36be7 Move all COMPAT_HPUX signal code into hpux_sendsig() and hpux_sys_sigreturn(). 1997-03-16 03:43:39 +00:00
thorpej f5c982a251 In cpu_coredump(), use `fputype' to decide if we dump FP regs. 1997-03-15 23:40:25 +00:00
thorpej 99cc2e1cec Garbage-collect use of FPCOPROC. 1997-03-15 23:34:32 +00:00
thorpej bbcda6f26b - /dev/mem: only allow access to physical RAM
- /dev/kmem: disallow access to devices

This is designed to protect device registers from being corrupted
accidentally by "innocent" mem/kmem grovellers.
1997-03-15 23:30:12 +00:00
thorpej 6fa9be2e93 Use `fputype' at run-time rather than FPCOPROC at compile-time. 1997-03-15 23:25:49 +00:00
thorpej 4fd90cefdb - Garbage-collect doadump(); it hasn't been used for some time.
- Supply an `fputype' global.  Since all hp300's have an FPU, default
  it to FPU_68881, setting it to FPU_68040 if we detect a 68040 CPU.
- Use `fputype' at run-time rathern than FPCOPROC at compile-time.
- Re-arrange locore slightly; move startup code to the beginning, right
  after the vector table.
1997-03-15 23:23:55 +00:00
thorpej 2cea1ec9d7 - Make hpux_sys_getcontext() table-driven.
- Use `fputype' at run-time rather than FPCOPROC at compile-time.
1997-03-15 23:20:20 +00:00
pk a372844a7a Add fix_align() and emulinstr() prototypes. 1997-03-15 22:25:15 +00:00
perry 520b71bb34 From Matthias Drochner:
give global constants more meaningful names
1997-03-15 22:20:55 +00:00
perry 5347892165 From Matthias Drochner:
give global constants more meaningful names
eliminate code duplication
1997-03-15 22:20:02 +00:00
perry aa5f5f8441 From Matthias Drochner:
use constants from etherdrv.h
1997-03-15 22:18:55 +00:00
perry 6a00e9acc8 From Matthias Drochner:
use constants from etherdrv.h
make selection table driven
1997-03-15 22:18:21 +00:00
perry 3824935377 From Matthias Drochner:
add constants for media selection
1997-03-15 22:17:35 +00:00
perry e097564463 From Matthias Drochner:
add definition prototype for PCI ROMs
add optional definition for serial console support
1997-03-15 22:16:35 +00:00
perry 817522ff26 From Matthias Drochner:
fix prototypes
use CONSDEV_* constants for consistency
1997-03-15 22:15:49 +00:00
perry 86ab882a41 From Matthias Drochner:
support for ROMs ala PCI specification
1997-03-15 22:15:02 +00:00
perry 492449d27a From Matthias Drochner:
calculate 16-bit checksum
support for ROMs ala PCI specification
1997-03-15 22:14:02 +00:00
pk 27b2f0ec7c Fix a `new-ARP' pasto. 1997-03-15 22:13:55 +00:00
thorpej 1023932f47 User text segment begins at 8k, now, to match the other m68k ports. 1997-03-15 22:02:24 +00:00
thorpej 26644d1232 Change MID_MACHINE to MID_M68K; we now use the same executable format as
the rest of the m68k ports.
1997-03-15 22:01:02 +00:00
thorpej 0e368d2e40 Don't set __LDPGSZ to 4096; we use 8192 like the rest of m68k-land, now. 1997-03-15 21:59:20 +00:00
pk cc87278540 Remove trailing comma in enum definition. 1997-03-15 20:54:10 +00:00
pk ad1f2b7812 Remove call to mmu_pagein4m(), which is of little use. 1997-03-15 20:31:33 +00:00
briggs 4b6b2bb9f8 SONIC driver--originally from pica. Much work done by Dennis Gentry and
Takeshi Yanagisawa to get it working.  Some minor hacking by me here and
there.
1997-03-15 20:26:35 +00:00
pk f8918b9be9 Simplify `4m' versions of pmapbootstrap() and mmu_reservemon():
allocate and initialize all kernel page tables before looking at the
PROM maps, which allows mmu_reservemon4m() to simply walk the PROM tables
without having to allocate bits and pieces of our own kernel tables.

Slightly optimize getcontext() macros in mutli-arch kernels.

Remove un-needed `4m' version of mmu_pagein().
1997-03-15 20:24:09 +00:00
briggs 6f71d88157 Specify SONIC for 040 powerbooks and for CLASSQ and CLASSQ2 machines. 1997-03-15 20:17:40 +00:00
ragge 10bf322448 Make install docs more up-to-date. 1997-03-15 20:08:33 +00:00
briggs 6fc69ce7cb Add SONIC driver. Works on my Q700. Untested elsewhere. 1997-03-15 20:07:37 +00:00
scottr cc391b64de Remove obsolete MAC68K_BROKEN_VIDEO option. 1997-03-15 18:35:47 +00:00
scottr 702735759b Defer enabling NuBus slot interrupts until all slots have been probed
and drivers attached.  This removes the need for the MAC68K_BROKEN_VIDEO
option.  From Allen Briggs.
1997-03-15 18:33:44 +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
ragge 44936626ed Make boot compile again. 1997-03-15 16:39:20 +00:00
ragge abedbf253e Clean up console autoconfiguration so that the VAXstation DZ11-like
console work.
1997-03-15 16:36:17 +00:00
ragge 668632a4df Change the way boot device is figured out; now only using DEC numbers
and done when the device get attached.
1997-03-15 16:32:16 +00:00
ragge 2a79087848 Put in some #ifdef's to compile only for MV2000. 1997-03-15 16:14:23 +00:00
ragge 285002ead6 Cleanup. Prepare for getting memory size from boot (VMB). 1997-03-15 16:11:25 +00:00
ragge 0044b4ccf0 Add a forgotten #ifdef. Remove debug printout. 1997-03-15 16:07:17 +00:00
ragge 1d90a0a507 Add definitions for DEC HW device numbers. 1997-03-15 15:09:40 +00:00
ragge b5b674f227 Do not use inline functions in boot blocks. Some CPUs doesn't have
all instructions.
1997-03-15 15:08:23 +00:00
ragge 8fa1cdb04b Add routines for network handling and standalone le driver.
To make this work nice, big changes to the boot unit handling
was also required. From now only DEC HW unit numbering are used
in boot, to easy match boot device in kernel.
1997-03-15 13:04:22 +00:00
briggs 3d16e320d6 Move physaccess/physunaccess prototypes. 1997-03-15 05:39:45 +00:00
jeremy 54bec78722 Update the 'status' paragraph to reflect the current working programs. 1997-03-15 03:41:01 +00:00
cgd 4f210d58be patch from Matt Jacob to enable secondary PCI bus support 1997-03-15 03:15:20 +00:00
mhitch 0918e34d85 After opening the disk device to force a disklabel read, it should really
be closed rather than opened again.
1997-03-15 02:59:43 +00:00
christos 4b697aa304 add emul.c 1997-03-15 02:36:00 +00:00
thorpej 92796a6d43 Add a mountroothook that prompts the operator to insert a file system
floppy, a'la the SPARC port.
1997-03-15 01:34:10 +00:00
christos 358f6940ee - fix return value in case we failed to write to the destination register.
- pretty-print registers.
1997-03-15 00:39:51 +00:00
christos 2c62945461 - move instruction emulation and alignment fixing to emul.c
- add sparc-v8 {s,u}{mul,div}{cc,} instruction emulation
1997-03-14 23:57:58 +00:00
christos d9d8878ed1 Asi instruction struct was missing the immediate bit! 1997-03-14 23:54:07 +00:00
mycroft f868dff8d3 Define the `cleankernel' target consistently with other ports. 1997-03-14 23:27:29 +00:00
mycroft cbbcf185ae Put the genassym.sh output in a temp file, and mv -f it, in case
it fails spectacularly and doesn't clean up.
1997-03-14 23:23:45 +00:00
mycroft 44149b42c2 Put the genassym.sh output in a temp file, and mv -f it, in case
it fails spectacularly and doesn't clean up.
1997-03-14 23:21:36 +00:00
mycroft d0c586a17f Put the genassym.sh output in a temp file, and mv -f it, in case
it fails spectacularly and doesn't clean up.  Also, remove dependencies for
genassym.o (since it no longer exists).
1997-03-14 23:16:08 +00:00
mycroft f7ad6fff40 Put the genassym.sh output in a temp file, and mv -f it, in case
it fails spectacularly and doesn't clean up.  Also, don't depend genassym.c
(since it no longer exists), and remove dependencies for genassym.o (since it
no longer exists).
1997-03-14 23:14:39 +00:00
gwr 40b1a6f68b No longer need to define SUN_BOOTPARAMS 1997-03-14 21:28:38 +00:00
cjs ca5f101ba7 Remove code that stops transfers of >63K. The Sun 4 doesn't have this
limitation, and minphys() is supposed to catch this on other architectures.
1997-03-14 19:57:20 +00:00
thorpej 76c1d7a5b5 We don't even need to clear the BSS here; it's been done by the boot
program for a Long Time, and doing it (correctly :-) here means that
we wipe out, among other things, boothowto.  (oops!)
1997-03-14 19:50:06 +00:00
pk 8a5abffaf5 Add some instrumentation to keep track of PMEG allocation.
Enabled #if DIAGNOSTIC.
1997-03-14 14:28:45 +00:00
thorpej a276c4ee15 - Some cosmetic changes to whitespace
- make the command parser table-driven
1997-03-14 06:56:27 +00:00
thorpej 6ed34bacd9 Purely cosmetic whitespace changes. 1997-03-14 06:55:07 +00:00
mycroft e96f48563b Add netboot.bin to CLEANFILES. 1997-03-14 05:07:27 +00:00
thorpej 63a75dcdcf Make this work with obj* dirs. 1997-03-14 04:59:34 +00:00
mycroft 3a99046fbb Update this to new config. 1997-03-14 04:21:13 +00:00
perry 627952867a Ressurect (not quite, since this is in fact the new boot code Makefile
now).
1997-03-14 02:54:14 +00:00
perry 816bb96145 Initial import of new boot code, created by Matthias Drochner with a
little hacking by me. This isn't strictly identical to his 920312
release -- I've hacked it a bit -- but since we are taking over change
control it doesn't matter much.
1997-03-14 02:40:32 +00:00
perry 2eb5a59f71 Initial import of new boot code, created by Matthias Drochner with a
little hacking by me. This isn't strictly identical to his 920312
release -- I've hacked it a bit -- but since we are taking over change
control it doesn't matter much.
1997-03-14 02:40:29 +00:00
cgd 80bf6049dd fix from Matt Jacob: configuration accesses need PCI Byte enables just
like sparse memory accesses do.
1997-03-13 23:59:36 +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 5c553cfd2f Factor out sendsig() and sys_sigreturn() from $arch/machdep.c 1997-03-13 19:14:35 +00:00
gwr de65671490 Ported to the sun3x by Jeremy 1997-03-13 17:52:44 +00:00
gwr ee531cb3c9 s/sun3x_/_/ in sun3x_(round|trunc)_(page|seg) macros 1997-03-13 17:40:33 +00:00
thorpej 711486fd1b Fix a typo (oops). 1997-03-13 17:14:45 +00:00
gwr 24120736d8 Import the sun3 version of this on the "vendor branch". 1997-03-13 16:27:27 +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
leo e4a48696a6 Add member to bitmap struct that gives the size of mappable memory. 1997-03-13 12:37:08 +00:00
matthias d8319f5c75 remove leftover from switch to the mi kgdb interface. 1997-03-13 10:25:25 +00:00
matthias c6d2740564 Integrate Phil Budne's latest changes to the scn driver. From his README:
* Uses Counter/Timer dynamicly for rate generation; You can
	  have both 19200 and 38400 on one duart, and 57600 on another!
	* Improved scninfo program to dump driver internal information.
	  implemented counters for parity err, framing err, break
	* Delays changes until transmitter idle to avoid "glitches"
	* Cleaned up scn_softc member names
	* Untested support for sc26c92 (I don't yet have any to test with);
	  + Will use alternate rate tables (include 115.2kbps and 230.4kbps)
	  + Will raise FIFO rx interrupt threshold and watchdog timer
	    at higher rates.
	  + Unknown (to me) how fast pc532 MC145406 driver chips can go

	NOTE: It seems like it may be a BAD idea to use a sc26c92 as
	a console port for now; the PROM doesn't know to reset the
	chip back to scn2692 mode!!
1997-03-13 10:24:14 +00:00
thorpej 8229701876 oops, don't need trap.h here anymore 1997-03-13 09:29:03 +00:00
thorpej 72ba35e689 Don't genassym the trap type values; just include <machine/trap.h> 1997-03-13 09:27:21 +00:00
thorpej deeac396e7 Use genassym.sh to facilitate cross compiling. 1997-03-13 09:24:21 +00:00
thorpej f6d3f6c93b Use the script version to facilitate cross compiling. 1997-03-13 09:22:19 +00:00
mycroft 4913ba5369 V_SWTCH is no longer needed. 1997-03-13 04:37:20 +00:00
mycroft 2f18f33d16 Use genassym.cf, to support cross-compiling. 1997-03-13 04:22:05 +00:00
cgd a15ede807a add entries for isp, as isp* at pci? dev ? function ?, for Qlogic ISP 10x0
PCI SCSI controllers.  Also, add the attached SCSI busses.
1997-03-13 04:15:24 +00:00
cgd e36a5ca4de change microcode array definitions from "unsigned short" to the more
correct u_int16_t, and remove bogus casts that the old definition
required.
1997-03-13 04:07:44 +00:00
mycroft 919efaeb60 Make the microcode table const. 1997-03-13 03:33:03 +00:00
mycroft ac3b8b13b7 Don't share the silence block between devices. Make silence filling work for
more encodings, and make it device-independent.  From Lennart Augustsson, in
PR kern/3305.
1997-03-13 02:19:32 +00:00
cgd 85068c2512 add ahc and bha at EISA 1997-03-13 01:15:52 +00:00
cgd 96153388c0 add in the 'isp' device, for Qlogic ISP 1020-based Sbus SCSI board support 1997-03-13 00:46:13 +00:00
cgd 13a313fd8d add entries for ahc and bha PCI devices. clean up some 1997-03-13 00:43:37 +00:00
pk 9ceaaf3e7b Turn off "cache pagetables bit" on non-MXCC modules. 1997-03-12 22:52:19 +00:00
mycroft b8d7e3deab No longer needed. 1997-03-12 22:40:07 +00:00
cgd 2330e40bc9 enable Matt Jacob's ISP 10x0 driver, now that it's in the source tree. 1997-03-12 21:50:15 +00:00
cgd 8c689e6477 Copyright notice consistency, per Matthew Jacob. 1997-03-12 21:09:43 +00:00
cgd cf26d31ad2 NetBSD RCS ID tweaks, a few comment block tweaks. Also, make copyright
notices consistent (per Matt Jacob).
1997-03-12 21:06:41 +00:00
cgd 099e30a322 ISP 10x0 driver from Matthew Jacob of NASA Ames Research Center.
(March 12, 1997 version).
1997-03-12 20:44:50 +00:00
fvdl 7fb73fe0b2 Fix error in computation of BSS size when clearing it. 1997-03-12 19:49:11 +00:00
ragge 2bbaeef8cc Fast and dirty fix to avoid panics during autoconf of KFQSA DSSI disks.
Controller errors showing up can't be handled anyway.
1997-03-12 19:42:30 +00:00
cgd 0daaaa0fc2 add kn8ae CPU support to GENERIC kernels. Also, add kn8ae devices.
Add "isp", "ahc", and "bha" config lines, but comment them out until
their sources are in the tree and/or their alpha patches are in the tree.
1997-03-12 19:29:14 +00:00
cgd ffba332bb5 AlphaServer 8200 & 8400 support, including CPU specific details, TurboLaser
system bus support, and KFTxx support.  From Matthew Jacob, NASA Ames
Research Center.
1997-03-12 19:19:54 +00:00
cgd 265be6d839 enabled SQWE as well as PIE in reg B. 1997-03-12 19:13:20 +00:00
thorpej a92ec8002e Enable COMPAT_M68K4K. 1997-03-12 18:33:09 +00:00
pk 8e4a126035 Use `mcxx' from cpuinfo instead of re-consulting the MMU registers 1997-03-12 15:44:28 +00:00
christos 0d71b22d50 Use genassym.cf 1997-03-12 15:17:13 +00:00
christos 3e35754576 Added genassym.cf 1997-03-12 15:16:35 +00:00
pk 6e3c9f3b59 Make sure to disable interrupts in the Interrupt Enable register as soon
as we've mapped it.
1997-03-12 11:04:35 +00:00
pk b197276005 Correct output from cpumatch_unknown() and add missing viking variant
to cpu table (noticed by Andrew Gillham).
1997-03-12 09:08:29 +00:00
cgd a0d3809966 specs for ISP 10x0 (isp) driver Sbus attachment. From Matt Jacob. 1997-03-12 06:43:25 +00:00
cgd 28152db63a don't assume that CPU ID is same as device unit number (DUH!), add some
comments about future work to be done.  make a mostly-extraneous set of
printfs (cpu capabilities) become #ifdef DEBUG.
1997-03-12 05:50:00 +00:00
cgd 245b65b853 pass CPU ID info down to cpu when attaching (duh!) 1997-03-12 05:47:37 +00:00
cgd 0a500fffa0 update to allow PCI bus interfaces that wish to allocate static
extent storage per interface unit (e.g. dwlpx, where there can be multiple
units per machine) to do so.  Inspired by discussion with and changes from
Matt Jacob.
1997-03-12 05:24:23 +00:00
cgd 55f902601c Set the halt flags in the right per-cpu-slot structure. From Matt Jacob. 1997-03-12 04:45:41 +00:00
cgd adad00a33a sanity check rpb_primary_cpu_id 1997-03-12 04:42:22 +00:00
cgd e4307285ba from Matt Jacob: deal with type 5 (passive release?) interrupts. (ignore them
but print out their vector(?) to see if we can ever discern anything useful
from it.)  Also, some slight general cleanup.
1997-03-12 04:22:30 +00:00
thorpej 1777807068 Add 9660 file system, and set DDB_ONPANIC to 0. 1997-03-12 02:08:02 +00:00
cgd 9a36b46f7a tlsb bus and device file specs, s/21000/kn8ae. From Matt Jacob. 1997-03-12 01:54:23 +00:00
cgd 7e33512f13 fix up kn8ae/DEC_21000 entry 1997-03-12 01:47:46 +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
sommerfe 9460da5eb9 Implement trace/t ("thread" trace) allowing traceback by process-id
rather than by frame pointer (which it a bit harder to find).
1997-03-11 16:38:23 +00:00
pk 92d853e309 4m memory fault traps: simplify fault address logic, since per-CPU
fault-status reading stubs pre-cook the arguments.

illegal instruction trap: catch iflush instructions that cause this trap
on some CPU/MMU combinations.
1997-03-11 01:20:25 +00:00
pk 01e424f233 Insert RCS Id. 1997-03-11 01:03:07 +00:00
pk abc39039f1 Move some parts of CP detection to cpu_attach() in cpu.c.
Call get_cpuinfo() for the boot CPU to collect the minimum information
to get the bootstrap rolling.
sun4/sun4c: the Interrupt Enable register is now mapped here after pmap
is initialized (was in locore).
Replace `cpumod' and `mmumod' with `cpuinfo.*' equivalents.
Allow more than one CPU to be configured in mainbus_attach().
1997-03-11 01:01:59 +00:00
pk 476ef3b431 Per-CPU information which is collected in cpu_attach().
Many things in here were imported from an earlier version from Aaron
Brown and are not yet used. This version has all the attributes of a
snapshot; more to come as addtional CPU/MMU details get implemented.
1997-03-11 00:55:24 +00:00
pk eb71a02a7f Re-write of CPU/MMU detection code.
Use a table driven classification based on CPU and MMU implementation/version
fields. Each CPU class or module defines a collection of routines that
implement CPU or MMU specific operations that can collect detailed setup
information.

All information is collected in a `cpu_softc' structure provided by the
auto-configuration code. However, in the interest of SMP support this
structure is located at a fixed virtual address identified by the
symbol `cpuinfo'. The `boot' CPU currently uses the the physical page(s) at
address 0x2000 for its cpuinfo. Consequently, the fixed virtual address
will be `KERNBASE+0x2000'.

The cache flush routines for several systems (sun4/4c vs. sun4m;
virtual vs. physical tags) have been factored out. Function pointers
to an appropriate set are located in `cpuinfo'. The former global
`cacheinfo' structure is now also a part of `cpuinfo'. Because of the
fixed virtual address of `cpuinfo' no extra performance penalties
are incurred by this move. In multi-architecture kernels, there's
no longer the need for run-time `cputyp' tests in this part of the system.
1997-03-11 00:44:00 +00:00
pk 8d2c03c810 Replace `cputyp' run-time tests by inserting multiple branches and NOPing
some at startup depending on architecture.

Use `get_faultstatus' field in `cpuinfo' (initialized in cpu.c) to branch
to CPU/MMU specific fault status reading stubs on memory fault traps.

Remove code top map the Interrupt Enable register on sun4/sun4c. Its VA
has moved to a high location and is now mapped in autoconf.c after
pmap has initialized. Note: this renders NMIs during bootstrap() fatal
(maybe loading %tbr should be deferred).
1997-03-11 00:09:29 +00:00
pk 7d6231865e Use cache flush routines provided in `cpuinfo'. 1997-03-10 23:55:40 +00:00
pk 129d9d5cf6 Move VA of the sun4/sun4c Interrupt Enable register from locore.
Define VA for the per-CPU `cpuinfo' structure.
1997-03-10 23:54:41 +00:00
pk a566decb35 Use many things from the newly defined `cpuinfo' structure:
- vcache_flush_*() routines.
	- cpu_type/cpu_flags
	- per cpu context table and context administration glue.
	- different macros to enable sun4/3-level mmu support.

Simplify sun4m version of pmap_bootstrap() a bit; more to do still.

Move installation of page tables in MMU into a separate routine, in
anticipation for SMP.
1997-03-10 23:26:11 +00:00
pk ca1c4cc6c3 Define CPUINFO_FAULTSTATUS for use in locore.s 1997-03-10 23:15:03 +00:00
pk 4f30101165 Leave `has_iocache' unset if cache not enabled. 1997-03-10 23:13:59 +00:00
pk 593dbcc7dd Replace `cpumod' with `cpuinfo.cpu_type' equivalent. 1997-03-10 23:09:55 +00:00
pk d1be7c7ea4 New location of Interrupt Enable register on sun4/sun4c. 1997-03-10 23:08:31 +00:00
pk d8fc2afd1e Replace `cpumod' with `cpuinfo.cpu_type' equivalents. 1997-03-10 23:01:40 +00:00
pk 3811437545 Redo attach code somewhat. Have a go at matching le's and lebuffer's on
machines where the PROM does not provide a parent/child relationship.
1997-03-10 22:58:22 +00:00
pk 9119c9c189 Add a field indicating this instance has attached to an `le', so we
can have a go at matching le's and lebuffer's on machines where the
PROM does not provide a parent/child relationship.
1997-03-10 22:56:54 +00:00
pk e5f0b8a132 Remove `cpumod' and `mmumod' and several related constants.
This functionality is now taken over by cpuvar.h
1997-03-10 22:50:37 +00:00
pk 95d5138e93 Move some constants from param.h in here 1997-03-10 22:47:52 +00:00
chuck 47727c7946 remove "::" entries as per cgd 1997-03-10 22:27:36 +00:00
pk 137dda4ac6 Add getmid 1997-03-10 21:49:11 +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
scottr 12098dae8a Add missing call to ae_nb_get_enaddr(), from <kei_sun@ba2.so-net.or.jp>.
Fixes PR 3312.
1997-03-10 17:55:15 +00:00
leo f99aabbca1 Push out some 060 support. It's all untested and mostly copied in from the
amiga-port.
1997-03-10 14:44:26 +00:00
leo 7e288e08c3 Use vme_mask, not sys_mask to enable the SCC interrupt. 1997-03-10 14:41:43 +00:00
leo 2e85636c46 $NetBSD -> $NetBSD$ Sigh. 1997-03-10 10:22:34 +00:00
leo b9595171f0 Add support for the Lance ethernet card on the VME-bus (Riebl/PAM) 1997-03-10 09:44:52 +00:00
thorpej dc1020fe40 Print the interrupt level in scsiattach(). 1997-03-10 08:37:31 +00:00
thorpej bb0d35b7e4 Bump version - we compute the kernel load address differently. 1997-03-10 08:02:23 +00:00
thorpej 4e541ff7ea Fix rounding of lowram value; ensure the kernel load address is on
an 8k boundary.
1997-03-10 08:00:47 +00:00
ragge 2b8ac648a3 Frob pages before trying to map them, to be sure they exist. 1997-03-09 16:00:06 +00:00
ragge b64bca2999 Fixed bug that caused d partition being treated as c.
RAW_PART is 2, not 3.
1997-03-09 15:55:58 +00:00
cgd 8efa66858c fix problem compiling if neither PCI VGA nor TGA frame buffers were
configured.  Pointed out by Matt Jacob.
1997-03-08 19:25:49 +00:00
leo d3c11c558c Enable SCC & MFP interrupts through the vme_mask register instead of
using the sys_mask register.
1997-03-07 21:45:41 +00:00
mark 682f911197 Updated for latest major number allocations. 1997-03-07 03:30:46 +00:00
gwr 51cfd7ed4d Get the numbers of kernel MMU tables right. 1997-03-06 05:16:34 +00:00
briggs 47392571c5 Undo some damage that CVS somehow let me get away with. 1997-03-06 02:14:51 +00:00
gwr 9a79f92460 Clean out some junk I forgot to remove last time... 1997-03-06 00:15:56 +00:00
gwr 25d7b99a1f Implement "mach pgmap" for examining mappings. 1997-03-06 00:05:23 +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
fvdl b754b514dc Bring limits up to 'modern' standards. 1997-03-05 23:51:47 +00:00
gwr da2622290c Allow access to the PROM via /dev/kmem (like the sparc port) 1997-03-05 23:02:29 +00:00
veego 344b3cf532 - Merlin works now in ZorroIII mode
- Fixes for Interlace and DoubleScan
- Memorysizedetction for 1MB Bords
- HiColor and TrueColor Support
- support for the Domino 16M proto card
1997-03-05 22:50:38 +00:00
veego b835a00fa8 - PicassoIV support
- Fixes for Interlace and DoubleScan
- Memorysizedetction for 1MB Bords
- Clockdoubling for PicassoIV and PiccoloSD64
  NOTE: Don't use the X11R6.1 Xserver with -useHWC on the SD64
       with a gfxmode >80Mhz or you get a broken mousepointer.
- HiColor and TrueColor Support
  (doesn't work yet, since it needs some fixes for the XServer)
1997-03-05 22:46:32 +00:00
veego 8f5155b610 PicassoIV and Domino proto 16M product id's. 1997-03-05 22:41:03 +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
briggs a2173962b8 Copyright foo. 1997-03-05 15:19:18 +00:00
jonathan 61d121e3d7 Undefine the macros defined by dec_prom.h, in the compiled-in
libsa functions that define  function entrypoints for them.
1997-03-05 05:20:40 +00:00
jonathan d01b866f0c Build kernel object files with -mno-abicalls and -mno-half-pic. (The
kernel doesn't support GP-relative addressing, and is statically linked).

Compile genassym without those flags: -mno-abicalls will make it coredump.
1997-03-05 04:41:57 +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
scottr fd81cf2b92 Correct offsets in the memory size probe; bus_space uses byte offsets. Fix suggested by
Ken Nakata.
1997-03-04 15:12:04 +00:00
scottr 956ec2a47c The previous optimization of the interrupt handlers was a bit too
agressive.  Being a little more conservative pays the biggest dividend.
1997-03-04 04:11:52 +00:00
pk 18b2bdb000 Fix calculation of max virtual memory to be gobbled up by the buffer cache.
Apply "stop-gap" nbuf clamp only on sun4/4c and if nbuf not explicitly
configured in.
1997-03-03 23:07:15 +00:00
leo 224221401b Ooops. Add cvs-id + copyright. 1997-03-03 13:55:50 +00:00
leo b170f473ba Add bus_space_peek_[1248] functions. These can be used by match/probe
functions.
1997-03-03 12:28:20 +00:00
leo 301f6163bb Addition of VME bus code. 1997-03-03 12:26:20 +00:00
leo 485c62188c VME bus code 1997-03-03 12:20:57 +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
scottr f749003301 Fix part of last change: don't mask off the high bit of the VIA IER until
the interrupt has been unflagged.  Problem noticed by Paul Goyette.
1997-03-03 04:19:06 +00:00
mycroft 8c6fca26ee Oops! Fix this to block all interrupts during configuration, after previous
interrupt priority changes.
1997-03-03 02:33:41 +00:00
jonathan 72a7ae4ee5 Add architecture-specific ELf relocs for mips chips. 1997-03-03 00:19:29 +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
scottr 93d8b2c8b0 Add the MAC68K_BROKEN_VIDEO option, which is a hack that delays enabling
NuBus interrupts until an Ethernet card is attached.
XXX  This should go away at some point, obviously.
1997-03-02 06:43:00 +00:00
scottr 152b0ab7d2 Adapt to sbc driver/attachment split 1997-03-01 20:22:16 +00:00
scottr 421abedbfe Split bus-dependent autoconfig code from the driver. This allows for
the future addition of a Duo Dock front end.
1997-03-01 20:18:58 +00:00
scottr df7f40213a Allow A1 to be used for passing arguments to ROM routines. Also, clean up
debugging printf() formats.  From Allen Briggs and Paul Goyette.
1997-03-01 17:20:34 +00:00
matthias bda3351fc0 Some cosmetic changes. 1997-03-01 09:50:44 +00:00
matthias dd064fc88a Reset the scsibus only when bit 2 is set in flags. 1997-03-01 09:50:40 +00:00
matthias da45c7f449 remove reference to pc532/kgdb_stub.c. We now use the mi version. 1997-03-01 09:50:30 +00:00
matthias 5a74618671 The ns32532 has no alignment restrictions. Define ALIGNED_POINTER to
reflect this.
1997-03-01 09:50:19 +00:00
matthias 035bf3987f make db_expr_t a long. 1997-03-01 09:50:16 +00:00
matthias 73ea4ca540 Document a non-obvious use of addr in interrupt(). 1997-03-01 09:49:48 +00:00
matthias 799c3228ec kgdb_connect and kgdb_panic are not define in the mi kgdb_stub.c. Define
them here.
1997-03-01 09:49:45 +00:00
matthias 63183795c0 imask[IPL_ZERO] was updated after recomputing the run masks for all the
interrupt handlers. Due to this
  - DIAGNOSTIC kernels would panic
  - check_sir would run with the interrupt registered last blocked
Credits for finding and fixing this go to Ian Dall.
1997-03-01 09:49:44 +00:00
matthias 597322b455 * Adapt to changed definition of struct db_variable.
* Some cosmetic changes.
1997-03-01 09:49:42 +00:00
matthias 453b47e7bb removed. We now use the mi version from /sys/kern. 1997-03-01 09:49:20 +00:00
scottr a4b0e4c070 Protect MCLSHIFT definition so users can customize MCLBYTES, from Jonathan. 1997-03-01 06:57:45 +00:00
scottr 42be6ebfa7 Fix prototype for espmatch() 1997-03-01 06:38:36 +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
mycroft b2038a332d Import interrupt priority changes from com patches:
* Make it a strict hierarchy.  (It was close anyway).
* Add `serial' and rename `softtty' to `softserial'.
* Make soft interrupts a bit less special-case.
1997-02-28 16:24:03 +00:00
scottr 215c0b896a Convert to generalized VIA interrupt registration 1997-02-28 15:50:50 +00:00
jonathan b57cf6e1ce Remove obsolete comment. (This config *does* work). 1997-02-28 09:51:21 +00:00
scottr 705c637874 Define aesetup() to return an int, so that the attach function can
determine whether there was an error (if so, we unmap the slot space
for this device).  Use this functionality to tell the attach function
that we couldn't clear the card's buffer.

Also in aesetup(), eliminate the bogus repetition of the error message
we print when the buffer clear actually fails.  Noticed by Hauke Fath.
1997-02-28 08:56:05 +00:00
scottr 0b3eb5f3f2 Remove duplicate <machine/bus.h> include that crept in. 1997-02-28 07:54:02 +00:00
scottr 17fdd597df Move the NuBus-specific watchdog function from if_ae.c to if_ae_nubus.c,
and allow the attach function to override the default watchdog.  Also,
do some minor cosmetic surgery (rename bus space tags/handles and some
KNFing I missed the first time around).
1997-02-28 07:52:44 +00:00
scottr 359101fb43 Convert to generalized VIA interrupt registration 1997-02-28 07:46:59 +00:00
scottr 8f37a2983b Generalize VIA1 and VIA2 interrupt registration a bit, and do a slight
optimization on the VIA interrupt handlers.
1997-02-28 07:41:41 +00:00
mycroft 2563167e16 There's no reason to use splhigh() here. 1997-02-28 04:44:08 +00:00
jonathan cf0bcbc9b6 Define ALIGNED_POINTER
(missed when other <arch>/include/param.h files were updated)
1997-02-28 02:24:41 +00:00
ragge 9bf924ecc4 Be able to find out if we are booted from network. 1997-02-27 19:43:26 +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
briggs 5933eeaaed Add ncr53c9x flag to esp. 1997-02-27 14:07:59 +00:00
briggs 868344972a mac68k-specific portion of m.i. ncr53c9x driver. 1997-02-27 14:06:25 +00:00
veego 96c6c333c2 Protect MCLSHIFT definition so users can customize MCLBYTES.
patch from jonathan.
1997-02-27 08:31:17 +00:00
jonathan 6ed95c4eb8 Protect MCLSHIFT definition so users can customize MCLBYTES. 1997-02-27 03:52:17 +00:00
thorpej e33bdc63ae Update for MI 53c9x driver. 1997-02-27 01:30:05 +00:00
thorpej 4042a48848 Update for new 53c9x driver. 1997-02-27 01:27:54 +00:00
thorpej dea68fb2a1 s/esp/asc/g 1997-02-27 01:21:41 +00:00
thorpej 0017cafe69 s/esp/asc/g, and make it carry the ncr53c9x attribute. 1997-02-27 01:20:53 +00:00
thorpej 2c223871dd Add a front-end for the MI 53c9x driver, called "asc", which is the
name used by Digital UNIX (formerly DEC OSF/1).
1997-02-27 01:19:40 +00:00
thorpej 4878198b5c Remove this driver; it is now obsolete. 1997-02-27 01:17:56 +00:00
thorpej f868730b6a esp carries ncr53c9x attribute 1997-02-27 01:17:09 +00:00
thorpej 5464afa761 Convert the SPARC esp driver to be a front-end for the MI 53c9x driver. 1997-02-27 01:16:19 +00:00
mycroft 2929dff5bd Use genassym.sh, to support cross-compilation. 1997-02-26 23:50:04 +00:00
gwr 2de163471e Minimal changes to adapt to removal of NCR5380_PERMIT_RESELECT.
This driver should be updated to allow per-target control over
disconnect/reselect, but I will leave that to the port masters.
1997-02-26 22:29:08 +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
ragge 5e35ea57c5 Patches to make VS2000 to work. From Ari Suutari. 1997-02-26 18:38:19 +00:00
leo 60bde8d1ca Fix a kernel-dump that occurred when accessing a grf-device that was configured
in the config file but not found by the autoconfig code.
1997-02-26 12:28:40 +00:00
leo 5e2ca8918d Use generic date conversion module. 1997-02-26 12:26:36 +00:00
leo 2d43c4a079 Allow MCLSHIFT to be overridden by a config option. 1997-02-26 12:22:06 +00:00
leo 9324e8d0ed Move all spl-related stuff to the new file intr.h. The latter file also
contains some generic defines used by the drivers in dev/[pci|isa].
1997-02-26 12:18:50 +00:00
jonathan 7cebde0e19 Protect MCLSHIFT definition so users can customize MCLBYTES.
Also define MCLBYTES from MCLSHIFT.
1997-02-26 01:45:41 +00:00
jonathan a2ff9d9662 Protect MCLSHIFT definition so users can customize MCLBYTES. 1997-02-26 01:21:18 +00:00
oki b339d19d50 fixed typo 1997-02-25 17:49:46 +00:00
scottr a2a40938b1 Move bus-independent setup code back into if_ae.c; enable the use of
configuration flags.  For NuBus cards, attempt to find the MAC address
in the declaration ROM resources.
1997-02-25 06:36:04 +00:00
cgd b2d1fe0537 update for current reality. Needs a lot of work. 1997-02-25 03:17:20 +00:00
cgd 0959d79d86 kill this 1997-02-25 03:16:57 +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
gwr a4d9d21d6e Define fdc,fd so config will create fdc.h 1997-02-25 00:46:58 +00:00
fvdl 115b6d92fa Define ALIGNED_POINTER 1997-02-24 23:16:53 +00:00
christos 7fb32152cc Fix PR/3253: Don't try to probe the isapnp port in ioports already claimed
by other devices.
1997-02-24 22:13:55 +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
leo 298aecde5a Force root to be on the ram-disk. 1997-02-24 12:23:33 +00:00
scottr f03ee128a3 Add support for the Kinetics EtherPort SE/30, from Ken Nakata. 1997-02-24 07:34:18 +00:00
scottr 965cffaf20 NUBUS_SLOT_TO_PADDR -> NUBUS_SLOT2PA 1997-02-24 06:20:04 +00:00
scottr 155eb6369a Update to reflect ae driver/attachment code split 1997-02-24 06:05:20 +00:00
scottr 6b0774a865 Split out the NuBus attachment code, and convert to bus.h 1997-02-24 06:03:55 +00:00
scottr 5e77023e13 The bus space tag really isn't used; stop the compiler from complaining. 1997-02-24 05:55:14 +00:00
scottr 9c91a181d6 Update copyright and license. 1997-02-24 05:47:33 +00:00
jeremy 1c79e9f83d The first GENERIC config for sun3x. Includes new esp driver. 1997-02-24 03:53:52 +00:00
jeremy eaca552bf2 Added files for esp SCSI driver. 1997-02-24 01:47:08 +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
cgd 3192bd314f turn Alpha's ELF_TOOLCHAIN checks to ECOFF_TOOLCHAIN checks 1997-02-23 20:42:24 +00:00