Commit Graph

14399 Commits

Author SHA1 Message Date
ross 469f9b6126 Clean up attachment code and prototypes. 1998-03-02 06:53:34 +00:00
mikel dfb1317f8a remove some lint; from Thorsten Frueauf in PR 5085.
also made one implicit int declaration explicit.
1998-03-02 06:20:16 +00:00
mikel 3119a26ccd s/CFLAGS/CPPFLAGS/ 1998-03-02 06:17:29 +00:00
thorpej 7a571c643b Rename a few macros to better describe what they are:
- kvtol1pte() -> l1pte_index()
- vatoste() -> l2pte_index()
- vatopte() -> l3pte_index()
1998-03-02 00:49:01 +00:00
thorpej 54bb4f9e6e Rewrite pmap_enter() to have a more sane structure, useful for when
page table page management is rewritten.
1998-03-02 00:22:54 +00:00
fvdl 25a2f5ee46 Put #if NCPU > 1 around initialization of simple_locks too, to avoid
compile errors.
1998-03-01 23:19:01 +00:00
augustss 1918ca1e5b Change ie[01] to ef, ai, and ix so that these kernels can be used again. 1998-03-01 20:45:26 +00:00
fvdl 0485953099 Make this compile after the lite2 merge. 1998-03-01 13:22:55 +00:00
ross 4ebd177543 Remove the A12 from the rogue's gallery of the promcons-addicted. 1998-03-01 08:17:36 +00:00
ross 39254d4d4b Poll console at 50 Hz, not 1024 Hz! (4 tlb and imb coherency ops per poll
make this exceedingly expensive even on an alpha)  Note: only 3 systypes
still use promcons.
1998-03-01 07:40:11 +00:00
is eb3cda883b Probe for the native DraCo (rekeycaped MF-II) keyboard, instead of guessing
it from the QuickLogic chip version byte.
If found, switch it to non-autorepeat mode (which seems to avoid the race
condition which made my keyboard driver / X server lose state under heavy
interupt load).
If not found, assume an Amiga keyboard on CIA-A.
XXX We should probe for the presence of the CIAs on the DraCo.
1998-02-28 21:53:15 +00:00
veego b6ca941200 Sync it with the i386 version so lint doesn't complains about an syntax
error for __warn_references.
1998-02-28 12:20:25 +00:00
ragge ad1f451760 Move the boot program higher up in memory; to allow loading of bigger kernels. 1998-02-28 12:10:13 +00:00
ross 2170c2a46d Force elf symbol sections to an addressable boundary. 1998-02-28 10:38:55 +00:00
cgd 18a1481f7a Use NFS_BOOT_DHCP rather than NFS_BOOT_BOOTP. The former is more
flexible, and the boot blocks use DHCP already(!!!) and it'd be good
for the kernel to be consistent with them.
1998-02-28 02:01:32 +00:00
pk d22f956657 Remove `_NEW_I82586'. 1998-02-28 01:15:51 +00:00
thorpej ba3ddd48ad Move the code that enters and removes entries from the pv_table into
functions pmap_enter_pv() and pmap_remove_pv().
1998-02-28 01:07:05 +00:00
pk 32ad582965 Replace monolithic `ie0' and `ie1' driver by `ef', `ix', `ai' front-ends. 1998-02-27 23:57:31 +00:00
thorpej 9bbe89ea3f Garbage-collect the kpt_page stuff; it was basically unused in this
pmap, and isn't applicable to how dynamically allocated kernel page
tables will work on the Alpha.
1998-02-27 22:25:25 +00:00
thorpej 11490942aa Nuke memcpy() from here; it's in libkern. 1998-02-27 21:38:31 +00:00
thorpej faf1155de5 Revamp pv_table management:
- Make pv_table an array of struct pv_head's, which contain LIST_HEADs
  for the pv_entry's, as well as page attributes (mod, ref, ptpage).
- Use <sys/queue.h> to manipulate pv_entry lists.
- Fix several obvious bugs in pmap_collect_pv().
- Use K0SEG to access pv_page's.
1998-02-27 19:39:03 +00:00
thorpej 5ec2d93c1e Fix a typo. 1998-02-27 19:13:04 +00:00
cgd 84fad9aba3 make it clear that the "old BSD partition ID!" message is a warning (by
prefacing it with "WARNING: ").
1998-02-27 18:57:40 +00:00
scottr e3dfc809c6 Remove dpme.h, as it's no longer necessary. 1998-02-27 09:17:18 +00:00
scottr c1ea2b45ff Integrate Macintosh partition map and driver descriptor map definitions. 1998-02-27 09:15:21 +00:00
thorpej f17bbcfffa Changes necessitated by the fact that all pmaps have their own level 1
page tables: use curpcb to determine which level 1 map defines the
current VM context, and use that level 1 map when mapping and unmapping
the PROM.
1998-02-27 04:03:00 +00:00
thorpej c4e7c88520 Step 1 of the Grand Alpha Pmap Rototill:
- Clean up pmap_bootstrap() some, and make a slight change to how the
  PROM mappings are saved.
- Give each pmap its own level 1 page table, rather than sharing a global
  level 1 page table.  This will eventually allow for Very Large user
  address spaces.
- Keep a list of all pmaps, so that when kernel level 2 page tables are
  allocated, all level 1 tables may be updated.
