Commit Graph

13058 Commits

Author SHA1 Message Date
drochner 610abce93b Copy data passed by the boot loader into an array "bootinfo".
The former "cyloffset" argument is used as an (indirect) pointer to the
information structures. "cyloffset" has always been set to zero in the
past, so this should be save to do.
1997-09-20 14:01:26 +00:00
drochner 968f26b9d3 -define a buffer for information passed by the bootloader
-add a function ("lookup_bootinfo") to extract data
-use passed console information, if present, for console attachment
-arrange definitions for console and KGDB device a bit nicer
1997-09-20 12:51:13 +00:00
drochner b8a47d06da Define "machdep.booted_kernel" for sysctl. 1997-09-20 12:40:25 +00:00
drochner c03122fcb1 In some future (ie, without COMPAT_OLDBOOT), we don't want to bother
with the disk type (IDE or SCSI) here - the BIOS doesn't do it either.
Set "#ifdef"s accordingly.
1997-09-20 12:36:05 +00:00
drochner dc0b04e0ad Note use of common menu functions and new framework for argument passing
to the kernel.
1997-09-20 12:28:21 +00:00
drochner 041680f614 don't forget to save the partition number for the kernel 1997-09-20 12:17:41 +00:00
drochner 9b4679d869 -Don't pass hardware address, it is not of much use for the kernel.
-define "addr" differently for ISA and PCI devices - for PCI, it is
 (bus,device,function) now, in the format used by the PCI BIOS
1997-09-20 12:13:01 +00:00
leo 1e11bfa8b7 Move the definition of MSGBUFSIZE up to the machine-arch level if
possible. Pointed out by Bernd Ernesti.
1997-09-20 12:12:24 +00:00
leo 2b138578d7 Correct for the extra member in 'struct kern_msgbuf' when calculating
the number of bytes we want to allocate.
1997-09-20 12:10:09 +00:00
drochner 1d47009a08 Use <machine/bootinfo.h> for definitions shared with the kernel. 1997-09-20 12:10:06 +00:00
leo ef6f3f7e25 Move the definition of MSGBUFSIZE up to the machine-arch level if
possible. Pointed out by Bernd Ernesti.
1997-09-20 12:08:24 +00:00
drochner 17b42ff68d Data structures passed from the boot loader to the kernel. 1997-09-20 12:08:21 +00:00
leo c5ba7a3102 Move the definition of MSGBUFSIZE up to the machine-arch level if
possible. Pointed out by Bernd Ernesti.
1997-09-20 12:06:37 +00:00
mjacob 185cbcebd0 An oops- MSS3 referred to a device not yet integrated. 1997-09-19 22:03:59 +00:00
mjacob 4de790f125 Add in a clause ifdef'd for LIMITMEM- limit usage of memory to a certain
amount. Temporary until more drivers use busdma stuff.

Also correct to unsigned the printing out of memory sizes.
1997-09-19 22:00:34 +00:00
mjacob 206b183a48 Add a config file for large memory 8200s- this is temporary until a
more gracious self correcting (for large memory, e.g., > 1GB) startup happens.
1997-09-19 21:58:47 +00:00
mjacob 0fb787aedb Add missing reference. 1997-09-19 14:48:59 +00:00
mjacob f3d890d1c9 missing cast. 1997-09-19 14:47:33 +00:00
leo d4713d24c2 Implement the kernel part of pr-1891. This allows for a more flexible sized
msgbuf. Note that old 'dmesg' and 'syslogd' binaries will continue running,
though old 'dmesg' binaries will output a few bytes of junk at the start of
the buffer, and will miss a few bytes at the end of the buffer.
1997-09-19 13:52:37 +00:00
mhitch 24cbd68d21 Enable the 800x600 Super72 display mode in the generic kernel. 1997-09-19 03:30:41 +00:00
mhitch a07bb333b1 Add an 800x600 Super72 mode; started by Neil Clark and finished by me.
NOTE: due to hardware requirement of the AGA chipset, the framebuffer width
has to be a multiple of 64 bits.  An 800x600 display will use a memory width
of 832 bits, which the current X server can't handle.  To get a usable
display, the width needs to be 832 or 768.
1997-09-19 03:27:10 +00:00
thorpej 618f6b9541 Make IDE work again, from Ross Harvey <ross@teraflop.com>. 1997-09-19 00:59:38 +00:00
jeremy f5c0dfebd6 Use ${CC} instead of cc and don't explicitly set AR and LD unless they are
unset.
1997-09-18 22:55:56 +00:00
pk bb3e7cdb98 Fix viking/MXCC botch similar to pmap.c. 1997-09-18 20:44:43 +00:00
pk ef73834bdc Check for the `VIKING_PCR_TC' being set, just in case. If it isn't set,
delay the use of the `CPUFLG_CACHEPAGETABLES' flag.
1997-09-18 20:29:15 +00:00
pk eac8e745a7 Add a function to stop sun4m counters and call it early during
auto-configuration.
1997-09-18 20:25:34 +00:00
pk 9d1afc6f01 Fix a botch in reservemon4m() causing the `Alternate cacheability' not being
set on viking MXCC machines while using transparent memory access mode. This
becomes apparent when booting on multi-processor viking machines.

While I'm here, arrange to tempt fate a little less by using `AC' mode
for the shortest possible periods of time.

