Commit Graph

13058 Commits

Author SHA1 Message Date
drochner dae95d6c0b -extend serial console code to all 4 BIOS known interfaces
-optionally, use Martin's direct hardware access to serial lines
-optionally, new console autoselection method: select serial console
 if a character is seen within 1 second
-move awaitkey() here, it can be shared by different bootloaders and
 it is used by console autoselection
-collect information about console selection in a "bootinfo" defined
 structure, for passing to the kernel
1997-09-17 17:48:00 +00:00
drochner f7b795d3c0 Definitions and helper functions to collect information in the boot
loader (still experimental).
1997-09-17 17:39:29 +00:00
drochner fb3350eb72 Console I/O functions for serial lines, accessing the hardware directly.
Allows higher baudrates than 9.6 and software flow control.
From Martin Husemann.
1997-09-17 17:31:41 +00:00
drochner 27d7edd928 Factor out functions for table driven boot menus and command line parsing
usable for different boot programs.
1997-09-17 17:13:02 +00:00
drochner 25aa241d8a Use the private nfs.c instead of "nfswrapper".
Disable UDP checksums in the sample configuration, otherwise this doesn't
fit into the ROM.
1997-09-17 17:07:10 +00:00
drochner 7f4ef01688 Use the private nfs.c instead of "nfswrapper". 1997-09-17 17:04:28 +00:00
drochner ac061ce8b1 Use a private NFS layer. This allows for more optimization than the
separated "nfswrapper.c"/"nfs.c".
This nfs.c differs from the stand/lib/libsa one in that it does not
have a separate mount() function - the mount is done in open().
1997-09-17 17:03:00 +00:00
drochner 3c46c18a00 Use the original bp_siaddr field as TFTP server. Allows to have
different TFTP and NFS servers.
Don't byteswap port number from UDP header back to network order - net.c
doesn't swap it anymore.
1997-09-17 16:57:07 +00:00
thorpej 15e10104d5 Define the BWX-capable regions of the CIA chipset's address space (mem,
i/o, pci config space mode 0, pci config space mode 1) and the CIA
REV and CNFG CSRs.
1997-09-17 01:35:34 +00:00
thorpej 879c4c5cf4 If the CIA revision is >= 2, read the CIA configuration register, and
remember its contents.  Print out a bit of information about the chip,
including whether or not it supports the EV56 BWX instructions.
1997-09-17 01:34:18 +00:00
thorpej ed767a2402 Fix a typo in a comment. 1997-09-16 23:12:35 +00:00
thorpej 87c1a08481 Add stubs for the Alpha Byte/Word Extension (BWX) instructions, present
on EV56 and later processors that have the "amask BWX" bit clear.  These
instructions will be used to implement non-swizzle bus access functions
on newer systems, such as the new AlphaStation 500s with EV56 and 21172
PCI chipsets.

See "Alpha Architecture Handbook, Version 3", DEC order number EC-QD2KB-TE.
1997-09-16 23:09:10 +00:00
thorpej 6fc0f07c30 Define the "integer miscellaneous" opcode and subfunctions. 1997-09-16 22:53:32 +00:00
thorpej 149011c65b Add support for disassembling the "integer miscellaneous" opcode subgroup. 1997-09-16 22:52:40 +00:00
is 718fb97e11 Support for the upcoming NetBSD/Amiga Hypercom driver family:
* support chip clocks != COM_FREQ, by introducing sc_frequency (for the
  mainline code) and adding a frequency parameter right after the rate
  parameter to comcnattach() and com_kgdb_attach().
- Make com_isa and com_multi initialize sc_frequency to COM_FREQ.
- Make i386/machdep.c and alpha/dec_xxx.c call com*attach() with the freq.
  parameter.
* supio_attach_args get two more fields: a sc_ipl and a sc_arg, both ints.
- com_supio uses the first for interupt establishment (all childs will, as
  soon as they exist) and the 2nd for sc_frequency.
- drsupio passes sc_ipl alway as 5, and for the "com"s, sc_arg as 16*115200
- hyper will pass sc_ipl as 6, and sc_arg as 16 * 460800
1997-09-16 20:34:23 +00:00
thorpej d1b4b49231 - Use PALcode ops names defined in <machine/pal.h>.
- Fix a few bugs in the software single-stepping support code, where
  VMS PALcode ops were being checked, rather than OSF/1 PALcode ops,
  causing erroneous results in the "exception return" and "unconditional
  branch" predicates.
- Add the BWX instructions ("ldbu", "ldwu", "stb", "stw") to the
  "load" and "store" predicates.
1997-09-16 19:07:19 +00:00
thorpej a14bab3438 Don't define another copy of the PALcode ops here; direct readers to
<machine/pal.h>.
1997-09-16 19:03:22 +00:00
thorpej e7c2d59885 Fix an oversight in the last commit. 1997-09-16 19:02:13 +00:00
scottr 83bd421ad4 Set up base address of ASC for IIfx, per GtMFH. 1997-09-16 16:28:07 +00:00
scottr eb72408374 Clean up comments. 1997-09-16 16:13:47 +00:00
scottr 8dbfee6073 Add a comment about the sccA address on the IIfx. 1997-09-16 15:51:09 +00:00
scottr 19e555febb Check booter flags for a bit that tells us whether we should construct
bootdev from the SCSI ID passed in via the Booter's environment.
(Does the right thing for older versions of the Booter.)
1997-09-16 14:35:32 +00:00
thorpej 0599db7897 - Define bits used in the "amask" instruction.
- Define processor family IDs returned by the "implver" instruction.
- Prototype alpha_amask().
1997-09-16 06:57:12 +00:00
thorpej 9faf00ea6a Implement alpha_amask(), a stub which reads the "architecture feature mask"
using the "amask" instruction.
1997-09-16 06:54:01 +00:00
thorpej 4fe999c6bf - Add the "amask" and "implver" operate subfunctions.
- Add the "ldbu", "ldwu", "stb", and "stw" major opcodes (BWX instructions).
1997-09-16 06:52:48 +00:00
thorpej fc80b40481 - Rewrite the functions that provide opcode subfunction names to make it
easier to add instructions that the disassembler doesn't know about
  (the opcode subfunction number is now printed).
- Add the "amask" and "implver" operate subfunctions.
- Add the "ldbu", "ldwu", "stb", and "stw" major opcodes (BWX instructions).
1997-09-16 06:52:16 +00:00
thorpej d1fbc82e28 From page 6-9 of "Alpha AXP Architecture Reference Manual, Second Edition":
An IMB intruction must be executed after software or I/O devices
	write into the instruction stream or modify the instruction
	stream virtual address mapping, and before the new value is
	fetched as an instruction.