- Add a couple of functions for allocating and freeing page table pages.
- Add a few comments about ASN allocation.
1998-02-27 03:59:58 +00:00
thorpej 5d56ce57ba Several changes related to all pmaps having their own level 1
page table:
- Update the current hwpcb pointer in the SWITCH_CONTEXT macro, so that
  we know it's always correct.
- Optimize cpu_switch(): if we're switching to ourselves, skip the
  actual context swap.
- Clean up some comments and remove some code rendered obsolete by
  the fact that address spaces are now selected by switching to a
  new level 1 page table.
1998-02-27 03:53:49 +00:00
thorpej cb6972d4d3 Implement alpha_pal_swpctx(). 1998-02-27 03:44:53 +00:00
scottr f5f997d1dc Bump down maxusers to a reasonable value on a machine with 8MB. 1998-02-27 01:33:14 +00:00
gwr 0228ba8d86 Make the messages printed by _nodb_trap() more helpful. 1998-02-26 20:31:13 +00:00
gwr eeb690065b Use trap 14 as PROM abort 1998-02-26 19:30:59 +00:00
gwr 23b16936e8 Fix build with NFB=0 1998-02-26 16:01:18 +00:00
perry edac6b7ff2 define kernel only inline static functions only #ifdef _KERNEL 1998-02-26 01:57:30 +00:00
thorpej 8d0d59284b Use allocsys(), mips_init_msgbuf(), and mips_init_proc0(), plus small
changes for MACHINE_NEW_NONCONTIG.
1998-02-25 23:31:29 +00:00
thorpej d6085102e9 DECstations have one physical memory segment. 1998-02-25 23:31:03 +00:00
thorpej b3c5864223 Use allocsys(), mips_init_msgbuf(), and mips_init_proc0(), plus small
changes for MACHINE_NEW_NONCONTIG.
1998-02-25 23:30:33 +00:00
thorpej c2e692ff93 PICA has one physical memory segment. 1998-02-25 23:30:11 +00:00
thorpej 330e4f8d24 Fix a few screwups that made it impossible to config these kernels. 1998-02-25 23:29:49 +00:00
thorpej 477d46784e Use allocsys(), mips_init_msgbuf(), and mips_init_proc0(), plus small
changes for MACHINE_NEW_NONCONTIG.
1998-02-25 23:28:25 +00:00
thorpej d184112bd5 NEWS has one physical memory segment. 1998-02-25 23:27:20 +00:00
thorpej da6458bfb4 Implement and switch to MACHINE_NEW_NONCONTIG. 1998-02-25 23:26:41 +00:00
thorpej 4673e0c339 Prototype allocsys(), mips_init_msgbuf(), and mips_init_proc0(). 1998-02-25 23:25:16 +00:00
thorpej 469520ccd4 Pull some code out of N mach_init() functions, and place it in a
common place:
- allocsys(), which computes space for and assigns addresses
  to kernel data structures at boot time.
- mips_init_msgbuf(), which initializes the error message
  buffer at the end of core.
- mips_init_proc0(), which initializes the U-area for proc0
  and nullproc.
1998-02-25 23:24:35 +00:00
perry 398e0f8c64 add /* LINTLIBRARY */ to supress lots of "unused function" warnings
from lint.
1998-02-25 22:36:45 +00:00
perry 1ed8ea9966 note second parm of sysarch() is now void *, + trivial KNF, etc. 1998-02-25 21:41:55 +00:00
perry 56c01cbd82 change second parm of sysarch() from char * to void * 1998-02-25 21:24:56 +00:00
drochner 3ee0e26f7d document 3c900 TPO support, add comments 1998-02-25 12:19:12 +00:00
drochner 41bbe0c360 3c900 TPO works too, as reported by Feico Dillema <dillema@acm.org>. 1998-02-25 12:15:49 +00:00
chuck e308ffd825 compute st_map size properly 1998-02-24 19:01:59 +00:00
leo 25811c51ea Declare 'fd_cd'. 1998-02-24 13:02:54 +00:00
leo e4b379c7c1 Only try to initialize the PCI-bus when NPCI > 0. 1998-02-24 13:02:06 +00:00
thorpej 89d112dd92 Switch this kernel to UVM. 1998-02-24 11:05:37 +00:00
thorpej 7027d87a18 Duh! Use uvm_km_valloc_wait(), NOT uvm_km_zalloc() to allocate user page
tables.  (Thanks for pointing that out, Chuck!)
1998-02-24 07:42:05 +00:00
thorpej 58509e699f Add support for UVM. 1998-02-24 07:38:01 +00:00
scottr a316576397 A change ripped out of i386/machdep.c:
--
When allocating bus space in bus_space_alloc(), use EX_FAST to find
the first fit in the map.  The previous behavior violated the principle
of least surprise (especially annoying when you're debugging space allocation
problems).  Suggested by Chris Demetriou.
1998-02-24 07:06:39 +00:00
scottr 15b125de34 ROM vectors and related information needed to support the Performa 588
(and quite probably all LC/Performa 580/588 models).  Thanks to
Yasuhiro Endoh for providing the necessary data.
1998-02-24 07:00:14 +00:00
scottr 6f382db074 The code compiled in by the MADHATTER option is now standard issue. While
here, do a bunch of KNF, particularly whitespace issues.
1998-02-24 05:59:34 +00:00
mycroft 78875d069d ofd -> ofdisk 1998-02-24 05:49:28 +00:00
mycroft 6bab18f8f1 Catch up with changes in dev/ofw. Add mainbus. 1998-02-24 05:45:51 +00:00
thorpej 7198bb7811 Set the VM page size after clearing the BSS segment. 1998-02-23 20:05:09 +00:00
thorpej a3a297cc40 Two purely cosmetic whitespace changes. 1998-02-23 18:45:44 +00:00
scottr c285c9fbfa Remove the limit on bufpages we picked up from i386 in 1993
(which was removed from that port not long after), as it's not
an especially meaningful test.