Special thanks to Matt Ragan for running my test kernels.
1997-09-18 20:16:45 +00:00
mhitch c95e55b9ec Read the received data register before clearing the RBF interrupt. Clearing
RBF appears to also clear the OVRUN bit in the receive data, resulting in
the loss of of overflow status.
1997-09-18 03:53:12 +00:00
mhitch 0d05b5c280 Use the buffer length passed as a parameter to vmapbuf() and vunmapbuf()
instead of bp->b_bcount.  The I/O operation may have changed bp->b_bcount,
and not all of the kernel virtual memory will be freed.  This will result
in the VM system putting pages back on the free list which are still
mapped.   This may cause a deadlock later trying to enter pages into
the kernel pmap.  [See PR#4120 for more details.]
1997-09-18 03:38:31 +00:00
gwr 8b680f206c Need to flush the I-cache before jumping into just-loaded code.
Without this, boot programs fail with some PROM versions...
1997-09-18 01:47:08 +00:00
mjacob 9ce899230a After decommisioning a mapping, an IMB kinda needs to happen. 1997-09-18 01:08:56 +00:00
thorpej cd69e27594 Prototype alpha_implver(), and fix a think-o in a previous commit. 1997-09-17 23:33:28 +00:00
thorpej b806d39316 Implement a stub for the "implver" instruction, which returns the
implementation version of the processor.
1997-09-17 23:32:14 +00:00
drochner 8b0c39d09e The additional linefeed appeared again... kill it. 1997-09-17 19:39:37 +00:00
drochner a577f67769 Use common menu / parse functions.
Adapt to new console / exec_netbsd arguments.
1997-09-17 18:52:41 +00:00
drochner a1fc367b4b Cleanup for new libsa/bootp.c (unused global variables).
Do the vararg stuff right.
Remove the useless "no_bootp" variable.
1997-09-17 18:50:24 +00:00
drochner 5a1b04beab Put bootfile name into "bootfile" before network initialization, for
use by BOOTP.
Put name of bootfile into "bootinfo" structure.
1997-09-17 18:47:13 +00:00
drochner d9641ea06f Use common menu / parsing functions.
Adapt to new console / exec_netbsd arguments.
1997-09-17 18:44:15 +00:00
drochner 23d58b46d3 Put name of booted file into a "bootinfo" structure.
(not for DOS files for now, we don't know the absolute path)
1997-09-17 18:40:33 +00:00
drochner 38b36ed152 -Use shared menu / parsing functions.
-Adapt to changed console and exec_netbsd arguments.
-Turn private "cd"-like behaviour into a regular command.
1997-09-17 18:37:58 +00:00
drochner 1d521976af Put name of booted file into a "bootinfo" structure. 1997-09-17 18:32:50 +00:00
drochner 0c825594ef Function to collect geometry and partitioning information about the
BIOS-known disks in a "bootinfo" structure (still experimental).
1997-09-17 18:30:51 +00:00
drochner c65435feb3 "document" serial console support 1997-09-17 18:28:50 +00:00
drochner a8c2622575 Collect information in a "bootinfo" structure. 1997-09-17 18:21:40 +00:00
drochner c2095ccd48 Remove old SERIAL support, it will be done at a higher level now. 1997-09-17 18:10:51 +00:00
drochner 2fba0a4db7 Convert DOS error numbers into UNIX errno values. 1997-09-17 18:09:04 +00:00
drochner 4162c9025a Do the vararg stuff cleanly.
Collect disk information in a "bootinfo" structure.
1997-09-17 18:08:13 +00:00
drochner 0851ea1331 Add now common menu / parsing functions.
Adapt to new console I/O functionality.
Update exec() arguments.
1997-09-17 18:04:21 +00:00
drochner 83ce8d9ef8 Use the "bootinfo" defined structures to collect information about boot
device/file and console setting, remove the old, limited, "xbootinfo".
Fix a printf() format warning in debug code.
1997-09-17 18:02:11 +00:00
drochner f93967e407 add new files 1997-09-17 17:51:12 +00:00
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