We were missing calls to IMB after mappings were changed, which caused
systems with large I-caches (e.g. my AlphaStation 500) to fail miserably
when mapping in new pages of program text, or when context switching
(I couldn't even get the shell from init!).
1997-09-16 01:52:00 +00:00
thorpej 37b8edbeac In addition to MAS_ABT, check TAR_ABT when doing configuration space
reads.  This is necessary because of newer AlphaStation firmware doing
the Wrong Thing with target aborts behind PCI-PCI bridges, much like they
do the Wrong Thing with master aborts.  Reported by Matthias Drochner.
1997-09-15 23:31:15 +00:00
thorpej 12f6c5aba1 Make sure to clear MAS_ABT if we received one. 1997-09-15 23:01:29 +00:00
thorpej 3c3c6a3b31 Use the symbolic name for "received master abort". 1997-09-15 22:35:54 +00:00
thorpej 8ff22715e8 Define bits in the CIA_ERR register. 1997-09-15 22:34:38 +00:00
is dc914f2ee7 Only create verbose delay loop calibration message for DIAGNOSTIC kernels. 1997-09-15 22:17:55 +00:00
is 33d1f0d190 A few more boards. This really should be split into a seperate file, only
active if the kernel has ZBUS_VERBOSE similar to PCI, EISA, (podulebus?),
but I don't have that stuff ready yet.
1997-09-15 21:37:35 +00:00
pk aa998af35c Hard-code a couple of sun4 cpu-clock speeds.
Fix a printf formatting glitch.
1997-09-15 20:52:36 +00:00
leo 00a1b6300f Add DCFA() definitions. 1997-09-15 11:12:13 +00:00
leo 571340263d Small readability update. 1997-09-15 11:08:38 +00:00
leo 409812c25c Define isabus by default on the Hades. 1997-09-15 10:51:20 +00:00
pk b5004e4ce1 Call the device close routine when we're done reading. 1997-09-14 19:28:17 +00:00
pk 5ba6b94ba6 Do not use KERNBASE to calculate the `end of symbols' location. Instead
use the `a_entry' field from the kernel's header as a base.

Pass on a new DDB magic number to the kernel, so kernels linked for a
different KERNBASE value can apply a correction when booted from old
bootblocks.
1997-09-14 19:27:21 +00:00
pk 4969489cb6 Define a new DDB magic number to pass to the kernel. 1997-09-14 19:22:55 +00:00
pk 383448522d Refer to KERNBASE instead of its current numerical value in comments
and some early debugging code.
1997-09-14 19:20:48 +00:00
pk dc4f93c2a1 Collect sbus status and configuration registers in `struct sbusreg'. 1997-09-14 19:17:25 +00:00
pk e4a198d193 Move sbus fields to sbusreg.h where they belong. 1997-09-14 19:16:04 +00:00
pk a3140bf9f2 NetBSD 1.2 and earlier sparc bootblocks have KERNBASE compiled in. This
prevents booting DDB kernels that are built with a different value of KERNBASE.

Apply a correction based on the magic number passed in by the bootblocks.

New bootblocks without the hard-coded KERNBASE reference will be assigned
a new magic number.
1997-09-13 20:36:48 +00:00
pk c635b25325 In kbdattach() (the pseudo-device attach routine) wait for the keyboard
reset sequence to complete.  Just sending the reset command and rushing
off -- like it used to do -- might cause the keyboard's response to get
lost in case the remaining kernel initialization decides to interact
with the console (RB_ASK!) by calling cngetc(), which goes off polling
within the PROM.
1997-09-13 19:12:18 +00:00
thorpej e97c5f6c50 Update the model string for current reality. 1997-09-13 10:09:39 +00:00
thorpej 9a5f8236b5 Don't panic if we receive a Processor Correctable Error or a System
Correctable Error; report them, instead.

XXX Need a platform-specific machine check handler so we can decode the
logout area on such errors.
1997-09-13 10:01:33 +00:00
thorpej 12b0c2a20a The Alpha console uses BOOTP for network booting, so the NetBSD kernel
should, too.  Enable the BOOTP support in nfs_boot().
1997-09-13 07:42:01 +00:00
thorpej f784e8dc15 Apparently, new AlphaStation 500/600 firmware has the same problem with
PCI master aborts as eb164 firmware, so use the same workaround mechanism
on all system types (clear error register's master abort bit, and check
it after accessing configuration space), not just eb164's.

This also fixes a bug on eb164's - when making the Alpha port compile
again, I made an error that caused this to not be used on eb164 systems,
either.  Thanks to Matt Jacob for pointing out this goof.
1997-09-13 05:58:07 +00:00
mycroft a9155c5057 Set the status word as well, and remove a bogus comment. 1997-09-12 10:29:20 +00:00
mycroft 701aa39854 Oops; didn't delete two retval[] usages in setregs(). 1997-09-12 09:59:53 +00:00
mycroft cba224ed23 FPCOPROC is no longer used here. 1997-09-12 09:29:13 +00:00
mycroft 4e5b47eba3 fputype is defined in locore.s now. 1997-09-12 09:27:49 +00:00
mycroft 11393fe5b9 Add and use fputype. Optimize floating point save/restore routines a bit more
if only one CPU type is defined.  Eliminate FPCOPROC.  Merge some of the
68060 floating point stuff from the x68k port.
1997-09-12 09:25:36 +00:00
mycroft 5933da103c Add and use fputype. Optimize floating point save/restore routines a bit more
if only one CPU type is defined.  Eliminate FPCOPROC.
1997-09-12 09:23:18 +00:00
pk 27f2065c2c Update syscall() and setregs() in the wake of the recent execve() changes. 1997-09-12 08:55:01 +00:00
mycroft cd9a968cb7 Fix a test that should be on fputype rather than cputype. 1997-09-12 08:41:55 +00:00
mycroft 8a42aeac7b GC old comment. 1997-09-12 08:35:15 +00:00
mycroft 8a8fa1ee59 Eliminate some uses of FPCOPROC. 1997-09-12 08:19:00 +00:00
mycroft 1192cdbe7e FPCOPROC is already in the Makefile; no need for it here. 1997-09-12 08:14:06 +00:00
mycroft 30073771b6 Move definition of FPCOPROC into the Makefile, since it's always required. 1997-09-12 08:13:26 +00:00
mycroft e9f392b0a9 Eliminate some uses of FPCOPROC. 1997-09-12 08:08:50 +00:00
mycroft 55582e5bc2 The FPCOPROC option no longer exists. 1997-09-12 08:04:12 +00:00
mycroft 49f0bbb105 Nuke Locore.c. It's way too out of date to be useful at this point. 1997-09-12 07:59:20 +00:00
mycroft 895a1eced4 Fix an error from when Locore.c was removed. 1997-09-12 07:56:37 +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 42c101eb00 Fix execve(2) and *setregs() interfaces so emulations can set registers in a
more correct way.  (See tech-kern.)
1997-09-12 05:48:08 +00:00
mycroft 25f153bb22 Add fe0. 1997-09-12 05:22:55 +00:00
mycroft 73b4fdacad Initialize all registers in setregs(). 1997-09-12 05:01:09 +00:00
mycroft d0917c65e9 Add an ibcs2_setregs().
XXX Current implementation is a horrible kluge.
1997-09-11 23:07:25 +00:00
mycroft 99a6404735 Add an ibcs2_setregs(). 1997-09-11 23:05: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
chopps 44f6ba6c55 VM_MAX_ADDRESS is the user max address -- adjust 1997-09-11 14:01:07 +00:00
pk aeec7a4ecc Turn off "branch folding" in microsparc II processors. This seems to
avoid strange panics happening. Patch suggested by Chris Torek.
1997-09-10 19:11:23 +00:00
gwr b1fe1c2452 Generalize somewhat (now works for alpha too). 1997-09-10 16:25:07 +00:00
scottr 5dd9e25dca For consistency: VIA_initialize() -> via_init() 1997-09-10 04:38:47 +00:00
scottr d1feb13390 Move VIA_initialize() from configure() to locore.s, shortly after
setting up and enabling the MMU.  This has the effect of ensuring
that any stray interrupts that get posted before the IPL is lowered
will be handled gracefully, i.e. without an access fault or illegal
instruction exception.
1997-09-10 04:22:33 +00:00
scottr eb3c36eb89 Add ROM vectors and I/O info for the IIfx. 1997-09-10 03:43:48 +00:00
mycroft d766a8aa21 Remove some vestiges of BDB. 1997-09-09 21:42:38 +00:00
pk 0bd088474a Turn on D_DSBL_WRINVAL on `ledma'. 1997-09-09 20:54:48 +00:00
scottr 01c7934554 Define, implement, and use oss_intr(). 1997-09-09 17:37:10 +00:00
mycroft 6da60facfb GC a bunch of NEWCONFIG stuff. 1997-09-07 13:05:39 +00:00
mycroft 892d336277 Increase FDC_MAXIOSIZE to MAXBSIZE, now that we can handle it. 1997-09-07 13:03:10 +00:00
drochner fba474f53a add prototype definition for DHCP support 1997-09-06 14:32:31 +00:00
drochner 969e506de4 Oops, last change made "make depend" work incompletely. Don't define
a "depend" rule here.
1997-09-06 14:26:47 +00:00
drochner 281398581a -Wall fixes 1997-09-06 14:08:27 +00:00
drochner 3b191b29c0 enable -Wall 1997-09-06 14:07:57 +00:00
drochner be8a78e9b5 -use DHCP extensions in bootp()
-enable -Wall
1997-09-06 14:06:53 +00:00
drochner 80d9738db8 -Wall fixes 1997-09-06 14:03:55 +00:00
drochner d99aa8efc0 Collect prototypes here. 1997-09-06 14:02:51 +00:00
drochner 7546d66094 Make sure the <machine/*.h> includes come from current kernel sources,
not from installed userland.
1997-09-06 14:02:13 +00:00
veego b8b28812be Add missing keypad entry for '+' and correct a comment. From pr#3893. 1997-09-06 12:41:10 +00:00
scottr da80f6c913 Catch bus error in sbc_pdma_out() and panic with a reasonable
error message.
1997-09-06 07:53:14 +00:00
scottr 18883bf3fc In itematch(), check to see if the framebuffer PA matches either the
$Fssxxxxx 1MB slot space documented in the old Inside Macintosh, or the
$Fs0xxxxx 1MB slot space documented in the new IM and Guide to Macintosh
Family Hardware.
1997-09-06 06:51:54 +00:00
thorpej ed2ec4869c Update for Chris Demetriou's changes made to the bus.h interface:
- bus_space_copy -> bus_space_copy_region (for consistency)
- "cacheable" argument becomes a "flags" argument instead, with
  BUS_SPACE_MAP_CACHEABLE and BUS_SPACE_MAP_LINEAR flags currently
  defined.
1997-09-06 05:44:07 +00:00
thorpej 1aa35e94d4 s/BUS_BARRIER/BUS_SPACE_BARRIER/g 1997-09-06 05:21:14 +00:00
thorpej 613ee19c60 Add DDB. 1997-09-06 02:04:18 +00:00
thorpej 1f6a8f7d03 Enable DDB. 1997-09-06 02:03:32 +00:00
thorpej 66fdddf6aa Add DDB files. 1997-09-06 02:03:11 +00:00
thorpej 9dcf694bd2 Prototype db_register_value(). 1997-09-06 02:02:25 +00:00
thorpej 998d79d26a Add support for DDB (in-kernel debugger) to NetBSD/alpha, based on
such code for Mach 3's Alpha port.  Initially reworked for NetBSD/alpha
by Chris Demetriou, and then heavily hacked on by me.  Works, but is still
a little rough around the edges.  Known problems:

- Error recovery could be improved a bit.
- Back traces don't work.
- Single-stepping can be flaky, at times.  (Alpha doesn't have hardware
  support for single-stepping, and I'm not entirely convinced the
  MI DDB software-emulated single-stepping logic is 100% correct.)
- Logic for when to drop into DDB needs some improvement.
1997-09-06 02:00:48 +00:00
thorpej 36f209b762 Split off PALcode functions into their own header file. 1997-09-06 01:23:52 +00:00
chuck 0b471e545e add bits for %cr4 and cpu_feature [from freebsd and www.sandpile.org] 1997-09-05 22:28:12 +00:00
chuck 302dad0aaa add invlpg, and rcr4/lcr4 1997-09-05 22:25:20 +00:00
thorpej 7df7a43ce7 When loading a symbol section, make sure it is aligned. 1997-09-05 21:50:34 +00:00
thorpej ba8becebfc installbood_cd9660 no longer exists. 1997-09-05 20:20:17 +00:00
gwr d2e3710fa9 Cosmetic (s/sun3_/_/) to be closer to the sun3x version. 1997-09-05 04:51:06 +00:00
gwr 6220d3efdf Add a comment about IDPROM_BASE (XXX) 1997-09-05 04:47:43 +00:00
gwr c04589c8a8 Make stand/Makefile.inc work with obj directories. (Fixes PR 4014) 1997-09-05 04:31:50 +00:00
thorpej 2f657a6266 Add some debugging code to log sgmap activities. Also, make sure that
we return "no valid mappings" if there is an error while loading the
sgmap.
1997-09-05 02:21:49 +00:00
thorpej 2ecccdc05f Define Status 0 and Status 1 registers. 1997-09-05 02:14:31 +00:00
thorpej 55800b610a Implement bus_dmamem_mmap(). 1997-09-05 02:05:37 +00:00
thorpej dc50e810ea Implement bus_dmamem_mmap(). 1997-09-05 01:44:42 +00:00
scottr 093be63832 Back out last commit; it interfered with NuBus video, and will
have to be reworked.
1997-09-04 00:54:04 +00:00
thorpej 6f4f08b8b2 Add a few more PALcode operations, as documented in pages (II-B) 2-1 through
(II-B) 2-33 of the Alpha AXP Architecture Reference Manual, Second Edition:

* rdps - Read Processor Status, needed by spl* functions.
* cflush - Cache Flush
* rdval - Read System Value
* wripir - Write Interprocessor Interrupt Request
* wrval - Write System Value

cflush, rdval, wripir, and wrval are used in multi-processor environments.
1997-09-03 23:09:04 +00:00
thorpej 032358ab33 From hp300 pmap: use mycroft's pv_entry allocator (from i386 port). 1997-09-03 19:07:32 +00:00
scottr 7883fba4bf Two video-related changes:
- Only set mac68k_vidphys if we're on a machine that we couldn't get
   the Mac OS memory map.
 - If we could get the Mac OS memory map, use the framebuffer size found
   by get_mapping() rather than the size calculated using the Booter
   environment.
1997-09-03 06:40:15 +00:00
scottr e68adcb18e Initialize the bus error and address error vectors explicitly for all
CPUs, and set up the VBR just to be certain.
1997-09-03 06:34:08 +00:00
scottr f30496c3f2 When identifying the CPU, print the scaled factor resulting from
calibration of the delay() loop.
1997-09-03 06:28:55 +00:00
scottr c0f620b961 Don't initialize the bus error and address error vectors; as we do that
in the startup code already.
1997-09-03 06:16:24 +00:00
scottr c4ab61a0cf Eliminate the use of the register keyword, and use standard
type names.  Also, eliminate an unnecessary DEBUG printf().
1997-09-03 06:14:42 +00:00
thorpej f03ded039c Update from hp300 pmap: define an active_user_pmap() macro and use it. 1997-09-03 00:58:13 +00:00
thorpej 0f5f0e115a Define a cdev_satlink_init(). XXX This should be done in an MI header file. 1997-09-03 00:25:01 +00:00
thorpej 6cf58542f9 PMAP_{,DE}ACTIVATE() are no longer exported from the Utah-derived pmap. 1997-09-02 23:52:55 +00:00
thorpej 243aa23148 Add __KERNEL_RCSID() and definitions for ISA satlink driver. 1997-09-02 23:41:04 +00:00
thorpej 44e33a2f5f Update for changes to how bus space tags are initialized. 1997-09-02 20:43:07 +00:00
thorpej 90798596fe Remove references to vm_pmap. 1997-09-02 20:37:23 +00:00
thorpej e7bb7bdc4b Remove references to vm_pmap. 1997-09-02 20:11:24 +00:00
thorpej f203067ae3 Adjust for changes to bus space tag initialization. 1997-09-02 20:10:28 +00:00
thorpej a71cecbec3 Fix a typo. 1997-09-02 20:08:02 +00:00
thorpej 991f4ebc72 cia_bus_ -> cia_swiz_bus_ 1997-09-02 20:07:20 +00:00
thorpej 80e3db443f Apply a change made to other PCI chipsets:
don't expect/provide pci_decompose_tag to be a MI, public function.  It
wasn't intended to be to begin with, and uses of it (e.g. the one in the
'de' driver) are quite likely to be incorrect.
1997-09-02 20:05:28 +00:00
thorpej 3735c7d1d7 Fix a think-o. 1997-09-02 19:39:15 +00:00
thorpej df1dcf81d0 Oops, missed one. 1997-09-02 19:18:20 +00:00
thorpej cc5eaab25b More garbage-collection. 1997-09-02 19:16:32 +00:00
thorpej b2a8424bb5 Garbage-collect loadustp(); the functionality has moved to pmap.old.c 1997-09-02 19:07:22 +00:00
thorpej 2c5c631b71 - Make the pmap_activate() and pmap_deactivate() interfaces consistent my
passing them a proc *, which encapsulates all of the information necessary
  to activate an address space.
- Garbage-collect pmap->pm_stchanged; it's not really used for anything.
1997-09-02 19:06:13 +00:00
thorpej bf232f7a37 Make the pmap_activate() and pmap_deactivate() interfaces consistent my
passing them a proc *, which encapsulates all of the information necessary
to activate an address space.
1997-09-02 19:04:57 +00:00
thorpej a47a8a25d6 Adjust for an interface change in a not-NEW_PMAP case in cpu_fork(). 1997-09-02 19:03:58 +00:00
thorpej f1373b949c - Make the pmap_activate() and pmap_deactivate() interfaces consistent my
passing them a proc *, which encapsulates all of the information necessary
  to activate an address space.
- Garbage-collect pmap->pm_stchanged; it's not really used for anything.
1997-09-02 19:00:53 +00:00
thorpej 5042993a22 - Make the pmap_activate() and pmap_deactivate() interfaces consistent my
passing them a proc *, which encapsulates all of the information necessary
  to activate an address space.
- Clean up some debugging code.
1997-09-02 18:59:02 +00:00
thorpej 364d6a31a7 Adjust some NEW_PMAP code for a slight interface change. 1997-09-02 18:54:28 +00:00
thorpej 511e46c568 Clean up the context switching code a bit:
- Marco-ize the 3 instructions that actually switch to the new process
  context.
- Unify (except for the pmap_deactivate() call) the NEW_PMAP and not-NEW_PMAP
  versions of cpu_switch(), and clean up some comments.
- Tidy up the not-NEW_PMAP bits of switch_exit().
1997-09-02 18:53:26 +00:00
thorpej d316987784 Garbage-collect VM_PMAP_STPTE, USTP_OFFSET, VM_PMAP. Define VM_MAP_PMAP
instead.
1997-09-02 18:48:58 +00:00
thorpej b7b3955ce0 Fix a typo: ALPHA_PTE_WRITE needs to include the "user write" bit. 1997-09-02 14:29:37 +00:00
thorpej 6caf625430 Note that a2 and a3 contain bootinfo information passed from the boot
program to alpha_init().
1997-09-02 14:29:00 +00:00
thorpej d95ac139e0 Oops, wrap cpu_decl()s inside #ifdef _KERNEL/#endif. 1997-09-02 14:25:34 +00:00
thorpej 8b6e894364 Clean this up a bit; defopt has rendered the #undef hacks unnecessary.
Also, put the cpu_decl()s in cpuconf.h, so that platform support files
can pull in the prototypes from there, and pull in options for those
systems for which there is code in the source tree.
1997-09-02 14:19:29 +00:00
thorpej b7c1c1e321 Pull in alpha/cpuconf.c 1997-09-02 14:06:02 +00:00
thorpej 5c72d6a933 Garbage-collect. 1997-09-02 14:03:10 +00:00
thorpej e79009b830 Ressurect from the Attic. 1997-09-02 14:00:11 +00:00
thorpej 9db8b6018f Make a note about option headers. 1997-09-02 13:42:49 +00:00
thorpej 1df0782d87 Pull in DEC_3000_300 and DEC_3000_500 options. 1997-09-02 13:29:17 +00:00
thorpej a4cef84ac7 Pull in DEC_3000_300 option. 1997-09-02 13:26:42 +00:00
thorpej 529d790161 Pull in DEC_AXPPCI_33 option. 1997-09-02 13:25:36 +00:00
thorpej cb32cf1ece Pull in DEC_EB164 and DEC_KN20AA options. 1997-09-02 13:24:48 +00:00
thorpej b57ee951d0 Pull in DEC_2100_A50 and DEC_EB64PLUS options. 1997-09-02 13:23:56 +00:00
thorpej 49a2bcd443 Pull in FIX_UNALIGNED_VAX_FP option. 1997-09-02 13:22:53 +00:00
thorpej 693b3e7262 Nuke the idea of <machine/options.h>. It completely defeats the purpose
of fine-grain option dependencies.
1997-09-02 13:17:47 +00:00
thorpej e234ed15b6 Fix oversight in a previous commit. 1997-09-02 12:54:27 +00:00
thorpej 375ad27ed8 - Garbage-collect all DMA-related initialization, calling a separate
*_dma_init() function instead.
- Pass the appropriate bus dma tag to children.
1997-09-02 12:51:20 +00:00
thorpej 3ac7ac6e63 Garbage-collect. 1997-09-02 12:43:22 +00:00
thorpej aa7a2876e6 Treat bus space tags more like pci chipset tags and bus dma tags: allocate
them statically within a chipset's state structure, and pass them to
the *_bus_{io,mem}_init() functions.
1997-09-02 12:40:18 +00:00
leo 225274f8b4 Add BUS_SPACE_MAP_* macro's. 1997-09-02 11:19:02 +00:00
thorpej fd01db8b74 Use more complete #include directives when pulling in the chipdep
functions.
1997-09-02 11:09:51 +00:00
thorpej 9199b6645b Clean up RCS IDs. 1997-09-02 10:56:52 +00:00
thorpej d450130943 Adjust for new names for the PCI i/o and mem swizzle-style access
function files.
1997-09-02 10:43:27 +00:00
thorpej 8f286ca7f3 Renamed to pci_swiz_bus_{io,mem}_chipdep.c by repository copy. 1997-09-02 10:39:15 +00:00
thorpej 8998fa1198 Revive these files from the Attic. 1997-09-02 10:26:55 +00:00
jonathan 034f64c0da Set fixtick to (1000000 % hz) when NTP is configured. 1997-09-01 08:05:05 +00:00
pk 240f9f0804 Bring db_{read,write}_bytes() prototypes in scope.
Move Debugger() within `#ifdef DDB'
1997-09-01 00:16:31 +00:00
pk 7d7a8e5773 Switch to MI kgdb code. 1997-08-31 21:29:16 +00:00
pk 84877e89f6 Allow a BREAK to cause a kgdb_connect(). 1997-08-31 21:26:37 +00:00
pk 7950e785f9 Switch to MI kgdb code. 1997-08-31 21:22:44 +00:00
pk 2b1e7bab51 pmap_writetext(): use context 0. 1997-08-31 21:08:03 +00:00
is 7a5cd3368f We may not open the 'a' partition here, as there are Amiga partition tables
without an 'a' partition. We open the RAW_PART partition instead.
Without this, a boot partition on the 'b' or later partition of such a disk
won't be found.
1997-08-31 16:33:13 +00:00
scottr 59d6043196 Do run-time determination whether to save the TC value for AV
Macs; this way at least those models can configure intvid0.
From Dave Huang.
1997-08-30 22:29:10 +00:00
mycroft 8c578dc960 Pass down bus_dma_tag_t's as appropriate (per Jason's bus_dma code). 1997-08-30 06:53:57 +00:00
mycroft d4b3029855 Set the I/O and memory enable flags for the main PCI bus. 1997-08-30 06:52:55 +00:00
jonathan 5342b11519 Replace copyright notice. 1997-08-30 01:51:02 +00:00
thorpej 3220411801 Define PAL_cflush, PAL_ipir, and PAL_OSF1_wrperfmon PALcode operations. 1997-08-29 23:17:37 +00:00
leo 42c4123e4d Define 2 md devices. 1997-08-29 19:52:08 +00:00
leo 16bdafc3a5 Pull in Scott Reynolds' version of _splraise(). Also do a bit of typographic
cleanup while visting this file.
1997-08-29 19:47:52 +00:00
thorpej 417cce7c06 Fix typo(?) in dlmiss handler ("store" bit erronenously set). From
Kazuki Sakamoto <sakamoto@cec.co.jp>, PR #3583.
1997-08-29 19:11:07 +00:00
mikel 4058521515 add KMEMSTATS and sync GENERIC, INSTALL, and DISKLESS 1997-08-28 08:00:12 +00:00
augustss a79408b6c7 Change match routine to use "audio" as the ROM name. 1997-08-27 22:42:23 +00:00
augustss c58d387b0f Fix prototype for amd7930_set_params. 1997-08-27 22:33:59 +00:00
is e7c8f94f9d Yet another BROKEN removed, and another small cleanup. 1997-08-27 20:41:30 +00:00
is 1dc1561ebc Rename the _probe function to _match, and remove the
#ifdef _BROKEN_INDIRECT_CONFIG which we dont need here.
Thanks to Bernd Ernesti for pointing this out.
1997-08-27 20:35:46 +00:00
is 2f824e16e8 Oops, forgot this in last kilocommit:
Attach com at drsupio, drsupio at mainbus, and make
the ttyC0 stuff refer to the com driver.
1997-08-27 20:18:19 +00:00
is 0564e80e3e This is no longer needed. 1997-08-27 19:37:30 +00:00
is f7c9a70a19 Define supio, a direct bus with a single locator, the port number. This
is for "standard PC i/o stuff" at known and constant locations, e.g. when
multi-io chips are used on non-ISA mainboards.
Implement drsupio.c, the DraCo version of this.
Attach the generic com.c to this bus.
Remove the old drcom hack.
1997-08-27 19:32:47 +00:00
is 45a8ec2d22 Amiga port bus.h. Currenlty, only the _1 functions are implemented. 1997-08-27 18:52:57 +00:00
is 2e45e81622 machine/intr.h for the Amiga port. Mostly a wrapper around other includes. 1997-08-27 18:41:25 +00:00
is 47e8019573 Add __GENERIC_SOFT_INTERRUPTS implementation.
Currently, this is only kind of a wrapper around the *_sicallback() function
family. This way, we'll only break the new driver if it doesn't work.
After more drivers are converted, we'll change it to be the other way round.
1997-08-27 18:31:14 +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
leo c9f11609e3 According to Andre Lange, the Hades has the DTR/RTS lines exchanged on
the 68901 UART-port due to a PCB error. Take care of this.
1997-08-27 06:59:19 +00:00
leo a905a75ff7 Number the slots 0&1 instead of 1&2 . 1997-08-27 06:56:14 +00:00
leo c8c7fe38ca Add the isa-bus. 1997-08-27 06:52:46 +00:00
leo 2ca332c7bc Add a char entry for md and add it to the chartoblk table. This fixes
the problem that kernfs was unable to determine the root device while
booting from the install floppy.
1997-08-27 06:21:06 +00:00
leo d0301b58ee Don't enable the dma-interrupt while polling for dma to end. This sometimes
caused a system panic on the Hades while probing the SCSI devices.
1997-08-27 06:16:49 +00:00
mikel a6a1f307de sync with GENERIC 1.96, no functional change 1997-08-27 04:56:38 +00:00
augustss a50d4ba893 XXX Add a drq2 locator for the ISA bus. Many sound cards need
two DMA channels to do e.g. full-duplex.  This allows
a way of specifying the second channel in a sane way.
THIS IS TEMPORARY.  The drq2 locator will go away when
the locator system has been changed to allow multiple
values per locator.
1997-08-26 19:26:38 +00:00
fvdl a153e98871 Recognize Cyrix M2 1997-08-26 18:56:40 +00:00
fvdl d792a4aa54 Activate SCSIVERBOSE by default. 1997-08-26 18:39:02 +00:00
thorpej 75a4512f7f Notify drivers that we "prefer" I/O mapped space, per discussion with
Chris Demetriou and Matt Thomas, some two or three months ago.  (This hint
is used by the latest "de" driver.)
1997-08-26 03:14:06 +00:00
thorpej 9ffe59d049 In i386_mem_add_mapping(), don't bother calling pmap_changebit() to mark a
device memory mapping cacheable/non-cacheable:
- PG_N doesn't exist on the 386.
- pmap_changebit() only deals with managed pages.
Basically, calling it is unnecessary, and never did anything.  Pointed
out by Chuck Cranor, and further discussed with Frank van der Linden.

Also, add a comment about why we don't mark pages non-cacheable in
_bus_dmamem_map().
1997-08-25 23:02:25 +00:00
thorpej 38f15737fd Protect access to kmem_map with splimp()/splx(). From Chuck Cranor. 1997-08-25 21:17:48 +00:00
augustss 6616d47838 - Change audio_hw_if a little: set_param now sets the play and record modes
at the same time instead by using two different calls.  This enables
  it to check more easily if the combined mode is all right.
- Improve the error checking in audio.c.
- Add a new audio property, AUDIO_PROP_INDEPENDENT, show if the
  play and record settings are independent.
- Fix some buglets in audio.c.
1997-08-24 22:31:23 +00:00
drochner 9518da7563 Remove over-sensitive sanity check for console port == KGDB port. 1997-08-24 09:38:19 +00:00
cgd ce0a826c55 fix various bogons: copy SCSIVERBOSE option (still commented out) and ISA lc
driver to ALPHA.  Also, sort them into their respective lists correctly,
rather than punting completely (SCSIVERBOSE), or mis-sorting(!) (lc).
1997-08-24 06:40:18 +00:00
cgd 1173f77359 fix spaces/tabs lossage: if we're going to do "options<space><tab>", be
consistent about it (fix it in all files)!  Also, there's no point at all
in doing "file-system<space><tab>", so kill the spaces.
1997-08-24 06:37:12 +00:00
mjacob 6ac7f6248f add a before tab to SCSIVERBOSE 1997-08-23 19:16:06 +00:00
drochner 44224e6fd5 Adapt to serial console attachment changes. 1997-08-23 14:28:16 +00:00
drochner 350184a9b7 Remove unneeded dev/cninit.c. 1997-08-23 14:26:46 +00:00
drochner 01930ff909 Update prototype options for serial console / KGDB for new reality.
"option\t" -> "option \t", as wished by Bernd Ernesti.
1997-08-23 14:25:55 +00:00
drochner dfbc80bd71 Delete unused constab[]. 1997-08-23 14:22:59 +00:00
drochner 2f05375163 Use functions provided by the drivers to initialize and attach console
and KGDB. Make port address, speed and (7/8bit,parity,stopbits) for serial
lines configurable.
1997-08-23 14:22:03 +00:00
drochner d09a42059f Put all console initialization into 1 exported function (pccnattach()).
Delay setting of cn_tab->cn_dev until autoconfiguration attach
  to get the minor number right. (not really needed, but for
  consistency with pccons and serial consoles)
Comment out unused pccnprobe() and pccninit().
XXX I didn't use "#if PCVT_NETBSD > ???" anymore, nor separated from
  FreeBSD. The driver is not centrally maintained anyway.
1997-08-23 14:17:46 +00:00
drochner fe882d2810 Put all console initialization into 1 exported function (pccnattach()).
Delay setting of cn_tab->cn_dev until autoconfiguration attach
  to get the minor number right.
Delete unused pccnprobe() and pccninit().
1997-08-23 14:10:12 +00:00
kleink dc91486be3 bootp vs. mop: don't clobber `netboot' flag. 1997-08-23 10:18:33 +00:00
perry 423eab6e13 Stop people from trying to build the obsolete boot blocks by accident. 1997-08-22 21:53:00 +00:00
augustss 556cf1abc0 Make it possible for audio to attach to audioamd. 1997-08-22 11:45:06 +00:00
cgd fc2e81c6d5 lie to the compiler when doing mkdep so that it depends .s files correctly. 1997-08-22 06:37:17 +00:00
scottr 4cb1ba2dac Make this compile again when we only specify a machine with the
HP MMU (320, 350).
1997-08-21 18:12:34 +00:00
mjacob 1a7afa3853 add commented out reference SCSIVERBOSE option 1997-08-20 18:38:13 +00:00
mjacob 0e3c7b7f44 Commented out SCSIVERBOSE option; reference 1997-08-20 18:35:55 +00:00
drochner e153e51fa3 Make "genprom" work in objdir.
Minor cleanup to ease bootcode development at non-standard locations.
Closes PR port-i386/4013 by Luke Mewburn.
1997-08-20 16:53:30 +00:00
jonathan 43bc0b92d2 Turn DDB on by default in GENERIC kernel; turn DDB_ONPANIC off.
Remove obsolete comments.
1997-08-20 04:33:04 +00:00
jonathan d2ecd3da2a update based on NFSINSTALL. 1997-08-20 04:22:41 +00:00
jonathan 378facc384 consistent whitespace after "options". 1997-08-20 04:21:28 +00:00
jonathan e14d1d4768 Move SSIZE and DELAY() definitions to sys/arch/mips/include/mips_param.h.
Update comment in pmax/include/param.h (pr 3988).
1997-08-20 03:47:17 +00:00
augustss 332ad95e76 Change the MI audio driver so it attaches to the MD driver in the
normal way.  This requires adding a line to the config files to
get audio to work again.
1997-08-19 23:49:33 +00:00
hannken a44c1f66a7 Change "it's" to "it is" inside assembler comments to
stop "unterminated character constant" messages from `mkdep'.
1997-08-18 22:44:01 +00:00
scottr af6b181686 Fix typo in getting the 040 access fault address, noticed by
Allen Briggs in the mac68k locore.s
1997-08-18 17:52:48 +00:00
mhitch 5170e3eccc Use the free-running microsecond counter on the Maxine for high-resolution
clock.
1997-08-17 18:13:22 +00:00
mhitch 4c88f43717 Get $ra contents from the proper location in the exception/interrupt frames.
Use DDB symbols if available for stack traceback.
1997-08-17 17:02:07 +00:00
mhitch 549e36420e Display jump and branch target with symbols if available.
Clean up indentation - seems to have gotten messed up when the mini-debug
routine was added.
1997-08-17 16:58:53 +00:00
mhitch 748703e737 Correct the check for a recovered error (I did it wrong the first time). 1997-08-17 16:51:21 +00:00
briggs e39cac5a38 Get the correct fault address on a bus error on a 68040. 1997-08-16 23:10:49 +00:00
mjacob 23d0cae1eb It helps streaming performance substantially to enable bursts and more up hose
packets. It's not clear whether latency will be affected much. It could be.
However, for the time being, getting full rates out of HIPPI or SCSI are what
interests us at NASA, so we'll hew to this bias.
1997-08-16 01:18:30 +00:00
mjacob 92995a3a9f a minor bit of cleanup 1997-08-16 01:16:33 +00:00
mjacob ecd1b40ab3 Add some PCIA_CTL defines. 1997-08-16 01:14:32 +00:00
mjacob 419960bd0e Changes for PCI Qlogic ISP2100 meant a few minor changes. 1997-08-16 00:33:04 +00:00
perry 51ed105af6 comment out APM -- it hurts some systems during install. 1997-08-15 21:44:31 +00:00
mikel d540ff911c wrap bus_space I/O tag checks with #ifdef DIAGNOSTIC.
wrap actual read port map/unmap with #ifdef _KERNEL, so userland probe
  code will still work.
1997-08-15 06:48:29 +00:00
cgd efecf08fef Sync with bus_space(9):
* make map and alloc take 'flags' rather than 'cacheable,' for
  more flexibility.
* rename BUS_BARRIER_* to BUS_SPACE_BARRIER_*, for consistency.
* rename bus_space_copy_* to bus_space_copy_region_* and make their
  defns match the updated spec.
Backward compatibility is provided by defining __BUS_SPACE_COMPAT_OLDDEFS,
which is currently defined by default.
1997-08-15 00:45:16 +00:00
briggs 2a83a9363a Add interrupt handler for SuperMac GFX.
Tested by Kai-Yew Lum <kaiyewl@engin.umich.edu> back in May.
1997-08-15 00:15:32 +00:00
scottr c7079260e5 More machine support:
- Add entries for the LC520, Color Classic, and PB150 to intvid_info[].
 - Make the PB150 a Duo-class machine, as it seems to work better this way.

Now that we're doing the latter, it points out something I missed a long
time ago when I added Duo support:  CLASSDUO was being ignored in
mac68k_set_io_offsets().

PowerBook 150 changes and bug fix provided by Dave Huang <khym@bga.com>
in PR 3970.
1997-08-14 18:23:20 +00:00
drochner 80a5032beb Make new memory detection default.
Introduce a new option, "CONSERVATIVE_MEMDETECT", which disables the
new BIOS calls.
1997-08-14 17:00:18 +00:00
drochner e3045dd1ce Add prototype definitions for serial console and KGDB. 1997-08-14 16:23:41 +00:00
drochner 473b4f1222 Initialize system console from a central place (don't use cninit()
anymore). This makes the code cleaner (no more bus tag guessing in the
serial console driver) and it allows to share code with KGDB port
initialization.
The console device is now given as string ("pc", "com0".."com3").
Modelled after alpha port.
1997-08-14 16:21:49 +00:00
drochner 3bbb2f7b18 Export variables needed for system console initialization.
Do this in a separate file because pcvt_hdr.h contains too many definitions
which can cause namespace trouble. (eg, a structure element "m_len")
1997-08-14 16:07:12 +00:00
drochner 5a32b608a0 -Export variables needed for system console initialization.
-Because *cnputc()'s second argument is an "int" in cons.h, correct
  pccnputc() accordingly.
1997-08-14 16:02:14 +00:00
drochner c4af2e3042 Build the new memory detection stuff. 1997-08-14 15:40:28 +00:00
drochner 26f8c5bd65 Prepare definition for EXTENDED_MEMDETECT.
Not yet default.
1997-08-14 15:38:30 +00:00
drochner a6d6ef3a20 Use traditional memory detect function (int15/88) as indication for
a XMS driver.
From Martin Husemann.
1997-08-14 15:28:47 +00:00
drochner 2092d92ef2 New, optional, method to get size of extended memory.
It will be used for getextmem() if EXTENDED_MEMDETECT is defined.
Worked on all tested machines.
Thanks to all testers, especially Martin Husemann!
1997-08-14 15:22:00 +00:00
scottr f9904b191f Recognize the Sigma Designs ColorMax card, and handle the interrupt. Code
provided by Brian Foley <bfoley@gpo.iol.ie> via Allen Briggs, updated for
bus.h by me.
1997-08-14 06:16:46 +00:00
jonathan bf61f3291a Add checks for DS 3100, 2100. Use more generous delay values, these
systems may be memory-bound.
1997-08-14 00:15:37 +00:00
cgd 9d532f482c don't forget to set hwrpbsize to zero explicitly 1997-08-13 20:49:56 +00:00
cgd bf596ddb89 don't define __BUS_SPACE_COMPAT_OLDDEFS if it's already been defined 1997-08-13 02:53:03 +00:00
perry 03c3f2c28f fix spelling error, pr-3974 from Dave Huang 1997-08-12 23:53:54 +00:00
drochner 7427d7b340 Attach KGDB in early system startup. 1997-08-12 17:28:12 +00:00
drochner e553e8219f Enable single stepping with KGDB. 1997-08-12 17:26:57 +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
cgd 9b263847db clean up RCS IDs 1997-08-12 06:08:21 +00:00
jonathan a5266cdd64 Fix for mbufs that start on odd-byte-aligned boundaries, and use. 1997-08-12 06:05:28 +00:00
cgd 73596f5504 sort miata defs 1997-08-12 02:59:43 +00:00
cgd 5544e7e348 update for moved files, placeholder for miata flag header 1997-08-12 02:08:12 +00:00
jonathan d3a3872e1a Fix 3MIN model-string braino from PR# 3965. 1997-08-12 01:52:10 +00:00
cgd 0bc9a09170 cia_bus_* -> cia_swiz_bus_* 1997-08-12 00:58:01 +00:00
cgd 46d5a50540 rewire a few file dependencies for cleanliness 1997-08-12 00:46:11 +00:00
cgd 4b8f75045a define a defopt for the miata systype 1997-08-12 00:04:14 +00:00
cgd 2d184c2262 clean up bootinfo v1 struct a bit: add a hwrpb size field (in a backward-
compatible way), and clean up the comments to make things a bit clearer.
1997-08-11 23:43:38 +00:00
scottr c988c6f85f Make #include directives consistent. All MD headers are of the form:
#include <mac68k/{dev,mac68k}/foo.h>
1997-08-11 22:53:26 +00:00
cgd b38691223e s/bogus/unknown/; just because we don't know about it doesn't mean it's wrong 1997-08-11 22:46:37 +00:00
jonathan cfc1040a1f Revert syscall interrupt re-enable of previous revision:
introduces a race in trap logging.  Reported by Michael Hitch.
1997-08-10 01:14:49 +00:00
ender 85f80dd2c7 o Fixed definition of PowerBook extended keyboard from previous commit
o Added recognition of some additional ADB device types
1997-08-09 20:21:45 +00:00
jonathan 85d2b918cd Definition of cpu_mhz. 1997-08-09 19:06:45 +00:00
jonathan baad4266be Fix printf() format strings for VMFAULT_TRACE (see PR port-pmax/3777).
Re-enable interrupts in syscall() before doing anything else; marginal
impprovment (2ms?) in NTP accuracy on 5000/240.
1997-08-09 06:06:37 +00:00
jonathan 95a12ee943 MIPS cpu-speed detection using mc146818 clock.
Compute CPU speed(MHz) and loop multiplier for DELAY() based on
counting empty loop between mcclock ticks.  New global: cpu_mhz.
Change pmax/pmax/machdep.c to build baseboard model names from cpu_mhz.
Set  'cpuspeed' for more realistic DELAY() on mips3 models.

Mips CPU constants, testing, and calibration from D. Sean Davidson
<davidson@zk3.dec.com> and Simon Burge <simonb@telstra.com.au>.
1997-08-09 05:51:56 +00:00
jonathan 003ccf3b1c mips pmap_activate:
* prototype and definition for pmap_activate(p). Updates the segtab,
   and changes the active ASID if p == curproc.
 * Make reserved fixed-address (UADDR) kernelstack PTEs global,
   so we still have a kernel stack after pmap_activate() on curproc.
 * make KSEG2 mappings for p_addr global (see above.)

Seems to detune contextswitch and NTP resolution (by 60 ms), but
thepmap_activate() interface is mandatory.  Needs more thought.
1997-08-09 03:41:02 +00:00
ender f8f304c76c Add recognition of more keyboard types (including ISO layouts) 1997-08-08 17:58:48 +00:00
jonathan 1c7fa31659 Add mips_read_causereg() 1997-08-08 06:52:59 +00:00
scottr 3aa6a4e333 Make the diagnostic panic message when we don't have a pcb consistent
with the message one normally gets when the kernel panics due to
some other unhandled trap.
1997-08-07 21:37:03 +00:00
scottr 740b91a80c Add the Classic II to intvid_info[] 1997-08-07 21:30:20 +00:00
christos a9be2ab366 PR/3954: Izumi Tsutsui: Add id for the ESS1868 joystick. 1997-08-07 19:44:54 +00:00
christos 7bd5c461f5 Check if we can map the read port, but don't really allocate it because it
will cause a conflict with the SoundBlaster Joysticks that say that they
require 200/8 and 207 is usually the read port. XXX: This is a hack.
1997-08-07 19:44:03 +00:00
pk dd07701791 Do not use `rasterconsole' by default on this framebuffer. 1997-08-07 19:12:30 +00:00
scottr c03541be22 Strip down to bare essentials for these machines. 1997-08-07 19:07:08 +00:00
mark 0efc44fd71 Cast the destination address for the cpu_cache_syncI_rng() function in
db_write_text().
1997-08-07 16:24:34 +00:00
veego 3dac730d96 French keymap. From Eric Delcamp in pr: port-amiga/3923 1997-08-06 17:08:15 +00:00
jonathan 5d53ad5ef5 Garbage-collect Mach_clock_addr outside of machdep.c.
Use as mcclock_addr inside machdep.c, to disable clock interrupts
until the clock is autoconfigured.
1997-08-06 12:03:34 +00:00
ragge cd0d651d0f delay() must be protected by #ifdef _KERNEL. 1997-08-05 13:28:51 +00:00
pk 46ca64dc14 Comment out body of pmap_copy() which got committed accidentally (btw. it
works, but its performance benefits are not immediately obvious).
1997-08-05 11:06:58 +00:00
pk b449c91f9b Correct typo that has been lurking undetected for some time. 1997-08-05 11:00:10 +00:00
pk a7f1e52ffd Some cosmetic changes suggested by Brian Baird: cache config msgs & RT625 fpu. 1997-08-05 10:40:21 +00:00
drochner 23fd5d0d9b #if -> #ifdef, fixes XMS support
from Martin Husemann, pr port-i386/3941
1997-08-05 10:27:57 +00:00
pk 7841423191 Hypersparc detection. 1997-08-04 22:41:25 +00:00
pk 8f937196fb Don't flush the cache in setpte4m(). Most callers have flushed the page
already and some MMUs might require a valid mapping to exist for the
virtual address to be flushed.
1997-08-04 20:09:54 +00:00
pk 3ffd287cc0 Move MMU dependent DDB goo into a pmap helper function. 1997-08-04 20:02:59 +00:00
pk 24ad0e8316 Prototype pmap_writetext(). 1997-08-04 20:00:47 +00:00
perry 8b27678e4e Added CAPS_IS_CONTROL option that switches the caps lock and control
keys on a pccons console keyboard.
submitted in PR 899 by Alistair G. Crooks
Note that I only did this for the US type keyboard maps.
This and all other such options should be documented, and perhaps
rennamed with consistant PCCONS_ prefixes.
1997-08-04 05:29:20 +00:00
perry 6adc9468b2 1) add Matthieu Herrb's support for iso-latin1 and non-U.S. keyboards
o option DISPLAY_ISO8859 enables the display of iso-latin1
       character set (instead of the IBM page code 437)
    o option FRENCH_KBD, GERMAN_KBD or NORVEGIAN_KBD implement
       support for national keyboards (implies DISPLAY_ISO8859).
   Originally supplied in PR #1529
2) Add option PCCONS_REAL_BS which (for US keyboards only) forces
   backspace to really be backspace and not delete. Intended to close
   PR #2264 submitted by Greg Woods. He wanted it changed for everyone
   -- I thought adding a kernel compile option was friendlier.

Note: Both of these sets of options really should be documented in an
i386 specific version of options(4).
1997-08-04 05:05:31 +00:00
fvdl 62e9894c48 Recognize some more chipsets. 1997-08-03 23:42:05 +00:00
perry 7498ff5250 Add (commented out) COM_HAYESP option, per pr-2189 from John Vinopal 1997-08-03 21:59:11 +00:00
scottr 06ac03dd55 Fix typo found by Colin Wood, PR 3934: ga_handle should get the value of
the handle, not the tag.
1997-08-03 16:44:24 +00:00
mikel 01a1b97f78 use compatID to find P&P joysticks; isapnp drivers should never use
ipa_devident or ipa_devclass to match devices, those strings are
  informational only!
1997-08-03 08:16:55 +00:00
scottr 6f33c6446c Drop splsched() to spl3(), so that it no longer blocks serial interrupts. 1997-08-03 07:20:40 +00:00
scottr 741cf383d0 Adjust prototype for ga_phys field in grfbus_attach_args. 1997-08-03 07:17:31 +00:00
scottr cd74e0d31a Adjust grf_establish() prototype. 1997-08-03 06:52:23 +00:00
scottr f4ef74ae32 Fix grf{i,m}v_phys() prototypes. 1997-08-03 06:42:29 +00:00
scottr dfa83e4861 Overhaul grf drivers to correct recent problems with X and dt
(address error faults), as well as other reported problems:

 - Simplify grfmv_phys() to work like grfiv_phys(), and eliminate the
   second argument to both, as we don't use it anyway.
 - Handle fbbase and fboff consistently throughout.  Closes PR 3862.
 - Eliminate grfaddr() by pulling it into grfmmap(), which is the
   only place it was used, previously.
 - grfmap() now gets the physical address of the framebuffer from
   the appropriate driver, rather than try to compute it by itself.
   Be careful with aligning the base to a page address and increase
   the length of the mapped region appropriately.  Closes PR 2867.
1997-08-03 06:25:56 +00:00
mikel 94dcb3ed4a sync with GENERIC version 1.88, no functional changes
kill outdated aha vs. bha comment
1997-08-03 05:30:14 +00:00
mikel b4819557ca order of devices in this file is irrelevant, so move isapnp0 up with
other buses and pair isapnp devices with isa equivalents.
1997-08-03 05:26:35 +00:00
leo 032fb7a2d9 Remove 030 support, add 060 support instead. 1997-08-02 12:12:25 +00:00
leo 6ad4ee1142 lpt -> lp 1997-08-02 10:04:44 +00:00
mark fdcef230ca Added support for built in miniroot ramdisk. Define MINIROOTSIZE to be
the number of blocks to reserve for the ramdisk.
1997-07-31 23:13:12 +00:00
mark 4f2ae66cf0 Cleaned up mmmmap(). No point in trying to support mmap of /dev/kmem since
physical addresses could be in transit.
1997-07-31 23:02:24 +00:00
augustss 658656bb99 Audio changes:
- Change the way attach and open works to allow multiple audio
	  devices.
	- Split the mulaw.c file into two to avoid dragging in mulaw
	  convertsion when they are not needed.  Add 16 bit alaw/mulaw tables.
	- Change the way audio properties are gotten.
	- Recognize more versions os SoundBlaster.
1997-07-31 22:33:08 +00:00
matt 48aa5a6912 Add lc* line for DEC EtherWORKS III (it was written initially for a
NetBSD/alpha user).
1997-07-31 22:22:08 +00:00
matt fc86c650c6 Add lc0 entry for DEC EtherWORKS III. 1997-07-31 22:03:31 +00:00
mark 6c440cc51b Support kernels up to 4MB in size (was 2MB) in initarm().
Removed some un-necessary cache synchronisations.
Call the cpu_sleep() function in an infinite loop in halt().
Removed the long dead swap specifier from rc7500 initarm().
1997-07-31 02:59:06 +00:00
mark 3f42259896 If MEMORY_DISK_IS_ROOT is defined don't bother to compiling in the code
to extract the root filesystem name from the bootargs.
1997-07-31 01:11:33 +00:00
mark 67130a7f8d Added dev/clock_subr.c to the files list. 1997-07-31 01:08:26 +00:00
mark 0e8ba1b90b Overhauled and updated to work with dev/clock_subr.[ch] 1997-07-31 01:08:01 +00:00
mark e375e0f448 Disable the reporting of the easi space timings. At podulebus attach time
the only timings we know are the ones inherited from the boot and the
drivers that will attach to the bus may change these.
Use the IS_PODULE macro for checking manufacturer and podule id's
against attach args.
1997-07-31 00:43:28 +00:00
mark 18b47c4129 Define an IS_PODULE() macro to match a podule manufacturer and id with
podulebus attach args.
1997-07-31 00:40:56 +00:00
mark d02fe01663 Comment out a load of special debug messages.
Fix the mappings of the L2 page table used to map the process page tables
so there there is no user access (was user read only access).
1997-07-31 00:36:55 +00:00
mark d50cd34639 Remove a dead version of the _MCOUNT_DECL macro. 1997-07-31 00:22:15 +00:00
mark 4d5984d00a When syncing memory and cache after modifing the text area sync only
the modified address range rather than the whole cache/memory.
1997-07-31 00:19:31 +00:00
mark 2319a993f9 Add specific checks for user space accesses to the page table area (just
above the stack).
1997-07-31 00:16:12 +00:00
mark 905a93b982 Removed several lines of unreachable code in eagetpackets().
Reset the interface every time an error is detected in eagetpackets()
otherwise the interface can end up in a jammed state.
1997-07-31 00:13:18 +00:00
mark 504ddabd38 Removed several lines of unreachable code in ebgetpackets(). 1997-07-31 00:09:48 +00:00
mark 57a231e4b6 Modified the cpu_cache_purge_ID() calls in pagemove(), vmapbuf() and
vunmapbuf(). If the address range involved is 4KB or less purge the
specific address ranges. otherwise purge the whole cache.
1997-07-31 00:08:04 +00:00
mark 50633bf9a8 Added calls to mcount() for the assembly functions here if GRPOF and
PROFILE_ASM are defined.
Added missing .data directive prior to the curpcb declaration.
Fixed the calling of the cpu sleep function in idle(). The sleep function
takes a single argument which is the sleep mode. This is currently unused
but 0 should be passed for future compatibility.
1997-07-31 00:03:54 +00:00
mark 9767e83757 If a transfer completes and we have performed a check sense, check the
sense code for zero and if found repeat the request sense. This solves
a bug in the sbic driver when accessing JAZ drives that results in
faulty sense data being returned following a transfer. A retry returns
the correct information.
This is probably showing up a more fundemental bug in the sbic driver
and will probably have to wait for a complete overhaul of the sbic
driver (planned) for a perfect fix.
Fix supplied by Rob Black <r.black@ic.ac.uk>
1997-07-31 00:00:12 +00:00
mark 258768a81d Use the cookie field in the podulebus tag (current unused) as a register
shift value thus making register more flexible.
Remove the absolute shift of 2 in all the podule read/write routines and
use the tag cookie (passed in r0) as the shift value.
1997-07-30 23:52:08 +00:00
mark 4e641ac6d1 Utilise the cookie field in the podulebus tag (currently unused) as a
register shift value.
For the podulebus_bs_tag structure set the shift to 2 (the current
hardcoded value in the actual read/write routines).
Use the cookie to provide the register shift in podulebus_subregion().
1997-07-30 23:49:54 +00:00
perry 10838cb3ff Add another bridge ID, from pr 3926 submitted by Soren S. Jorvang 1997-07-30 21:25:00 +00:00
leo 83c69491b2 Add second md device. 1997-07-30 15:45:33 +00:00
leo baa16e912c Rename lpt to lp on some places to avoid botches between files.isa and
files.atari.
1997-07-30 15:43:23 +00:00
leo 89ac8e71d2 Use a buserror handler that just tests for 'nofault' being set when the
MMU is not yet initialized. This behaviour is necessary when probing
for the machine type - because we need the type before we can setup the
tables....
1997-07-30 15:37:48 +00:00
leo b61a48cef7 Include 'locators.h' 1997-07-30 15:32:37 +00:00
veego ccd583103e Fix the doublescan mode which was broken in the last commit. 1997-07-30 11:05:55 +00:00
phil 5bc246cdb1 Add cd9660 fs and msdos fs. 1997-07-29 18:36:19 +00:00
fair fc96112975 fix editing boo-boo 1997-07-29 17:55:38 +00:00
veego 777749b558 - Remove grfvideo_mode->hblank_stop and grfvideo_mode->vblank_stop.
- Add grfvideo_mode->disp_flags to select interlace, doublescan,
  sync-on-green and horizontal/vertical sync polarity.
- Add some constants for grfvideo_mode->disp_flags.
1997-07-29 17:54:11 +00:00
veego 1d8c390628 - Change the check in r[ht]_getvmode for md->DEP == 4 to md->DEP != 4.
This fixes a wrong output from grfconfig /dev/grf[23]
- changes for the grfconfig interface:
  - Remove gv->hblank_stop and gv->vblank_stop.
  - Only print doublescan and interlace flags. Horizontal/vertical sync
    polarities are not yet supported and sync-on-green will never be
    supported.
1997-07-29 17:52:05 +00:00
veego eb3d5738b5 - changes for the grfconfig interface (provided by Ignatios Souvatzis):
- Remove gv->{hblank_stop,vblank_stop} and use the other grfvideo_mode
    values to set ba->data.
  - Add gv->disp_flags to select interlace.
  - Not yet supported are: doublescan, sync-on-green and the horizontal/vertical
    sync polarity.
  This makes it possible to use xfree values for grfconfig.
1997-07-29 17:50:01 +00:00
veego f46269ea78 - increase the number of possible grfmodes from 8 to 24
- changes for the grfconfig interface:
  - Remove gv->{hblank_stop,vblank_stop} and calculate HBE and VBE from
    gv->{htotal,vtotal}.
  - Add support for gv->disp_flags to select interlace, doublescan and
    horizontal/vertical sync polarity.
  - Return EINVAL for gv->disp_flags and sync-on-green.
  This makes it possible to use xfree values for grfconfig.
1997-07-29 17:46:24 +00:00
veego ce2e3d407b - s/inline/__inline/
- Use interrrupt #6 instead of #2. #6 is the default interrupt and there
  seems to be a problem with Cyberstorm 060 and #2.
- Set the interrupt register before enabling the interrupt.
- GC M2INS
- minor cleanup
- Switch from +hsync/+vsync to -hsync/-vsync.
- changes for the grfconfig interface:
  - Remove gv->{hblank_stop,vblank_stop} and calculate HBE and VBE from
    gv->{htotal,vtotal}.
  - Add support for gv->disp_flags to select interlace, doublescan and
    horizontal/vertical sync polarity.
  - Return EINVAL for gv->disp_flags and sync-on-green.
  This makes it possible to use xfree values for grfconfig.
1997-07-29 17:44:20 +00:00
veego 8b5fbedb3c s/inline/__inline/ 1997-07-29 17:42:03 +00:00
christos 832c3f464d If we have xms print the xms memory size, and indicate that this is xms
memory in the banner. It is confusing to show 0 memory...
1997-07-29 16:01:45 +00:00
fair d074ca9f6e %x -> 0x%x 1997-07-29 10:09:51 +00:00
fair b4750d5084 missed %lx -> 0x%lx 1997-07-29 10:04:44 +00:00
fair 4c351f243e %x -> 0x%x 1997-07-29 09:58:04 +00:00
fair 53adf300b3 %x -> 0x%x 1997-07-29 09:41:53 +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
mark 74bac48941 In wdcprobe() fail if the iobase defaulted rather than being specified in
the locators.
In wdcprobe_internal() set the WDCF_32BIT flag if the data32 io handle
is set.
All transfers to and from the data register now check for softc flags
to see if 32 bit transfers are enabled i.e. reading drive parameters
and doing a dump will use 32 bit transfers as well.
1997-07-29 01:59:20 +00:00
mhitch b4af013102 Resident count in pmap is now valid. I can now see RSS in ps. 1997-07-29 01:43:26 +00:00
mhitch fd5f2fd062 Get rid of the MIPS3 mess I left in pmap_enter_pv(). The cache inhibit
of cache-index incompatible virtual mappings for a physical page may be
required for hardware without secondary (level 2) cache to detect and
correct virtual coherency problems.  I'm not sure this is really needed
anymore, since pmap_prefer() took care of of the cache-index
incompatible mappings that I have seen.  Count the times a page is
cache inhibited in enter_stats if DEBUG.

Wait for memory instead of panic() on failure to allocate a page for the
segtab or segmap [from OpenBSD arc port].  Also check for malloc()
failure on allocation of a new pv entry and panic().

Increment resident_count when adding a new page to a pmap [also from
OpenBSD].  Process resident size is now valid.
1997-07-29 01:41:46 +00:00
mark 27646ce7d4 Keep note on when we are in postmortem() in order to avoid being
recursively called.
1997-07-29 01:37:30 +00:00
mark 02c17d67e3 Remove some redundant .global directives as ENTRY() macro includes
this anyway.
1997-07-29 01:20:34 +00:00
mark 0e187069c2 The cpu_cahce_*_rng() functions take a start address and a length rather
than a start address and end address so reflect this in the macros and
prototypes.
1997-07-29 01:18:29 +00:00
mhitch dfca3a7721 Add disk and tape devices for a second ASC SCSI option card. 1997-07-29 00:54:22 +00:00
perry 6473705cc6 disable the wt device for now -- it nukes ed devices too easily 1997-07-29 00:42:38 +00:00
perry 6d47f9593e comment out mcd for now -- it causes people too much trouble during installs 1997-07-28 22:58:21 +00:00
ragge 23e157b82b Handle XFC instruction faults. 1997-07-28 21:48:33 +00:00
mhitch cd0f6f6375 Add the PMAZ SCSI option. 1997-07-28 21:37:38 +00:00
augustss a63034762b Audio: Remove the machine dependant code I put in audio.c by mistake.
This adds another method to audio_hw_if.  Also remove a field from
audio_hw_if that was not read-only.
1997-07-28 20:56:05 +00:00
jonathan 98d9a419f8 Add comments to pmap_copy_page() and pmap_zero_page() describing the
cache flush operations required on a virtually-indexed, physically-tagged
mips3 with no L2 cache to provide cache-coherence exceptions.

(Similar to what's needed with a virtually-indexed, virtually-tagged cache.)
1997-07-28 20:41:58 +00:00
mhitch b3724cd5cd Add disk and tape devices for a second ASC controller. 1997-07-28 19:56:36 +00:00
mhitch 32060ee91a If the IOASIC ASC SCSI driver is not doing buffered DMA, don't allocate
the buffer memory (recovers 112K of memory!).
1997-07-28 19:40:44 +00:00
is d8e09ca5ea Align some comments, so that I'll be able to track changes better. 1997-07-28 19:01:13 +00:00
mark 716c89ccb2 Include locators.h for the definition MAINBUSCF_BASE_DEFAULT.
In the probe routines check the mainbus attach args mb_iobase field
to verify that the iobase did not default as an iobase address needs
to be specifically specified.
1997-07-28 18:07:03 +00:00
mark d34422f375 In iicmatch() fail the probe if the mainbus attach args iobase is equal to
MAINBUSCF_BASE_DEFAULT as an explicit iobase must be specified.
In iicsubmatch() fail the match if the iic address locator defaulted.
1997-07-28 18:01:49 +00:00
mark 03409a1eb4 Pass MAINBUSCF_BASE_DEFAULT in the mb_iobase field if none is specified
in the locators.
In mainbusprint() only print the iobase if it is not the default.
1997-07-28 17:58:56 +00:00
mark 73d4af0688 Support a boot option asc.hostid= to allow the adapter target ID to
be set.
1997-07-28 17:56:27 +00:00
mark fc9ce1cfd8 Recognise both Icubed and Acorn versions of the EtherH netslot card as
they have different podule ID's.
Always attach the driver even if it appears to fail the tx test as there
appear to be a collection of cards around that will fail this tx test but
will actually work ok - This problem needs further investigation.
1997-07-28 17:54:07 +00:00
mark d910d89af8 Rebuilt from podules rev 1.6. 1997-07-28 17:48:45 +00:00
mark be04b11f72 Added various new podule manufacturer ID's and product ID's. 1997-07-28 17:47:53 +00:00
augustss d828d675e3 Update forgotten audio driver for changes in audio_hw_if. 1997-07-28 10:04:35 +00:00
augustss d58bc6796f audio: Simplify handling of AUDIO_SETFD and committing of encoding mode. 1997-07-27 23:51:48 +00:00
augustss 9745684ebe Changes to the sudio system:
- It is now possible to handle devices that want "looping" DMA,
    e.g. the SoundBlaster correctly.  The WSS and SB drivers use this.
    To do this several new methods were introduced in audio_hw_if.
  - Different silence handling (forced by previous change).
  - The audio driver can now be mmap()-ed, but due to problems in
    the VM system only for writing for now.
  - The OSS (Linux) audio emulation takes advantage of some of the
    new features.
1997-07-27 01:16:32 +00:00
is 3ca46d33e1 Lowering spl when doing disk I/O below splbio() isnt recommended. 1997-07-26 22:07:54 +00:00
mhitch 8e145a319b Don't rely on curproc to access the current pcb when testing for kernel
faults.  Use curpcb, which always points to the current pcb.  If curproc
was NULL when the kernel faulted, the trap handling would fault recursively
and the kernel stack would overflow.
1997-07-26 19:46:40 +00:00
scottr e083a60af2 KNF 1997-07-26 18:13:30 +00:00
drochner d900f01e01 Don't call kernel debugger on CTL-ALT-ESC hotkey if the keyboard doesn't
belong to the actual console. (ie, we have a serial console)
Closes PR port-i386/3131.
1997-07-26 12:32:24 +00:00
ragge ab4412faad Actually do 'halt' or 'reboot' on MicroVAX. 1997-07-26 10:12:40 +00:00
scottr ef8ecc05da cli_offset should be a bus_size_t now, and cli_value is an unsigned 32-bit int. 1997-07-26 08:28:20 +00:00
scottr f65445ce80 Add support for Macintosh Display Card, using information provided
by Taras Ivanenko <ivanenko@ctpa03.mit.edu> in PR 3862.  (The PR
is still open, due to an unresolved issue regarding the fbbase
field.)
1997-07-26 08:21:15 +00:00
thorpej e31d380775 New welcome banner code, modeled after NetBSD/hp300's boot program
welcome banner code.  Includes additional build information, and it
generally nicer to look at.
1997-07-26 01:50:36 +00:00
scottr 5825a3f29c Add option-{1,2,3} as an alternative to option-{,left,right} for mouse
button emulation.  From SUNAGAWA Keiki <kei_sun@ba2.so-net.or.jp> in
PR 3887.
1997-07-25 23:08:15 +00:00
ragge b17d1e7207 Fixed bug causing machines with a memory size not a multiple of 16k
to crash. This is true on many MicroVAXen.
1997-07-25 21:54:48 +00:00
jonathan f9e3ce0f92 revert to MI in_cksum code. 1997-07-25 21:01:45 +00:00
scottr 0f06fa608f Add NETATALK, and be pedantic with a few comments. 1997-07-25 19:53:59 +00:00
cgd bd3cab1531 fix comment glitch in the last change 1997-07-25 07:01:42 +00:00
cgd d86134ca68 fill in the new pointers in the bootinfo_v1 structure. 1997-07-25 07:00:42 +00:00
cgd 395f4bac6b clean up bootinfo structure comments so they're more readable (to me,
at least 8-).  Add structure offssets for structure members, so we
know how much space we're using.  Make the version in the bootinfo
structure be a u_long, so there's no implicit padding in the structure.
Add a few more pointers to the bootinfo v1 structure, which will all
be set to NULL for now.
1997-07-25 06:59:47 +00:00
thorpej 8e341ad358 If loading an Elf kernel, load the symbol table immediately after
the kernel image.
1997-07-25 00:09:01 +00:00
thorpej f65454b2a6 Set up a version 1 bootinfo for the kernel. 1997-07-25 00:07:56 +00:00
thorpej f56c3c315f More DDB support:
- Add support for software single-stepping (Alpha does not have hardware
  support for single-stepping)
- Alpha uses Elf64 symbols.
1997-07-25 00:06:25 +00:00
thorpej 08d4c7e688 Update alpha_init() prototype; takes two more args. 1997-07-25 00:04:36 +00:00
thorpej 264f1c5acc Define the bootinfo magic number and bootinfo (version 1) structure. 1997-07-25 00:03:47 +00:00
thorpej 4d01f6fbee Add some DDB glue:
- Allow BUGCHK and BPT instruction faults in kernel mode if DDB is enabled,
  since they are used to invoke the debugger.
- Add a comment about how we'd like to invoke DDB on a trap panic condition,
  in a perfect world.
1997-07-24 23:55:01 +00:00
thorpej 020d0208d7 - Two additional arguments to alpha_init(): bootinfo magic number, and
pointer to boot program's bootinfo structure.  If the bootinfo magic
  matches, save a copy of the bootinfo structure, and use it to determine
  booted kernel name, the boot flags, and the location of the kernel symbol
  table.  If the magic number does not match, revert to the old method
  of finding this information (sans symbol table info).
- Add some additonal DDB glue.
1997-07-24 23:52:10 +00:00
scottr 35884534c1 Remove HOSTED_* targets; define and use CPP and SIZE symbols, as inspired
by cgd's recent changes for the Alpha port.
1997-07-24 05:48:51 +00:00
scottr 0755be1f84 Use optimized _splraise() implementation, from mac68k/intr.h 1997-07-24 05:43:08 +00:00
is 449feee671 Fix the mess I apparently have done committing 1.52 of autoconf.c
In particular: add back the 1.50->1.51 change, and add back Amiga audio.
Thanks to Thorsten Frueauf, who pointed this out in PR 3911.
1997-07-23 10:47:12 +00:00
is 181debe530 Fix a complaint by Eric Delcamp on port-amiga... looks like Thorsten Fruehauf
didn't find all occurences of unprotected is_draco(), and I didn't look hard
enough, either, when fixing.
1997-07-23 10:19:42 +00:00
cgd cfe8f450c7 update these to use the new 'correct' names for functions/constants
in bus.h.
1997-07-23 08:05:36 +00:00
cgd 9fae9984b0 remove a couple of outdated comments (pointed out by Kenneth Stailey 1997-07-23 07:56:05 +00:00
cgd 28b1691f4d when i was documenting the bus_space interfaces (the document
was sent to developers, but will eventually become a man page or
something), i noticed a few in various names:
(1) _map and _alloc should take a flags argument, rather than a
    'cacheable' boolean.
(2) BUS_BARRIER_* flags should be BUS_SPACE_BARRIER_*.
(3) bus_space_copy_* should be bus_space_copy_region_* for consistency
    with other region ops.
Fix all of these (in a backward-compatible way, at least for now).  Redefine
internal usees of those names to use the new names.  Also, while at it,
clean up the copy functions (remove unnecessary variables) and make sure
that they and other functions conform to the spec.
1997-07-23 07:47:51 +00:00
scottr ef7df42303 Since spltty() will not lower the spl, only raise it, we need to
use splx() to undo the effect of the splzs() in zstty_softint().
1997-07-23 07:20:01 +00:00
scottr 3518ffabce The PA of the framebuffer may not be page aligned, so make sure to
do this before comparing against the result of pmap_extract().
1997-07-23 07:17:52 +00:00
cgd 391589011c note differences in symbol names between ports (underscores). Also,
don't assume that the names/values to be put into defines in assym.h
start with the first .ascii in the assembler file; look for the array
start symbol, instead.
1997-07-23 07:06:59 +00:00
scottr c2362b1d29 Remove unused option MAPMEM, as suggested by Erik Bertelsen
<erik@erik-be.uni-c.dk> in PR 3896.  Also, revert to MRG_ADB
(for now), disable NETATALK, and remove unused drivers.
1997-07-23 06:42:40 +00:00
scottr 1a5689c4af Remove unused option MAPMEM, as suggested by Erik Bertelsen
<erik@erik-be.uni-c.dk> in PR 3896.
1997-07-23 06:36:59 +00:00
scottr ec622ce63c GC unused MMSEG definition, from Erik Bertelsen <erik@erik-be.uni-c.dk>.
Closes PR 3898.
1997-07-23 06:33:53 +00:00
scottr 257d26f174 New implementation of _splraise(): use word-length operands where possible
by implementing entirely in assembly.  This saves some 6 bytes on all MPUs,
and about 8 cycles on the 030.

Now that it's optimized, define spltty() in terms of _splraise() so that
we don't inadvertantly lower the SPL.
1997-07-23 06:24:33 +00:00
cgd 306cb0bd7e clean up RCS id. also, use __RCSID rather than __KERNEL_RCSID, since
this file isn't actually compiled into the kernel.
1997-07-23 06:23:14 +00:00
cgd ee60040e78 clean up rcs id 1997-07-23 06:21:57 +00:00
jonathan 83ebfc3545 Unroll pmap_copy_page() and pmap_zero_page() inlined loops even further. 1997-07-23 05:41:17 +00:00
jonathan b1032ac9db Substitute Mach 3.0 MK84 mips kernel bcopy() for Sprite bcopy().
Has unrolled loop for aligned-to-aligned copy.

Notes:
  1. this code tuned for DEC 5000/200.  ioasic decstations do more unaligned
     copies.  Better than old non-unrolled loop, but could be improved.

  2. Undoes changes made for MIPS3 with comment implying an r4000 TLB bug.
     We can't reproduce this on 5000/150 (jonathan) or 5000/50 (mhitch).
     Calls to previous  bcopy with a bad address show similar symptoms,
     reporting a trap in bcopy() after bcopy() has returned.  Same thing??
     Needs re-checking on an r4000 with no L2 cache.
1997-07-23 05:36:40 +00:00
kleink 97db364868 a2kbbc_match(): check unit explicitly against 0. Minor KNF. 1997-07-22 23:12:13 +00:00
pk 5a47438604 Add some missing entries. Make SINTR_VME()/SINTR_SBUS() more useful. 1997-07-22 20:19:10 +00:00
jonathan 7d9e8102ad Use new <dev/dec/clockvar.h> and and <dev/dec/mcclokvar.h>.
Garbage-collect original headers from sys/arch/alpha.
1997-07-22 18:50:52 +00:00
phil b6a75eabb2 Add "#file-system UNION" as per PR 1032. (Should mvme68k have a
GENERIC conf file with "everything?")
1997-07-22 18:49:21 +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
kleink ac7da90b83 Remove old *_UNK style default defines, use standard names from locators.h.
Missed in "locators.h" cleanup; reported by Thorsten Frueauf in PR 3906.
1997-07-22 15:20:20 +00:00
is b3567b75c3 Fix PR 3907 by Thorsten Frueauf, using his first method. 1997-07-22 15:03:22 +00:00
mark c025aad597 Implement __indr_reference macro. 1997-07-22 14:35:22 +00:00
jonathan c5be7fca38 NEWCONF was prototype ``new config'' pmax kernel config file. Now obsolete. 1997-07-22 08:54:40 +00:00
jonathan 3234955c06 Identical to NFSINSTALL, bar comments. 1997-07-22 08:49:56 +00:00
jonathan e8414333ac Merge NFSROOT and NFSINSTALL. 1997-07-22 08:49:11 +00:00
jonathan 787738a4f7 Move sys/dev/tc/mcclockvar.h -> sys/dev/dec/mcclockvar.h.
Update pmax clock code.
1997-07-22 07:51:33 +00:00
jonathan a6c118666a Fix for chains containing interior mbufs with odd length. 1997-07-22 07:36:18 +00:00
jonathan 8da32cee34 Include /sys/dev/dec/clockvar.h. Garbage-collect tc/clockvar.h. 1997-07-22 04:49:58 +00:00
jonathan 064c4e515c Create sys/dev/dec and cleanup sys/dev/tc:
* Move clockvar.h (header file for generic clock code) to sys/dev/dec.
* Move if_le_dec.c with DEC padded LANCE-dma (pmax/pmax, ioasic, vax 3400)
  to sys/dev/dec.  Remove from sys/dev/tc.
* Declare attribute le_dec_subr in /sys/dev/dec/files.dec,
  use if_le_dec.c when it's defined.
* Move  IOCTL asic declaration from pmax and Alpha MD machine
  files to sys/dev/tc/files.tc.
* move TurboChannel and ioasic if_le attachments from pmax and Alpha machine
  config files to /sys/dev/tc/files.tc.  Add le_dec_subr attribute.
* Add if_le_dec attribute to if_le_ibus (pmax ds3100 pmax) LANCE attachment.
1997-07-22 04:32:13 +00:00
drochner 1a0708ed1d -Print debug messages to stderr instead of stdout to avoid mix with
warn() output.
-Try to rename an existing "/boot" before writing a new one. This allows
 to restore the old boot if an error occurs later.
1997-07-21 18:04:35 +00:00
jonathan 4631885e91 Kill __BROKEN_INDIRECT_CONFIG on pmax.
Based on a patch from Chris G. Demetriou, December 1996.
1997-07-21 05:39:02 +00:00
jonathan 592eeb7378 mips-tuned bcopy from Jon Kay (UCSD) released under BSD copyright,
with standard BSD in_cksum() interface by Jonathan Stone.
1997-07-20 22:42:33 +00:00
jonathan f43c13bff4 Add ddb to mips/conf/files.mips. Garbage-collect mdb. 1997-07-20 20:48:40 +00:00
jonathan 5ba85a4cf8 Kernel profiling. Don't profile the following:
sigcode():
      executed from user-space stack.

  mips1_cpu_switch_resume, mips3_cpu_switch_resume:
      arguments passed in via v0, t0, t1 (outlined from cpu_switch())

  mips3_VCED(), mips3_VCEI():
      called from exception-vector code without any register save,
      $at, $ra are live.
1997-07-20 19:48:03 +00:00
jonathan 01794f87e3 Conditionalize mips1-speciifc locore code on #ifdef MIPS1 1997-07-20 19:40:19 +00:00