Also, bump the number of swap buffers allocated to 3/4 the amount
of file i/o buffers (taken from the Amiga port).
1998-02-23 07:24:44 +00:00
mycroft ee0b9799e7 Fix layout of powerpc_saved_state; copy in saved MSR. 1998-02-23 03:23:05 +00:00
mycroft 79f597383e Fix layout of powerpc_saved_state. 1998-02-23 03:22:16 +00:00
mycroft d387a356c8 Clean up, add physadr. 1998-02-23 03:21:40 +00:00
scottr c1a185be97 Mostly KNF. There's still a bunch of ugly comments and some problems
with long lines, but this is at least a big step in the right direction.
1998-02-23 03:11:26 +00:00
scottr e50238f77a Rewritten II-series ADB code from John Wittkoski. Also, a whole
lotta KNF.
1998-02-23 03:09:40 +00:00
mycroft d56d21012f Slight rearrangement. 1998-02-23 01:54:26 +00:00
is 85c6760e2d Initialize keyboard structures also from kbdopen(), if necessary.
To do this, move the flag variable to kbdenable().
This will make kernels with serial console provice a working keyboard driver.
1998-02-23 00:47:30 +00:00
mark 1876c03a83 Only include armfpe.h if we are building FPE support into the kernel.
Missed from the last commit.
1998-02-22 23:45:13 +00:00
mark c67078a448 Update arm_fpe_[gs]etcontext() functions to take a struct fpreg pointer
as the second argument.
1998-02-22 23:39:53 +00:00
mark 5a2727a17e Fix arm_fpe_[gs]etcontext() prototype declarations to take a
struct fpreg pointer as the second argument.
1998-02-22 23:38:18 +00:00
mark b9ce4e7ddb Include arm32/fpe-arm/armfpe.h for arm_fpe_[gs]etcontext() prototypes.
Remove unnecessary include files and cleanup some dead code.
1998-02-22 23:35:45 +00:00
is 7667dac2d2 Actually fix, rather than mask, the Amiga big machine panic: the pmap needs
to (pre)allocate enough kernel page table pages to (among others) map the
buffer cache buffers.
1998-02-22 22:51:46 +00:00
mycroft c1444078b5 Finish making this compile after libkern changes. 1998-02-22 15:25:28 +00:00
mycroft b20ba808f2 Clean up after ffs() change.
Do *not* set runtime here; the way it was done was highly bogus, and the value
just gets blasted right away by mi_switch().
1998-02-22 15:13:36 +00:00
drochner e225b4cbdd -check MBR signature before using MBR partition data
-add new FAT types and Linux EXT2 to the faked-up partition table
1998-02-22 14:48:27 +00:00
drochner 74b401ffd1 -correct misleading name and comment for MBR partition type 14
-add FAT32 and EXT2FS
1998-02-22 14:45:43 +00:00
ragge 1e3fb9012d Type fix so that time get read correct on VS2000, from Ken Wellsch. 1998-02-22 14:19:39 +00:00
mycroft 1638d144ca Always go to splhigh() inside DDB. 1998-02-22 14:07:21 +00:00
scw ef52501a4f Implement changes for UVM. 1998-02-22 11:33:10 +00:00
mycroft bb0363853f ffs() is identical to the one from libc, so just use that.
Move random() to libkern.
1998-02-22 09:31:00 +00:00
mycroft 533de19431 Remove random.s. 1998-02-22 08:51:04 +00:00
mycroft dcfb8695ab Move to libkern. 1998-02-22 08:50:17 +00:00
mycroft 065e369ab5 Remove random.s. 1998-02-22 08:35:33 +00:00
mycroft 8776736cea Move to libkern. 1998-02-22 08:34:35 +00:00
mycroft 4b6d15532b Nuke random.s. 1998-02-22 08:21:33 +00:00
mycroft 5a22434af5 Remove this copy of bzero(). 1998-02-22 08:19:05 +00:00
mycroft f118bc7042 Move to libkern. 1998-02-22 08:13:47 +00:00
mycroft ab5aeaa789 Clean up #include paths.
Copy prom2boot() from kernel source.
rename _rtt() to OF_exit(), and add a _rtt() that calls it.
1998-02-22 07:42:30 +00:00
mycroft 03f75a79ff Nuke the override of libkern SRCS from orbit. 1998-02-22 07:19:02 +00:00
mark 39ce947f1a Add missing interrupt enable callbacks lost during the adding of ATAPI
support. Spotted while working on MI wdc support for the ICS interface.
1998-02-22 02:36:22 +00:00
mark 05fa7c54a5 Clean up the comments and correctly indent them. Change various RiscBSD
references to NetBSD ones.
1998-02-22 00:31:00 +00:00
mark 550b5bff23 Guard spl related variables and pmsputbuffer() with #ifdef MOUSE_IOC_ACK.
Declare pmsputbuffer() as static.
1998-02-22 00:25:03 +00:00
mark a0ce540d73 Guard spl related variables and qmsputbuffer() with #ifdef MOUSE_IOC_ACK 1998-02-22 00:24:12 +00:00
mark a55279da6a Updated to use cpu_reset() rather than boot0().
Set cpu_reset_address to 0x00000000 for currently supported systems.
Update associated comments.
1998-02-22 00:08:16 +00:00
mark d011ec2573 Provide a prototype for cpu_reset(). 1998-02-22 00:05:56 +00:00
mark dc37a51773 In the future we may want to branch somewhere other than zero when
reseting the CPU. Rename the boot0() function to cpu_reset() and
provide a variable to hold the cpu reset address.
1998-02-22 00:05:00 +00:00
jonathan 78b939d4b5 Pull up duplicated CPP definitions from float.h rev 1.10:
>DBL_MIN and DBL_MAX were less precise than they should have been.
1998-02-21 23:50:24 +00:00
mark 44e22f7606 Fix a couple of unused variable warnings for RC7500 builds. 1998-02-21 23:40:03 +00:00
mark 35c234d2a6 Replace -Wreturn-type with -Wall for CWARNFLAGS. 1998-02-21 23:30:56 +00:00
mark 88aa559e5e Remove inclusion of machine/katelib.h
Remove local prototype of savectx().
Comment all the #endif lines for PMAP_DEBUG
Remove un-necessary variable 'up' from cpu_fork().
Use %p rather than %x for several debug print messages.
1998-02-21 23:27:10 +00:00
mark 018ce60490 Remove functions for disable_interrupts(), enable_interrupts() and
restore_interrupts() as these have been replaced by macros in
machine/cpufunc.h.
1998-02-21 23:21:28 +00:00
mark 2553c95bde Include machine/cpufunc.h for interrupt disable/restore routines. 1998-02-21 23:19:36 +00:00
mark 24aaa5f9dd Add macros for the CPU functions disable_interrupts(), enable_interrupts()
and restore_interrupts().
1998-02-21 23:17:05 +00:00
mark ccb81fe3d3 Remove prototype declarations of disable_interrupts(), enable_interrupts()
and restore_interrupts() as these are CPU related functions.
1998-02-21 23:16:28 +00:00
mark 706589adb9 Update the L1_SEC() macro to take a cache enable mask.
Add a macro L1_SEC_SIZE to define the size of a L1 section.
1998-02-21 23:11:28 +00:00
mark 854d928a14 Fix typo in a DMA dummy stub function. 1998-02-21 23:09:37 +00:00
mark 6eccd50f49 Remove local prototype for savectx().
Update all map_section() function calls to map I/O sections as
non-cacheable.
1998-02-21 23:08:17 +00:00
mark c273b285d8 Remove local prototype of savectx().
Updated all map_section() function calls to map sections as non-cacheable.
1998-02-21 23:04:54 +00:00
mark 99ae0b08fe Updated all map_section() function calls to map I/O sections as
non-cacheable.
1998-02-21 23:02:34 +00:00
mark 1c782f5da1 Add a cacheable flag field to the map_section() function so that L1 page
table section mappings may be made cacheable.
Remove a few nasty hardcoded shifts and use macros from machine/pte.h
instead.
Cleaned up a few comments.
1998-02-21 23:00:57 +00:00
mark 745e11a2b1 Remove local prototype of savectx(). 1998-02-21 22:57:44 +00:00
mark 628ae33403 Remove register declarations. 1998-02-21 22:56:58 +00:00
mark 1bd5283fb7 Remove inclusion of katelib.h and include cpu.h and cpufunc.h. 1998-02-21 22:52:50 +00:00
mark ba8b28d360 Remove local prototypes of strstr(). 1998-02-21 22:51:43 +00:00
mark c81dae4473 Move some prototypes form katelib.h to a more suitable home in cpu.h 1998-02-21 22:49:18 +00:00
mark ea04275578 Remove local prototype of disassemble() and include disassm.h instead
for prototype.
Fix compiler warnings about unused variables with certain config options.
1998-02-21 22:43:29 +00:00
mark d13b903579 Remove local prototypes for disassemble() and include disassem.h instead
for the prototype.
1998-02-21 22:41:34 +00:00
mark 83fcf2d5c8 Define prototypes for disasm() and disassemble(). 1998-02-21 22:38:40 +00:00
jonathan f7bd3a0119 Move existing contextsw-avoidance code in rzdump() earlier, since rzready()
also calls biowait().

