Commit Graph

21689 Commits

Author SHA1 Message Date
thorpej 0080eaa0f5 Don't panic if DIAGNOSTIC in cluster_rbuild() if we aren't able to shed
memory in a buffer returned by geteblk().  Instrument the number of
occurrences.
1998-03-02 19:28:07 +00:00
fvdl 25bc5ab033 Don't make simple_lock decls dependent on NCPU > 1, be consistent with
the rest of the kernel.
1998-03-02 18:06:32 +00:00
fvdl ede1a3fc5b Make this compile again. 1998-03-02 17:58:34 +00:00
drochner e3d8e9c72b enable compatibility for old partition ID per default 1998-03-02 17:07:53 +00:00
ragge 8e2874bf64 Support for UVM on VAXen. 1998-03-02 17:00:00 +00:00
drochner 3bb9e75863 Change MBR partition type for NetBSD to 0xa9, like the i386 port.
Provide compatibility via COMPAT_386BSD_MBRPART.
1998-03-02 16:18:17 +00:00
bouyer 6d339338e6 Close kern/5077: When DIAGNOSTIC is defined, don't complain about
bad magic numbers at a mount attempt. A message is still printed when the
magic number is OK, but the version number or the block size is bad.
Patch from Soren S. Jorvang, but different from the one in the PR.
1998-03-02 16:13:42 +00:00
ross 03169f0089 Second part of cdev_decl() migration. Declare cputype variable.
Add config info for a12 switch driver and console driver.
1998-03-02 08:04:04 +00:00
ross 41a61f7c9e Update interrupt name table for a12 crossbar. 1998-03-02 07:47:52 +00:00
ross b8d5ca6c78 Centralize cdev_decl() for these MI drivers + a12dc in machine/conf.h (cgd)
(This does not introduce any config or option dependencies.)
1998-03-02 07:44:18 +00:00
ross ff94450f84 Use the more consistent register field names & add ctags(1) keys. 1998-03-02 07:07:41 +00:00
ross 6e6f663204 Rewrite of interrupt dispatch logic. Add ctags(1) keys for *a12*.h files. 1998-03-02 07:03:20 +00:00
ross 13aeff8570 Fix attachment message. 1998-03-02 06:59:38 +00:00
ross 1ada245647 Support attachment of xb and a12dc, define most of the remaining
core logic register fields.
1998-03-02 06:56:16 +00:00
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
fvdl d201db498e Remove accidentally enabled lfs_mountroot from vfsops struct. 1998-03-01 22:16:39 +00:00
fvdl 8c7c2ea123 Remove accidentally enabled mfs_mountroot from vfsops struct. 1998-03-01 22:16: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
veego 190f3ca410 Add two includes for the 'struct nfs_args' so it compiles again. 1998-03-01 17:37:32 +00:00
fvdl 46cd3245ee 1.3D -> 1.3E because of Lite2 import (was already done in sys/param.h,
forgot this one)
1998-03-01 16:32:33 +00:00
fvdl 7ba6a2daac Remove extraneous files from Lite2 merge. 1998-03-01 13:45:28 +00:00
fvdl 0485953099 Make this compile after the lite2 merge. 1998-03-01 13:22:55 +00:00
ross 94ae870894 Compile post-lite2 with #ifndef DIAGNOSTIC 1998-03-01 09:51:29 +00:00
ross 97251024c0 Compile post-lite2 when #ifndef DIAGNOSTIC 1998-03-01 09:35:52 +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
ross 331fee623e Sweep up some miscellaneous leftover lite2 integration shrapnel. 1998-03-01 07:15:39 +00:00
ross c6b14e94ad Add new type number received from IANA. Also, note the new home of
the IANA master list, post RFC1573.
1998-03-01 07:13:41 +00:00
fvdl 78447a3cfd Regen. 1998-03-01 02:29:59 +00:00
fvdl 9810527f1c Add NetBSD Id that got lost. 1998-03-01 02:27:49 +00:00
fvdl e5bc90f40c Merge with Lite2 + local changes 1998-03-01 02:20:01 +00:00
fvdl 1ad6fdb33f Some FSs have their *mount.h files exported now, make sure that they are
copied to the include dir.
1998-03-01 02:15:35 +00:00
fvdl e8d05f0741 Import 4.4BSD-Lite2 1998-03-01 02:12:49 +00:00
fvdl b50e39fa45 Import 4.4BSD-Lite for reference 1998-03-01 02:09:33 +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
pk 1fe6513796 Remove extraneous `$Id$' lines. 1998-02-28 20:43:28 +00:00
pk c0e247427a This driver is replaced by three i82586 front-end drivers: `ix', `ef' and `ai'. 1998-02-28 20:42:43 +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
cgd 4ae42be026 be a bit more clear about what protocols will be tried in the
BOOTP/DHCP case.
1998-02-28 01:45:01 +00:00
pk d22f956657 Remove `_NEW_I82586'. 1998-02-28 01:15:51 +00:00
pk 5bc7459ebd Remove `NEW_I82586' 1998-02-28 01:14:57 +00:00
pk 9698950530 * Remove `_NEW_I82586'.
* KNF.
* erase ghost spaces and tabs.
1998-02-28 01:14:15 +00:00
pk 472a1973af Remove `_NEW_I82586' tag; all drivers using this file have been converted. 1998-02-28 01:07:45 +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
pk a3a9cbc8c5 Replace the `ie' driver by three separate front-ends: `ix', `ef' and `ai'. 1998-02-27 23:54:16 +00:00
pk 22a8b1ae89 AT&T/StarLan i82586 front-end driver from Rafal Boni. 1998-02-27 23:52:34 +00:00
pk 82153cc305 3Com/3C507 i82586 front-end driver from Rafal Boni. 1998-02-27 23:51:52 +00:00
pk 9bb4839afd EtherExpress/16 i82586 front-end driver from Rafal Boni. 1998-02-27 23:50:51 +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
mycroft 64812254d6 Remove some duplicate definitions. 1998-02-27 13:17:25 +00:00
mycroft 8e5dbddc19 Regen. 1998-02-27 11:46:25 +00:00
mycroft 402ddee537 Add Macronix MX98713. 1998-02-27 11:45:51 +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 a5385186b1 regen 1998-02-25 21:30:36 +00:00
perry 56c01cbd82 change second parm of sysarch() from char * to void * 1998-02-25 21:24:56 +00:00
christos 66f05f52ec Add another 56K modem. 1998-02-25 13:18:50 +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
ross 081231b1ad Add dummy }} after comsoft() to keep ctags(1) bashing on. 1998-02-25 08:32:35 +00:00
chuck e308ffd825 compute st_map size properly 1998-02-24 19:01:59 +00:00
chuck cbd05b1537 be consistent about offsets in kernel objects. vm_map_min(kernel_map)
should always be the base [fixes problem on m68k detected by jason thorpe]

