Commit Graph

13058 Commits

Author SHA1 Message Date
jtc 4229acf79d Fix tipo inherited from old version of TNF copyright template. 1997-10-09 08:37:20 +00:00
jtc da7890c526 Fix tipo inherited from old version of TNF copyright template. 1997-10-09 08:31:58 +00:00
jtc 324ce8d6cb Fix tipo inherited from old version of TNF copyright template. 1997-10-09 07:37:50 +00:00
jtc c8f77c0b8b Fix tipo inherited from old version of TNF copyright template. 1997-10-09 07:25:45 +00:00
enami 6705728ce7 Make sure that vs.color is always initialized. Fix PR#2510.
- separate initialization code in sput() into new function pcinit().
- call pcinit() in both sput() and pcattach() if (crtat == 0).
1997-10-09 02:05:01 +00:00
briggs 4839f9406b Clear interrupts properly on the Radius PrecisionColor 8.
Thanks for the info go to Andrew MacGibbon <andrew-m@cs.auckland.ac.nz>
1997-10-09 01:25:52 +00:00
briggs 4220edeca5 Probe for the SONIC before saying that we found it. Some early Centris
models (low-end) shipped without ethernet installed.
1997-10-09 00:08:00 +00:00
thorpej e3834cc351 Implement DIOCGDEFLABEL. 1997-10-08 23:37:50 +00:00
thorpej dd3663cdfb Fix a typo. 1997-10-08 23:28:01 +00:00
thorpej 5e05593163 Implement DIOCGDEFLABEL. 1997-10-08 23:23:13 +00:00
thorpej f77f4e6084 The MIPS toolchain generates ELF. Don't pretend like it generates a.out
by renaming "netbsd" to "netbsd.elf", and then creating an a.out image
called "netbsd".

Instead, create _both_ ECOFF and a.out versions of the kernels, named
"netbsd.ecoff" and "netbsd.aout" respectively, and drop the ".elf"
from the ELF kernel.