Some drives seek to modepage on every modepage geometry-sense in rzready()
cache dev_t of last readied device in rzdump() to elide rzready() calls.
2x speedup of dumps on rz25 and 20x-30x speedup on some IBM OEM 4gig drives.
1998-02-21 20:20:55 +00:00
scw d38d12d85a Whoops, cgd's pmap_map change got lost! Put it back. 1998-02-21 19:22:00 +00:00
scw 0e88177c0b Implement changes for MACHINE_NEW_NONCONTIG and UVM. 1998-02-21 19:03:25 +00:00
christos 4e915f8681 PR/4950: Rene Hexel: Add id for Terratec EWS64 joystick 1998-02-21 13:19:14 +00:00
mark 3fa53fb439 Check the for the TODCLOCK_FLAG_FAKE flag in the attach args to allow
a "real" driver to have priority.
Make sure that a todclock service does exist before trying to read and
write the time.
If no RTC read routine exists, just use the suggested time in inittodr().
1998-02-21 03:19:02 +00:00
mark fb161c5c9c Set the flags field in the todclock_attach_args to 0.
Fix typo in currently commented code.
1998-02-21 03:13:46 +00:00
mark 50f9bf3cb5 Add a flags field to the todclock_attach_args structure.
Define a flag bit to indicate that the todclock is faking the RTC
read and write routines.
1998-02-21 03:12:32 +00:00
mark 59be9f9e0e Don't configure the qms mouse device into A7000 kernels as the A7000
only supports a PS2 mouse and not a quad mouse.
1998-02-21 02:46:11 +00:00
mark 5b4cb30e30 Recognise the ARM7500FE IOMD id as supporting a podulebus. 1998-02-21 02:44:42 +00:00
mark b302819fbe Nuke db_show_fs_cmd() and the "machine fs" command in the debugger. The
command has not been used for years and is really broken now vfs_conf.c
is no more.
1998-02-21 02:42:42 +00:00
scottr 81d2791bd9 Unify ADB options and place them all into opt_adb.h. Provide a knob to
enable ADB debugging messages if ADB_DEBUG is configured.
1998-02-21 00:37:07 +00:00
gwr 5f0963e887 Switch to MACHINE_NEW_NONCONTIG 1998-02-20 21:51:29 +00:00
scottr 0ca6188f89 Fix for ADB hang while probing, based on information from Colin Wood:
Rather than waiting indefinitely for a mouse or extended keyboard to
respond -- which may not even exist -- time out after 2 seconds and
continue.  This corrects a very common problem with the MRG-based ADB
driver that has bitten many people running 1.3.
1998-02-20 18:14:10 +00:00
frueauf 5e3035adb1 include <unistd.h> for optarg/optind. 1998-02-20 09:19:11 +00:00
mycroft 7aad596fa6 Fix formatting glitch. 1998-02-19 23:21:33 +00:00
thorpej 17eae81dc5 Use the generic NetBSD/mips crash dump code. 1998-02-19 23:13:33 +00:00
thorpej 2f74d0222a savectx() is prototyped in <mips/cpu.h> 1998-02-19 23:10:18 +00:00
thorpej 0743f83f64 Implement new style crash dumps for NetBSD/mips, lifted from NetBSD/alpha. 1998-02-19 23:09:30 +00:00
thorpej cf06aa7c03 Prototype dumpsys() and savectx(). 1998-02-19 23:07:14 +00:00
thorpej c5862712ae New crash dump format definition for NetBSD/mips. 1998-02-19 23:06:11 +00:00
thorpej 50f58080f4 Rewrite rzdump(); the previous one was completely broken. 1998-02-19 23:04:41 +00:00
gwr ce396c52e6 can not use star 1998-02-19 22:50:04 +00:00
gwr 43cbb05833 Support MACHINE_NEW_NONCONTIG 1998-02-19 22:21:28 +00:00
leo c281cb0e23 Update Hades PCI support:
- Initialize the PCI bus and hand-out mem and i/o addresses. (there is
    still lots of room for improvements here...)
  - Implement the interupt functions