add comments to uvm_km.c explaining kernel memory management in more detail
1998-02-24 15:58:09 +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
mycroft d36067b120 Forcibly NUL-terminate the path name, just to be sure. 1998-02-24 07:14:17 +00:00
mycroft 64d86b5934 Minor style change. 1998-02-24 07:10:39 +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
mycroft 310f6fefc3 Several things:
Clean up the name space here a bit.
Add a `busname' element to struct ofprobe (now struct ofbus_attach_args), and
check against it.
Nuke `ofroot'.
Rename the `openfirm' attribute to `ofbus'.
1998-02-24 05:44:39 +00:00
cgd ccfe537e97 don't include <machine/pio.h>. It's unneeded here now (this code
uses the bus_space_* interfaces), and therefore unwanted.
1998-02-24 02:12:09 +00:00
thorpej 7198bb7811 Set the VM page size after clearing the BSS segment. 1998-02-23 20:05:09 +00:00
chuck 5ad9218203 fix uvm-related protection error: we can't write protect the
vmcmd_map_readvn() area until after we do vn_rdwr().  should fix
problem reported by sean doran.
1998-02-23 18:53:22 +00:00
thorpej a3a297cc40 Two purely cosmetic whitespace changes. 1998-02-23 18:45:44 +00:00
drochner 4f80f2803f Add a diagnostic panic() to catch attempts to call vm_page_unwire() with
an unmanaged page argument. This can lead to unpredictable results,
depending on the pmap interface (ie, MACHINE_[NEW_]NONCONTIG).
1998-02-23 14:37:00 +00:00
drochner 49c1580874 -make compile without BROKEN_INDIRECT_CONFIG
-don't include <machine/pio.h>
1998-02-23 14:12:18 +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 a81d3c2db8 Fix omission in last. 1998-02-22 15:24:08 +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
mycroft bf94e4e2cd Copy up. 1998-02-22 15:11:28 +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
hannken 1bb761e96f Didn't compile with option MEMORY_DISK_HOOKS. 1998-02-22 12:53:53 +00:00
scw ef52501a4f Implement changes for UVM. 1998-02-22 11:33:10 +00:00
mycroft 8a66afbcba Move random() from kernel. 1998-02-22 09:33:27 +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 8ad4f24f50 Add memcpy() and memset(), and sort. 1998-02-22 09:18:38 +00:00
mycroft 79376487cb Sync with libc. 1998-02-22 09:13:16 +00:00
mycroft 4477c62148 Add various things from libc. 1998-02-22 09:08:34 +00:00
mycroft 5ba0f1cae2 Move random.S from kernel. 1998-02-22 08:53:33 +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 0625ac391b Use the new .S files. 1998-02-22 08:45:04 +00:00
mycroft 799bd513de Sync with libc, and add random.S. 1998-02-22 08:43:27 +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