(And, with any luck, the a.out hack will go away completely Very Soon.)
1997-10-08 21:26:16 +00:00
briggs 9c8e4f24b0 Disable video interrupts on the AV machines. Thanks to Michael R. Zucca
(mrz5149@cs.rit.edu) for the addresses and hints as to how the interrupts
might be disabled, and thanks to Henry Hotz (h.b.hotz@jpl.nasa.gov) for
testing on the 840AV.
Unmap the DAFB regs on the other Quadras after attachment.  They're not
used.
1997-10-08 19:54:04 +00:00
oki fc752db7e8 Use _ASM_LABEL. 1997-10-08 16:02:04 +00:00
mycroft 4d36fbdfa1 Clump USER_LDT with other CPU-related options. 1997-10-08 10:09:36 +00:00
mycroft a9f50348ae Update comments regarding BIOSEXTMEM (now REALEXTMEM), and add REALBASEMEM. 1997-10-08 09:32:36 +00:00
mycroft 63c9e725bb Deprecate BIOSBASEMEM and BIOSEXTMEM, with an #error telling people to try the
latest version of the boot block first.  Add REALBASEMEM and REALEXTMEM, in case
they really are needed.
1997-10-08 09:23:04 +00:00
jonathan ac262c0c2f Allow mips3 ECOFF binaries if running on a mips3 CPU. 1997-10-08 07:36:58 +00:00
gwr 38b2ba3e3f typo 1997-10-07 20:05:00 +00:00
is 37fce9c90f Oops, forgot to commit this when doing the recent 060SP Makefile change. 1997-10-07 19:26:11 +00:00
is e183d29c61 Oops, I forgot this when doing the recent 060sp make system change. 1997-10-07 19:23:37 +00:00
gwr d0febbb62c Be sure to kmem_free_wakeup() the same range of address space we
got from kmem_alloc_wait() earlier.  Thanks to Michael L. Hitch
and Scott Reynolds.  (Fixes the sun3/sun3x part of PR#4120.)
1997-10-07 18:28:55 +00:00
gwr c9d8d6ae1d Use sizeof(struct ieob) instead of a sun3-specific macro,
so this driver will work on the sun3x as well.  (Works!)
1997-10-07 18:17:19 +00:00
gwr 2240a5aa56 typo 1997-10-07 18:00:18 +00:00
gwr b298a0b98c fix warnings 1997-10-07 17:56:30 +00:00
gwr 35cfb77c2f Sync with GENERIC 1997-10-07 17:50:50 +00:00
gwr 8e46a17c49 cosmetic 1997-10-07 17:49:26 +00:00
gwr 0a6d195bf0 Add the ie driver (and reorder some things) 1997-10-07 17:08:35 +00:00
gwr 0d541b4c08 Add dvma_malloc() for the ie driver. 1997-10-07 16:51:47 +00:00
gwr 5e10630004 Add stuff for the ie driver 1997-10-07 16:10:25 +00:00
augustss 4a72d59d77 Add GUS PnP card to GENERIC. 1997-10-07 10:39:56 +00:00
drochner 4741e294cf Supress error message if ENXIO is returned by "open" of disk partition
while "findroot()". This happens if a disk without BSD partition is
present, or if the partition does not exist in the disklabel - normal
operation, not worth reporting. (Split out a part to keep indentation
level limited.)
Allow to set "nfs_boot_rfc951" by a conditional to make bootp easier
to use.
1997-10-07 09:54:16 +00:00
scottr 9c7f82f7b8 The annoying message about trusting ourselves to write the PRAM should
really be dependent on DEBUG, not DIAGNOSTIC.  While we're here, add
a couple of DEBUG messages to mac68k_calibrate_delay(), and wrap them
all appropriately so that the messages aren't enabled unless we
specifically ask for them (by setting clock_debug).
1997-10-07 03:04:55 +00:00
gwr 076ab3f536 Tweak the console support a little (more like the sparc version). 1997-10-06 21:04:21 +00:00
thorpej 0c368b5f67 Initialize the kernel message buffer earlier (before main() is called). 1997-10-06 20:38:46 +00:00
gwr a5e95ba86d Move some of the VM initialization work from _startup.c to pmap.c
where it is normally found.
1997-10-06 20:04:02 +00:00
gwr 210e726aba Use vm_offset_t to represent control space addresses, because
they are more like physical addresses in that you can not just
dereference a pointer to access the space.  (Also, if you use a
pointer type for such things, gdb will _try_ to deference it.)
1997-10-06 19:58:01 +00:00
gwr c01d3eb597 Flush the I-cache before jumping into just-loaded code. 1997-10-06 19:43:23 +00:00
gwr 81bc13db4b Need to flush the I-cache before jumping into just-loaded code.
Without this, boot programs fail with some PROM versions...
1997-10-06 19:37:26 +00:00
mark 6a8334e84e Change p_vmspace->pmap references to p_vmspace->vm_map.pmap so that
we no longer need __VM_PMAP_HACK.
1997-10-06 01:12:05 +00:00
mark ac03dfe307 Change p_vmspace->pmap references to p_vmspace->vm_map.pmap so that
we no longer need __VM_PMAP_HACK.
1997-10-06 01:12:03 +00:00
mark 7483a0a6ba Change p_vmspace->pmap references to p_vmspace->vm_map.pmap so that
we no longer need __VM_PMAP_HACK.
1997-10-06 01:12:01 +00:00
mark c4ca3a48de Changed VM_PMAP reference now that is is a pointer rather than an address. 1997-10-06 00:49:34 +00:00
mark 623bc2b574 Change vm_pmap reference to vm_map.pmap now we have dropped __VM_PMAP_HACK. 1997-10-06 00:47:34 +00:00
mark 84e72a4ba0 Removed __VM_PMAP_HACK
Added a couple of reserved field to the pmap structure.
1997-10-05 22:59:36 +00:00
mark 9461d08a78 Define a new sysarch call number ARM32_DRAIN_WRITEBUF that can be used
to drain any CPU write buffer.
1997-10-05 22:58:26 +00:00
mark 3b844ee813 Cleaned out some old junk.
Enabled .type directive in the ENTRY() macro.
1997-10-05 22:51:05 +00:00
mark 9752ea1553 Define the new format of a setjmp buffer.
Define macros for the magic numbers and for the various field.
1997-10-05 22:48:19 +00:00
jonathan 1203ea77f9 GNU ld script for linking standalone MIPS code (e.g., bootblocks). 1997-10-05 22:17:56 +00:00
gwr ede5144deb read regs in the right order 1997-10-05 21:00:12 +00:00
gwr 39bf0bf971 normalize include order 1997-10-05 20:59:02 +00:00
gwr d07537bd72 Do kernel core header initialization a little differently. 1997-10-05 20:53:41 +00:00
gwr c669b1bdeb Do the cpu_kcore_hdr initialization a little differently.
(also fix - was not setting pg_frame, pg_valid)
1997-10-05 20:43:27 +00:00
gwr 00fe95a86e sync with sun3 1997-10-05 20:39:17 +00:00
gwr f0f6b5ab35 cosmetic 1997-10-05 20:37:56 +00:00
thorpej 616e0b7e33 Copyright assigned to The NetBSD Foundation. 1997-10-05 18:26:38 +00:00
thorpej 3b4ad2b60e Copyright assigned to The NetBSD Foundation. 1997-10-05 18:15:51 +00:00
veego d39db07047 Update the 'depend on CPU configuration' section for the new or updated
ncr53c9x frontends.
1997-10-05 17:19:35 +00:00
veego b59e0fd6a7 Unused files after the sfas driver is replaced by the MI ncr53c9x driver. 1997-10-05 17:12:44 +00:00
carrel 6d72f0f99f Recognize sunos binaries 1997-10-05 02:15:48 +00:00
carrel 3f5b21562b Add missing definition needed for COMPAT_SUNOS 1997-10-05 02:12:52 +00:00
carrel cb48a4a7e4 Bring sunos compat files in when COMPAT_SUNOS defined 1997-10-05 02:11:21 +00:00
thorpej 66a1783103 Fix some license confusion. 1997-10-04 22:32:26 +00:00
gwr 6b27a0d34f Make cpu_reboot un-blank the screen (cnpollc(1)).
Validate space in page zero for the kcore header.
1997-10-04 20:03:46 +00:00
gwr 0ec1cda62f Move the call to cninit() up a level (easier to find). 1997-10-04 19:46:17 +00:00
gwr e53d676a1d Move dumppage initialization from sun3_startup.c to machdep.c
(so it can be a normal kmem_alloc)
1997-10-04 19:39:22 +00:00
thorpej 030188061e Copyright assigned to The NetBSD Foundation. 1997-10-04 17:36:56 +00:00
thorpej 0e22d3b5a3 Copyright assigned to The NetBSD Foundation. 1997-10-04 17:34:08 +00:00
thorpej 608283bedd Copyright assigned to The NetBSD Foundation. 1997-10-04 17:22:49 +00:00
gwr bb2d22bde0 use common genassym.awk 1997-10-04 17:21:23 +00:00
thorpej 9e6a3b705f Copyright assigned to The NetBSD Foundation. 1997-10-04 17:20:15 +00:00
gwr c63931a407 use common genassym.awk 1997-10-04 17:14:07 +00:00
thorpej bb0b21705d Copyright assigned to The NetBSD Foundation. 1997-10-04 17:03:09 +00:00
gwr 0554a69f18 more comments 1997-10-04 16:56:49 +00:00
thorpej 2d397943d4 Copyright assigned to The NetBSD Foundation. 1997-10-04 09:59:35 +00:00
thorpej 92a347c574 Copyright assigned to The NetBSD Foundation. 1997-10-04 09:38:47 +00:00
mhitch 66e9e9018c Replace Fastlane and Blizzard SCSI driver frontends, using the machine
independent ncr53c9x driver.  Add 12x0-IV support to the 1230 driver, and
add Cyberstorm SCSI I and II drivers.
1997-10-04 04:01:17 +00:00
mhitch 3d83dee874 Use a global variable to hold the current speed of the internal serial port.
This will be used by certain SCSI drivers to limit the length of DMA transfers
when the serial port is running at higher speeds.  GVP and Phase5 DMA
interfers significantly with CPU execution, and significantly increases
receive buffer overruns (silo overflow).  Reducing the DMA transfer length
can reduce the overruns.
1997-10-04 03:59:36 +00:00
gwr 9d9695813b Declare kbd_docmd() 1997-10-03 23:08:08 +00:00
lukem 7d508b124f define SIZE?=size, and use ${SIZE} instead of size. makes cross
compilation easier
1997-10-03 07:17:00 +00:00
gwr 167d06be57 Increase MSGBUFOFF to 512 so we can be sure there is room for a
kernel core header before the message buffer.
1997-10-03 02:16:15 +00:00
briggs 407e2e622f port-mac68k/4158: current kernel doesn't recognize some adb devices.
Patch applied.  Thanks to SUNAGAWA Keiki for the change-request.
1997-10-02 15:12:49 +00:00
briggs 13ceb16786 port-mac68k/4175: Need to add support for 33 MHz LC475/Q605.
Fix applied.  Thanks to David Johnston for the PR and the reminder.
1997-10-02 13:31:13 +00:00
christos 0c2a9deb8f Oops, missed a space in previous formatting change. 1997-10-02 04:23:09 +00:00
gwr 3c0178f33d Make msgbuf stay in page zero 1997-10-02 01:15:04 +00:00
gwr a3cc0968d7 Fix MSGBUFSIZE 1997-10-02 01:12:09 +00:00
drochner f596be4ec4 Fix the problem described in PR port-i386/4177: scroll lock could cause
tsleep() to be called from an interrupt handler.
The semantics of the scroll-lock key is changed now: it issues a ^S or
^Q, depending on the current state. (It should probably issue
tp->t_cc[VSTOP] or tp->t_cc[VSTART] instead, but this would require more
serious structural changes because there is not always a tty context
present.)
The "scroll lock" LED is now controlled by pcstart()/pcstop(), so it
will show the real state even if the start/stop characters are remapped
or the normal ^S/^Q are used.
1997-10-01 20:48:59 +00:00
pk feaaceb801 Missing `#ifdef SUN4M' in pmap_release(); rearrange slightly to look
more natural.
1997-10-01 19:21:17 +00:00
drochner e125082627 adapt to changed device names 1997-10-01 18:13:19 +00:00
kleink 6eb0c3077a Remove duplicate inclusion of <sys/device.h>. 1997-10-01 16:28:22 +00:00
fvdl d786742d91 Provide workaround (by Charles Hannum) for error in register allocation that
could occur in bus_space_write_multi*
1997-10-01 08:25:15 +00:00
christos 7f41ec0345 PR/4162: Chris Jones: make cleandir does not work properly; it does not
remove the object files and the .depend file in the kernel build directory.
1997-09-30 22:50:53 +00:00
christos 3996b53189 PR/4162: Chris Jones: make cleandir does not work properly; it does not
remove the object files and the .depend file in the kernel build directory.
1997-09-30 22:39:49 +00:00
mycroft 640405d50f Only use a subregion if the region we got was of length 8. 1997-09-30 22:10:59 +00:00
christos 90ac749fae PR/4162: Chris Jones: make cleandir does not work properly; it does not
remove the object files and the .depend file in the kernel build directory.
1997-09-30 22:10:32 +00:00
is 3f894ade50 - only convert real hex constants to 0x form, not $NetBSD...
- protect comment lines from future uses of CPP by putting a | in front
1997-09-30 21:47:22 +00:00
christos 52f4c73570 PR/4189: Matthias Scheler: pccons doesn't compile if national keyboard map
is used
1997-09-30 16:23:21 +00:00
is 81fb4c961d Forgot to remove this yesterday... this was renamed to netbsd060sp.S. 1997-09-29 22:28:14 +00:00
is ac8e08ea4a When changing btst #7,_machineid+3 to cmpl #CPU_68060,_cputype, I forgot to
reverse the conditional branches. "We apologize for the inconvenience."
1997-09-29 20:52:05 +00:00
perry ce92768d58 add ext2fs support to boot floppy. 1997-09-29 15:42:14 +00:00
is d5e867bb03 Build the 68060 support package in the kernel build dir.
XXX PCB_ONFAULT is still hardwired to 64 in netbsd060sp.S.
1997-09-28 20:49:56 +00:00
drochner 6969cb676f Pass new boot information per default. 1997-09-28 13:31:45 +00:00
drochner 22869434f2 Bring the new root disk algorithm into shape (minor cleanup, clarify
error message) and enable it.
1997-09-28 13:17:41 +00:00
is 8e9fc838dc In the OS glue code for the 060SP, replace the copyin()/copyout() glue by
movs.
XXX As our CPP seems to hate the 060SP, I couldn't use assym.h for the
PCB_ONFAULT definition, but had to hardwire 64 in the code. This needs
to  be fixed ASAP, and will be done in the upcoming reorganization of
the 060sp Makefiles.
1997-09-28 12:57:57 +00:00
drochner 4de13c78d3 Use the "proginstall" rule from <bsd.prog.mk> to get the UPDATE
behaviour right.
1997-09-28 11:47:29 +00:00
scw d2cd21c0ef Fixed typo. in FPU_68882 entry for MVME147 1997-09-28 11:29:48 +00:00
is 3ad599d701 First part of splitting lpt.c, and the NetBSD/Amiga "supio" frontend. Needs
a bit more work to allow an ISA frontend.
1997-09-27 22:44:11 +00:00
pk da4ac7ec5a GC setpte*() declarations. 1997-09-27 18:04:47 +00:00
pk 450cdbdaab Move the "unimplemented software trap" message within `#ifdef DIAGNOSTIC'
and use uprintf() for the notification.
1997-09-27 18:03:39 +00:00
pk 70ca0fdc80 Move the per-processor counter register into cpuinfo. 1997-09-27 18:01:30 +00:00
pk d0b1ee0833 * Optimize pmap_{zero,copy}_page4m() a bit by pre-computing the PTE addresses
of the reserved KVAs (vpage[]) used by these routines. This avoids the
  context switching in there.

* In pmap_redzone(), remove the first kernel address (at KERNBASE) from
  the kernel maps instead of just turning off the PTE `valid' bits.
  The latter doesn't create a "red zone" at all, but causes the VM to
  allocate a new page if the red zone is touched.
1997-09-27 17:58:03 +00:00
pk 7482ebb584 Insert a hack to allocate IOMMU addresses congruent to the kernel virtual
address that being DVMAed to.
1997-09-27 17:49:33 +00:00
veego 8a3aef8a1a Wait for a keypress after the system is halted and reboot after a key is
pressed.
1997-09-27 17:19:38 +00:00
is 663ab6e406 Most of _machineid->cputype. 1997-09-27 15:52:54 +00:00
drochner e8e12f56dc Don't use "termios" constants if no "com" devices are configured.
Closes PR port-i386/4166 (Chris Jones).
1997-09-27 10:55:48 +00:00
is b0f51853ef conf.h: declare com instead of drcom.
conf.c: remove com declarations.
1997-09-27 10:38:10 +00:00
mrg fa6b4a3a7b add (commented) options BLINK, per PR#4075. 1997-09-27 09:56:25 +00:00
pk f338821834 Do not set CPUFLG_CACHEPAGETABLES inappropriately on microsparcs 1997-09-26 22:17:23 +00:00
pk 665c7aa080 * Implement a private page table storage allocator for SRMMUs. It provides
uncached (if needed) chunks of memory of the two sizes (256 and 1024
  bytes) that the SRMMU ever needs.

* Change pmap_changeprot4m() so that is does not rely setpte4m() because
  setpte4m() cannot be used for anything other than VAs that are in the
  pmap associated with the current context.
  In the same vain, make sure that kvm_uncache() switches to context 0.
1997-09-26 22:15:37 +00:00
briggs a611bcde84 Add another Dayna card to the Apple-compa. list.
Define a constant for the SuperMac Spectrum/24 series III display card.
Thanks go to  Luca Falzoni <falzoni@jetai.unipv.it> for trying out the
code for the Dayna ethernet support.
1997-09-26 00:37:05 +00:00
fair 40f6f7e831 Make the #ifdef expression prior to the declaration and use of
"nptesg" match each other, per PR#4024.
1997-09-25 07:31:28 +00:00
thorpej d65a5e7fd2 Enter DDB on cntl-alt-esc (a'la i386). 1997-09-25 02:42:47 +00:00
thorpej ef86b9a61d Fix a small oversight in last change. 1997-09-25 02:13:44 +00:00
thorpej 0c2efd7025 Add a "scrollskip" member to wscons_emulfuncs (XXX even though it's not
a function) which specifies how many lines will be skipped when scrolling
up when the bottom of the screen is reached.  Dumb framebuffers skip 10
lines (as before) because the copies are s ... l ... o ... w, but it's
silly to skip 10 lines on VGA, since the copies are much faster, so we
only skip one in that case.
1997-09-25 01:31:53 +00:00
is 4fbbe844dc Locore.s cleanup round 1:
- MIT syntax to Motorola syntax moveml register lists (for better readability)
- comment alignment
- remove commented out debug or alternate code from early DraCo support
  development.
(I wanted to do this stuff for a long time, but always had "more important"
things to do.)
1997-09-24 19:49:08 +00:00
mhitch 56c4befa83 Add an entry for the bus_space_tag in the TC attach argument tables. Fixes
PR #4100.
1997-09-24 02:45:12 +00:00
mhitch 9769ae9148 Fix error in msgbuf change: add missing '&&'. 1997-09-24 02:20:56 +00:00
mhitch 5bcefb5bc6 Fix another missed *setregs() change. 1997-09-24 02:15:51 +00:00
mjacob 42c325e139 A minor barely acceptable hack to handle having a kernel boot on a system
with large amounts of memory and not spew. This doesn't really replace
fixing this problem better later, but it works for now. Basically, if memory
is greater than 128MB, start upping the sizes of some maps.
1997-09-23 23:23:23 +00:00
mjacob b23bbbb05c Redo the platform specific identification and initialization, making
it more explicit where platform specific functions (like machine check
handling) should go.
1997-09-23 23:15:42 +00:00
thorpej 0bd1685aa0 In device_register(), don't check PCI is PCI support isn't configured
into the kernel.

Also, some formatting changes to make new root finding code more KNF'ish.
1997-09-23 22:34:00 +00:00
pk 40c87730b3 Move KERNBASE to 0xf0000000. 1997-09-23 19:59:27 +00:00
phil ea2fc3a36c Add a missing ( in the pmap_enter call for the message buffer. 1997-09-23 13:48:15 +00:00
pk f5bb941f5b MSGBUFSIZE needs no obscure adjustment; initmsgbuf() takes care of that. 1997-09-23 08:23:29 +00:00
pk c209086562 The symbol `_msgbufaddr' is no longer exported. 1997-09-23 08:19:56 +00:00
pk 9632cb41c6 Fix some lossage resulting from changed message buffer initialization:
don't buck the trend and move the call to initmsgbuf() to cpu_startup()
in machdep.c (like most other ports do) where we can setup things right
in one go. (This means that the CSRG copyright will no longer be in
the kernel logs).
1997-09-23 08:16:26 +00:00
christos b562e93fc1 Remove duplicate declaration 1997-09-22 20:35:51 +00:00
christos 676d60fa45 Fix printf formatting; remove extra spaces, add : at the end. 1997-09-22 20:34:45 +00:00
leo fb0bc9eeae Fix (hopefully) the compile errors introduced by the msgbuf changes. 1997-09-22 15:03:58 +00:00
thorpej 376e3e6e34 Glue in memory_disk_hooks. 1997-09-21 22:53:03 +00:00
thorpej 585f46558e Add support for mounting a memory disk as the root device. 1997-09-21 22:51:29 +00:00
thorpej c6ff44d7a1 Add support for the memory disk device. 1997-09-21 22:44:46 +00:00
leo 02f4c2f7e9 atari_round_page() -> m68k_round_page(). My fault, sorry... 1997-09-21 20:35:31 +00:00
is b325cdd771 Build this in ${KERNEL_BUILD_DIRECTORY}/lib/fpsp, similar to libkern. 1997-09-21 17:33:36 +00:00
is 970af214ab Deal with HUPCL, closing (but in a different way than proposed) PR 1010. 1997-09-21 17:21:24 +00:00
mjacob 03a798a3fd Add some defines for alpha interrupt types. 1997-09-20 19:02:34 +00:00
pk fca3465b96 Do not skip over a break trap instruction, now that the DDB code can
do it properly.
1997-09-20 19:00:40 +00:00
pk 9b3d64edb9 Remove the `segmap' array from the header. Insert an offset and count
field to get to it instead.

Add field `kernbase' so libkvm can be independent of the kernel's link address.
1997-09-20 18:23:51 +00:00
pk 59ed02a11b pmap_dumpsize() returns a number of disk blocks. 1997-09-20 18:18:33 +00:00
pk 1cd19dc013 Change crash dump layout a bit so the size of the `cpu_kcore' structure
does not depend on the value of KERNBASE.

Change pmap_dumpsize() to return disk block units, in stead of pages.
1997-09-20 18:14:01 +00:00
drochner 1f1e574146 -implement a "device_register()" function to identify network interfaces
by bus type / address (for diskless boot)
-add some (experimental, commented out) code which could be used for
 identification of boot disks - should help for BIOS remappings
1997-09-20 14:15:54 +00:00
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