1998-02-19 16:16:51 +00:00
drochner 0587f7e6e7 add COMPAT_386BSD_MBRPART option 1998-02-19 14:21:57 +00:00
drochner ce380ad936 enable "old partition ID" compatibility per default 1998-02-19 14:18:36 +00:00
drochner ad33d83f8b Add compatibility code (#ifdef COMPAT_386BSD_MBRPART): look for 386BSD
partition ID if the NetBSD ID was not found.
Cleanup, use definitions from <machine/disklabel.h>
1998-02-19 14:15:38 +00:00
drochner 411e77cac8 Add compatibility code (#ifdef COMPAT_386BSD_MBRPART): look for 386BSD
partition ID if the NetBSD ID was not found.
1998-02-19 14:12:48 +00:00
drochner 7d1b6dbcbf -define new own partition ID for NetBSD (0xa9)
-protect structure definitions from inclusion in assembler files
1998-02-19 14:10:34 +00:00
drochner b3019be867 Use an own NetBSD MBR partition type. Add compatibility code for fallback
to the old 386BSD ID (#ifdef COMPAT_386BSD_MBRPART).
basically from Duncan McEwan <duncan@MCS.VUW.AC.NZ>
1998-02-19 14:07:33 +00:00
thorpej 69c27a1dfb Make sure the compile directory is always there. 1998-02-19 09:17:56 +00:00
thorpej c3a02725ea Use a reasonable default for NKMEMCLUSTERS. Previous default value wouldn't
run multi-user for very long at all, and every kernel configuration file
overrides it!
1998-02-19 06:40:09 +00:00
thorpej 772da350d4 Disable the message buffer during crash dumps by clearing msgbufenabled,
not msgbufmapped.
1998-02-19 04:18:30 +00:00
cgd 0924c4443d Make sure the reason that NOLINT is set is documented. Additionally
in places where it should be set (or has to be set right now), do so.
1998-02-19 02:17:05 +00:00
thorpej 258bdac2d5 Include the MFS option header. 1998-02-19 00:32:11 +00:00
thorpej 1870f7af79 Include MFS option header. 1998-02-19 00:31:08 +00:00
thorpej 8a5a1155cf Include KERNFS option header. 1998-02-19 00:30:38 +00:00
perry 8486362eaf remove obsolete boot code -- we now use the code in stand/ 1998-02-18 19:23:23 +00:00
perry 3add465995 remove obsolete netboot code -- we now use the code in stand/ 1998-02-18 19:21:36 +00:00
tsubai 117df8f77a Initial import of NetBSD/news. 1998-02-18 13:48:03 +00:00
mycroft 2e55db84dd Sync with powerpc/include/vmparam.h; removes some things which are not used. 1998-02-18 11:11:24 +00:00
mycroft b7bc9342a8 Fix typo. 1998-02-18 11:10:08 +00:00
mycroft 3b9429b248 Minor changes to make all the float.h files match. 1998-02-18 11:01:27 +00:00
mycroft 5197bf8085 Minor changes. 1998-02-18 10:55:48 +00:00
mycroft f0a5dd43ce Multiple-inclusion crap, correct precision of DBL_*, etc. 1998-02-18 10:54:10 +00:00
mycroft ec9c3ce899 DBL_MIN and DBL_MAX were less precise than they should have been.
Other minor changes to match other float.h files.
1998-02-18 10:37:04 +00:00
mycroft d47ec6f1ae Include correct information for long doubles (mc68881 extended precision). 1998-02-18 10:24:45 +00:00
mycroft c525e48e35 Include correct information for long doubles (i387 extended precision). 1998-02-18 09:22:02 +00:00
thorpej edbfcebb6a Fixup an inconsistency in the declaration of PTDpaddr, pointed out by
Chris Demetriou.
1998-02-18 03:04:40 +00:00
cgd 3bbb7f7d45 Move pmap_map() function definition to MD headers, as appropriate. It's
an internal function, and the VM system shouldn't try to prototype it.
(Note that some ports _don't_ prototype it.)
1998-02-18 02:05:32 +00:00
cgd f19c0ee648 nuke pmap_map(). it's an internal MD function, and it's unused 1998-02-18 01:44:32 +00:00
thorpej b7d1ce7766 Switch the i386 port to the new kernel crash dump format. 1998-02-18 01:09:25 +00:00
is 31c87441a4 Cosmetics. Pointed out by Matthias Scheler. 1998-02-17 19:42:38 +00:00
thorpej 8354e68508 Remove "class" declarations, and add "devclass" declarations where
appropriate.  Fix several inconsistencies between device class and
attributes.  Mostly from Chris Demetriou.
1998-02-16 22:12:45 +00:00
thorpej 65e20aa9a8 Add first-cut support for UVM. NOTE! User page table allocation does not
currently work with UVM in this pmap!  This is due to a bug in the interaction
between kernel_object and submaps which will be addressed shortly.
1998-02-16 21:01:39 +00:00
thorpej d8f3ddff17 Add support for UVM. 1998-02-16 20:54:51 +00:00
drochner 07fdccb3a4 Document new WD80x3 option. 1998-02-16 11:41:14 +00:00
drochner 509f891bd0 -Completely reset the card in EtherStop(), otherwise the next
open can fail.
-Disable interrupts in the mask register - EP_W0_RESOURCE_CFG is not
  sufficient for PCI cards.
1998-02-16 11:26:36 +00:00
drochner b8cdacb8d5 Redo standalone driver for WD8013 / SMC Ultra boards.
(The old one was buggy.)
Frontend / backend splitup and most code taken from sys/dev/ic/dp8390.c
and sys/dev/isa/if_we.c.
1998-02-16 11:21:59 +00:00
thorpej b4e77b173a Add support for non-contiguous physical memory, using MACHINE_NEW_NONCONTIG.
These changes also recover memory that is located before the kernel in
the first system software segment on systems which do not use the PROM
for console I/O.  Written by Chris Demetriou and myself.
1998-02-16 03:59:55 +00:00
thorpej 2b06ffd5f9 Add support for UVM. 1998-02-15 21:19:34 +00:00
thorpej 8559f25d47 Implement kcopy(), like bcopy(), but aborts if a fault is encountered.
Required for UVM.
1998-02-15 21:18:45 +00:00
pk 0fc808b760 Think-o in pmap_extract4m(), detected by UVM. 1998-02-14 09:28:52 +00:00
cgd 1584dc4420 The pmap_emulate_reference warning about the page not being managed should
be a panic instead.  If it's hit, "random" memory is going to be corrupted.
1998-02-14 02:04:05 +00:00
cgd 1538076f47 fix pasto in last (sigh) 1998-02-14 01:18:46 +00:00
cgd ab67040f58 fix for (harmless) bogon introduced in last commit 1998-02-14 01:17:19 +00:00
cgd e719e8f703 adjust kernel core dump code for changes in kcore.h, also clean up
slightly.
1998-02-14 00:53:26 +00:00
cgd 69d88fbfd6 replace the single phys_ram_seg_t with a count. an array of segment
descriptors will be placed after this structure in the core file.
1998-02-14 00:17:57 +00:00
scottr f49dd3ef30 Avoid declaring the "astpending" and "want_resched" globals in cpu.h,
as this breaks C++ code that happens to indirectly include this header.
Both Matthias Scheler and I noticed this, independently.

This problem notably does not affect the atari and sun3/sun3x ports,
which have already implemented a similar solution.
1998-02-13 07:41:45 +00:00
scottr a3675acf9f Make space for want_resched here, like most of the other m68k-based ports. 1998-02-13 07:39:02 +00:00
enami 2c12105cda Remove comment which says that fxp is untested (it is known to work now).
Also, make model name closer to what driver prints startup.
1998-02-13 04:33:30 +00:00
mrg 7d9acb9bb6 add a commented out PMAP_NEW. 1998-02-13 04:12:33 +00:00
cgd 25d056473c Clean up kernel initialization. Use the bootinfo structure (or innate
knowledge) earlier, and gather all information needed earlier.  Mark the
init code carefully re: when it can print stuff out, when it can expect
the firmware to stop working, etc.  Be more careful about using the PROM
console and other PROM facilities, and hint that in the future all use
of firmware/boot program callbacks by the kernel should go away (since
the world may not be mapped the way the firmware/boot program wants!).
1998-02-13 02:09:03 +00:00
thorpej b22ad9fe1a Define a lookup table for Alpha platform variation names. 1998-02-13 01:29:09 +00:00
thorpej bdc328cb13 Use the platform family name in alpha_unknown_sysname(). 1998-02-13 00:27:37 +00:00
thorpej bd60d9c62d Rewrite the way the platform model string is determined:
- Attempt to find the model string in the HWRPB's DSR area.  Failing that
  (if the HWRPB version is too old)...
- Look up the system variation in a variation/string table.  Failing that
  (unknown variation)...
- Create a default model string using the variation number.

Also, factor out a bunch of common code.
1998-02-13 00:12:45 +00:00
thorpej 44df600994 Define the structure of the HWRPB's Dynamic System Recognition area. 1998-02-13 00:07:25 +00:00
thorpej 7fbc685c06 Make it a little more clear that the "eb164" systype doens't necessarily
mean that a machine is a DEC EB164 (it may be an AlphaPC 164, which is
different, from the firmware's perspective).
1998-02-12 20:46:47 +00:00
thorpej 314f40f8d8 We can't count on the CIA revision register telling us if we're a 21171
or 21172, so make the chip/revsion output a little more sane.
1998-02-12 20:43:45 +00:00
sakamoto d053bf6ffe Eliminate unnecessary code.
The bebox has only one PCI-ISA bridge(82378ZB).
1998-02-12 05:19:04 +00:00
sakamoto e6ebe3f36f Add avail_end for DMA (temporary). 1998-02-12 05:16:06 +00:00
cgd 5a1a26d325 set 'hwrpb' in a way that works exactly the same way as the previous
code, but looks significantly less gross.
1998-02-12 02:54:02 +00:00
cgd c7ba12ab93 rename struct rob's "rpb" element to "rpb_phys" for clarity. also,
change its type from a pointer to a never-defined structure to a
u_int64_t.
1998-02-12 02:27:48 +00:00
cgd 92d17b5b50 clean up the way bootinfo information is passed and used: move the version
number passed by the boot block into a register, change the kernel's
bootinfo handing so that it always uses bootinfo to get bootinfo-ish values
(filling them in if the boot blocks didn't pass them), and make versioning
a small bit more sane.
1998-02-12 01:53:18 +00:00
sakamoto eef219fd43 Sync with powerpc/include/endian.h 1998-02-12 01:28:48 +00:00
sakamoto 4a3839dbdd Sync with powerpc/include/ansi.h 1998-02-12 01:21:10 +00:00
sakamoto fcfdcaa513 Sync with port-i386. 1998-02-12 01:19:04 +00:00
sakamoto 4429e5c5fe Import memory disk filesystem hook from port-i386. 1998-02-12 01:03:58 +00:00
gwr 948e07a5ec remove ifdef sun3x 1998-02-11 19:42:29 +00:00
thorpej c26f962957 Use kernel_map in bus_dmamem_{map,free}(). 1998-02-11 03:08:31 +00:00
thorpej cb9500aac0 Fix for defopt'd UVM and PMAP_NEW. 1998-02-11 03:05:35 +00:00
thorpej e9017a5ab3 Use kernel_map in bus_dmamem_{map,free}(). 1998-02-11 03:03:52 +00:00
thorpej bdecbe552b Use M_DMAMAP where appropriate. 1998-02-11 01:50:36 +00:00
thorpej 30aa56fc66 Use M_DMAMAP where appropriate. 1998-02-11 01:37:51 +00:00
cgd e21b7a5995 leave space for bootstrap stack when calculating kernstart 1998-02-11 00:05:33 +00:00
mrg d90485202c - add defopt's for UVM, UVMHIST and PMAP_NEW.
- remove unnecessary UVMHIST_DECL's.
1998-02-10 14:08:44 +00:00
leo 301a4b3f87 Build the library before using it.... (Thomas Gerner). 1998-02-10 10:28:34 +00:00
leo dda805c3d4 Accept an 68060 as cpu-type. (Thomas Gerner). 1998-02-10 10:25:08 +00:00
thorpej 1951c4b19b Bump KNMEMCLUSTERS slightly, and make it more obvious how to tune it
(lifted from i386 port).
1998-02-10 03:53:01 +00:00
thorpej 68d3b764ce Make it easier to keep the scaled VM_*_SIZE values in sync w/ the
constants.
1998-02-10 03:52:05 +00:00
thorpej 5887833ac7 Kernel for babylon.netbsd.org. 1998-02-10 00:48:14 +00:00
is cb1085870c Add the LIMITMEM workaround for the kernel address space size problem.
Will be removed as soon as the kernel can auto-adapt to its address space.
1998-02-09 22:14:43 +00:00
jeremy a1efa84a4d Modified the comments for the recentlty implemented pmap_map() function. 1998-02-09 19:56:37 +00:00
scottb 2ee5fa7f17 iBCS2 code cleanup
added support for ELF binaries
added support for ELF shared libs via mmap code borrowed from svr4_misc.c
incorporated a few XENIX patches from Andreas Wrede <andreas@planix.com>
1998-02-09 02:30:42 +00:00
thorpej da21f06eb5 Remove the pager options; they're in std.sparc, and will stay there
until UVM is no longer optional.
1998-02-08 19:24:28 +00:00
thorpej 93b0450b6a Back out previous change (again, grrrr). 1998-02-08 19:23:20 +00:00
thorpej 223caea788 pmap_page_index() is not used in the MACHINE_NEW_NONCONTIG case. 1998-02-08 18:47:06 +00:00
thorpej 2f55a48f5c Implement MACHINE_NEW_NONCONTIG and switch the hp300 port to use it. 1998-02-08 18:37:55 +00:00
tv 40f13df5bc the *PAGER options were moved to the generic config files, but not moved
out of here (causes duplicate opeion errors) -- fix.
1998-02-08 17:46:47 +00:00
ragge c5b2acd27f Split out MSCP floppies as a separate device (rx) instead of handling
them as disk drives. It is now also allowed to change floppies without
the system complaining :-)
1998-02-08 14:03:45 +00:00
thorpej 54aa7dfae0 Correct a think'o I made some time ago, and note that the dump routines
here are broken if VME memory cards exist in the system.
1998-02-08 09:33:14 +00:00
thorpej 1305ecbe62 Allow callers of uvm_km_suballoc() to specify where the base of the
submap _must_ begin, by adding a "fixed" boolean argument.
1998-02-08 06:15:53 +00:00
gwr 22c20779d0 Rewrite the match/attch routines to use the P4 register
(when it exists).  Also get the size right; other fixes.
1998-02-08 05:22:08 +00:00
gwr 0378cb2ff6 Define the CG4B_OFF_* values to be relative to the location of
the P4 register so the probe routine finds the P4 at off=0.
1998-02-08 05:20:08 +00:00
gwr 99fd045ec0 Add fb_eeprom_setsize() for setting the FB size based on the EEPROM
value (to be used only if unit=0).  Add P4 helper functions:
fb_pfour_id, fb_pfour_setsize, fb_pfour_{get,set}_video
1998-02-08 05:15:35 +00:00
gwr ab8340e9da cosmetic 1998-02-08 05:13:17 +00:00
gwr 0bc9d95f95 Move the sun3-vs-sun3x stuff into std.sun3 and std.sun3x
Configure P4 frame buffers at the address of their P4 reg.
Move messy Sun3 bw2 and cg4 configs to included files.
1998-02-08 05:10:45 +00:00
gwr e3400ad779 Improve some diagnostics. 1998-02-08 05:07:06 +00:00
gwr 5b69e41858 Default the interrupt priority in match functions. 1998-02-08 05:05:54 +00:00
gwr 5193e1e30e Factor *peek out of bus_subr.c and move it to autoconf.c
(to reduce duplication).  Add bus_tmapin and bus_tmapout
for use in probe functions (gets a temporary mapping).
Add bus_mapout() to undo bus_mapin() if needed.
1998-02-08 05:02:50 +00:00
gwr e387ffba22 Add pmap_map 1998-02-08 04:57:58 +00:00
gwr bb082938e2 Fix pmap_map 1998-02-08 04:56:37 +00:00
pk 334b20bbd6 Define a `DMA_FLUSH' macro; dma chip revs 0 & 1 have a different bit
to reset the internal state engine.
1998-02-07 22:41:27 +00:00
chs abf50cf8c3 add UVM stuff. 1998-02-07 17:28:18 +00:00
chs 50328f94f4 fix initialized variable. 1998-02-07 17:26:34 +00:00
chs 17755a8fae fix typo in locking. 1998-02-07 02:36:58 +00:00
thorpej 9eb328b495 RCS ID police. 1998-02-06 22:26:13 +00:00
thorpej 2d1cb11d5b Allow userland access to pd_entry_t and pt_entry_t, like the old pte.h
used to do.  Also, RCS ID police.
1998-02-06 21:58:05 +00:00
cgd 82bb6682da re-indent the EX_FAST change (try to keep a given argument on one line,
so that it's more apparent what the code is going).
1998-02-06 19:51:54 +00:00