Commit Graph

538 Commits

Author SHA1 Message Date
jdolecek 6a6ee4aa91 cleanup way vers.c file is created/compiled 2000-07-08 15:40:53 +00:00
jdolecek 50dc07c081 get the version number differently - instead of using RCS version number
of version file, take version from last line of that file as the part from
start of the line to ':'
2000-07-08 15:36:05 +00:00
cgd a5c13f9ad4 Kwality control:
* put #includes of opt headers and headers to get protos used by
  net/netisr_dispatch.h in net/netisr.h (if !defined(_LOCORE)) (rather than
  in netisr_dispatch.h itself, and potentially nowhere, respectively).
* require netisr.h to be included before netisr_dispatch.h.
* minor additional cleanup of both netisr.h and netisr_dispatch.h.
* clean up uses to remove now-unnecessary header file inclusions, and
  local prototypes of the fns.
* convert netisr dispatch implementations which didn't use
  netisr_dispatch.h (pc532) to use it.
2000-07-02 04:40:33 +00:00
itojun d738f90fd7 raise MSIZE from 128 to 256.
- for sizeof(void *) == 8 arch, this is mandatory.  MHLEN is too small
  already (less than 80) and there are chances for unwanted packet loss due
  to m_pullup restriction.
- for other cases, the change should avoid allocating clusters in most cases
  (even when you have IPv4 IPsec tunnel, or IPv6 with moderate amount of
  extension header)

portmasters: if your arch chokes with the change (high memory usage or
whatever), please backout the change for your arch.
2000-06-30 17:55:11 +00:00
itojun d76ae83df8 add PULLDOWN_TEST for all the platforms.
XXX should be moved to somewhere else when stabilized
2000-06-30 17:10:15 +00:00
mrg ca5133d3fb remove include of <vm/vm.h>. <vm/vm.h> -> <uvm/uvm_extern.h> 2000-06-29 08:22:17 +00:00
kleink e695f72a2e Add <machine/int_types.h>, which provides namespace-pure definitions
of exact-width integer types.
2000-06-26 15:42:16 +00:00
mrg 2f159a1bac remove/move more mach vm header files:
<vm/pglist.h> -> <uvm/uvm_pglist.h>
	<vm/vm_inherit.h> -> <uvm/uvm_inherit.h>
	<vm/vm_kern.h> -> into <uvm/uvm_extern.h>
	<vm/vm_object.h> -> nothing
	<vm/vm_pager.h> -> into <uvm/uvm_pager.h>

also includes a bunch of <vm/vm_page.h> include removals (due to redudancy
with <vm/vm.h>), and a scattering of other similar headers.
2000-06-26 14:20:25 +00:00
simonb 889c658b5b Change the kernel mmap interface so that the offset to map is an
"off_t" and the return value is a "paddr_t" to allow mappings
at offsets past 2^31 bytes.  Somewhat inspired by FreeBSD, which
only changed the offset to a "vm_offset_t".

Includes updates for the i386, pc532 and sh3 mmmmap from Jason Thorpe.
2000-06-26 04:55:19 +00:00
fvdl 1ee7d22c0b Remove prefix construction for softdeps. Add SOFTDEP option to GENERIC. 2000-06-22 20:27:49 +00:00
veego 223d7455c7 Remove the obsolete config fragments for kernel crypto, because the IPsec
crypto code is now in the kernel source tree.
2000-06-14 22:02:13 +00:00
tsubai 1bfa0fc6b6 Add cpu_counter(). 2000-06-11 16:32:42 +00:00
soda 0f76c56f2d increase number of parameters of pckbc_cnattach(), since offset of command port
is not 4 (KBCMDP), but 1 on jazz based platforms of arc port.
2000-06-09 04:58:32 +00:00
cgd cffb580806 Implement the more flexiable `evcnt' interface as discussed (briefly) on
tech-kern and now documented in evcnt(9).
2000-06-04 19:14:14 +00:00
matt 9169d99f2a Don't pass booted_* to findroot/getdevice, access them via the globals.
Also, make findroot static.  This eliminates unneeded clearing of them
and make their use consistent among the ports.
2000-06-01 15:38:20 +00:00
matt c9aff328d9 Make booted_device global (and booted_parition for consitency).
Eliminate it from header files and other extern definitions.
2000-06-01 00:49:49 +00:00
cgd 47449a63d2 kill __P in these files. (I had to look at them anyway with an eye for
adding some protos... and adding them with __P seems wrong, but mixing
__P and not __P in the same file seems wrong too, so...)
2000-06-01 00:04:50 +00:00
thorpej 8c2d00aaeb Add a comment about needing to initialize p_cpu when multiple
processors are supported.
2000-05-31 05:09:14 +00:00
thorpej b3b7588160 Don't use sleep() and callouts; just use tsleep(). 2000-05-27 04:42:14 +00:00
thorpej a7d0570e67 First sweep at scheduler state cleanup. Collect MI scheduler
state into global and per-CPU scheduler state:

	- Global state: sched_qs (run queues), sched_whichqs (bitmap
	  of non-empty run queues), sched_slpque (sleep queues).
	  NOTE: These may collectively move into a struct schedstate
	  at some point in the future.

	- Per-CPU state, struct schedstate_percpu: spc_runtime
	  (time process on this CPU started running), spc_flags
	  (replaces struct proc's p_schedflags), and
	  spc_curpriority (usrpri of processes on this CPU).

	- Every platform must now supply a struct cpu_info and
	  a curcpu() macro.  Simplify existing cpu_info declarations
	  where appropriate.

	- All references to per-CPU scheduler state now made through
	  curcpu().  NOTE: this will likely be adjusted in the future
	  after further changes to struct proc are made.

Tested on i386 and Alpha.  Changes are mostly mechanical, but apologies
in advance if it doesn't compile on a particular platform.
2000-05-26 21:19:19 +00:00
thorpej 8964c35eca Introduce a new process state distinct from SRUN called SONPROC
which indicates that the process is actually running on a
processor.  Test against SONPROC as appropriate rather than
combinations of SRUN and curproc.  Update all context switch code
to properly set SONPROC when the process becomes the current
process on the CPU.
2000-05-26 00:36:42 +00:00
thorpej 463931b3ba Nuke dk_establish() from orbit except from those ports which still use
it to determine the boot device: mvme68k, pc532, macppc, ofppc.  Those
platforms should be changed to use device_register().  In the mean time,
those ports defined __BROKEN_DK_ESTABLISH.
2000-05-16 05:45:44 +00:00
hubertf 9f48bba3ae Add "install" target, so "make install" after building the kernel
does something useful.  The target can be redefined by putting a
install-kernel-${MACHINE_NAME} target that fits your needs into
/etc/mk.conf.
2000-05-09 00:56:21 +00:00
thorpej 6a33c86623 HAVE_GCC28 -> HAVE_EGCS, and make it match gcc 2.9 as well. Also,
make the use of -Wno-uninitialized explicit, don't rely on a compiler
hack to do it for us.
2000-05-09 00:32:19 +00:00
thorpej f51470a514 Require that each each MACHINE/MACHINE_ARCH supply a lock.h. This file
contains the values __SIMPLELOCK_LOCKED and __SIMPLELOCK_UNLOCKED, which
replace the old SIMPLELOCK_LOCKED and SIMPLELOCK_UNLOCKED.  These files
are also required to supply inline functions __cpu_simple_lock(),
__cpu_simple_lock_try(), and __cpu_simple_unlock() if locking is to be
supported on that platform (i.e. if MULTIPROCESSOR is defined in the
_KERNEL case).  Change these functions to take an int * (&alp->lock_data)
rather than the struct simplelock * itself.

These changes make it possible for userland to use the locking primitives
by including <machine/lock.h>.
2000-04-29 03:31:45 +00:00
thorpej 0cde36f780 Carve off the ISA configuration bits from the floppy driver. Driver is
still ISA-specific, but we can attach ISA instances with different
configuration mechanisms now.
2000-04-23 16:47:45 +00:00
itojun 3be41bae18 add stf pseudo interface (commented out due to possible security risks) 2000-04-19 06:50:27 +00:00
thorpej 6dd5a9db6e Use dev/isa/fd.c. 2000-04-07 16:35:19 +00:00
ws b7570cae85 Update several ports to at least work again without IPKDB
after the update of that.
Sorry for breaking this with my last changes :-(.
Fixes PR#9671 by Lennart Augustsson.
2000-03-24 17:05:30 +00:00
thorpej b667a5a357 New callout mechanism with two major improvements over the old
timeout()/untimeout() API:
- Clients supply callout handle storage, thus eliminating problems of
  resource allocation.
- Insertion and removal of callouts is constant time, important as
  this facility is used quite a lot in the kernel.

The old timeout()/untimeout() API has been removed from the kernel.
2000-03-23 06:30:07 +00:00
cgd 7c35662066 add commented out option PCI_CONFIG_DUMP whever there's a PCIVERBOSE. 2000-03-22 00:58:16 +00:00
tron e86957458a Install "machineendian_machdep.h". 2000-03-17 22:36:31 +00:00
mycroft 9e21b6555a In the `MY THAT'S GROSS' department...
Eliminate the recursive include of machine/endian.h from sys/endian.h.
2000-03-17 00:09:18 +00:00
darrenr 162b0b1dab __P(()) -> __P((void)) 2000-03-16 23:21:05 +00:00
oster 1bad2e1909 Add the RAIDframe device major to the machine-dependent config files
so that the right entries get added to dev_name2blk[].  Needed for / on RAID.
(Whoops!  I missed checking these in when adding the RAID_AUTOCONFIG stuff.)
2000-03-14 15:56:51 +00:00
thorpej a183d34f04 - Implement cnbell() -- ring the console bell. The cn_bell entrypoint
is optional.
- Add cn_bell to statically allocated consdevs as appropriate.
2000-03-06 21:36:05 +00:00
simonb 4eb55e447c Do the "<space><tab>" thing with the RAID_AUTOCONFIG option. 2000-02-29 06:32:20 +00:00
oster d9c47013b2 Defopt 'RAID_AUTOCONFIG'. Adding 'options RAID_AUTOCONFIG' turns on
the component auto-detection and auto-configuration of RAID sets.
Also, add "#options RAID_AUTOCONFIG" to the GENERIC config files.
2000-02-26 17:35:33 +00:00
erh 8f03b9a04a Define the DONETISR macro and use netisr_dispatch.h. This is to cut down on code duplication and to standardize the available NETISRs across all ports. 2000-02-21 20:38:46 +00:00
thorpej dded044fc2 Update for the NKMEMPAGES changes. 2000-02-11 19:25:12 +00:00
thorpej 52a2804a5c Add a new function call to the ISA DMA API: isa_dmamaxsize(), which returns
the maximum transfer size for the specified DMA channel.  Make all clients
of ISA DMA use this call to determine their maximum transfer size.
2000-02-07 22:07:27 +00:00
thorpej fe551f0e64 Fix a bug in disksort_*() which caused non-optimal ordering when multiple
active partitions were on a single spindle.  Add a b_rawblkno member to
struct buf which contains the non-partition-relative block number to sort
by.
2000-02-07 20:16:47 +00:00
tsutsui 11c8f56d48 Revert STRIPPROG -> STRIP 2000-02-01 05:25:24 +00:00
drochner 8eb798e603 define a "BUS_SPACE_MAP_PREFETCHABLE" flag which basically means that
device accesses are idempotent (but should not be cached by the CPU)
2000-01-25 22:13:17 +00:00
tron 04eb110431 Add "dependall" target for comfort. 2000-01-24 20:36:06 +00:00
hubertf 7e5ff67457 Add commented out "ident"-command 2000-01-23 23:46:04 +00:00
mycroft 7b49d242ce Clean up the machine symlink stuff ever so slightly. Needs to be
standardized between files.
2000-01-23 17:04:03 +00:00
thorpej 52242fdf9f Update for sys/buf.h/disksort_*() changes. 2000-01-21 23:28:59 +00:00
wrstuden 87e1b0f9b7 Add overlay to kernel configs. 2000-01-20 19:12:28 +00:00
thorpej a0397a2573 Move callout initialization to a single location; no need to duplicate
that code all over the place.
2000-01-19 20:05:30 +00:00
tsutsui e61f177ab1 STRIP -> STRIPPROG 2000-01-19 16:29:54 +00:00
danw 83cfcdd15a Add a special trap handler for EXC_ALI that saves dsisr and dar 2000-01-19 03:28:21 +00:00
msaitoh 0b9af6bdce check whether tv_usec >= 1000000 2000-01-19 02:52:16 +00:00
thorpej ce2b722aec No need to define MPC105 and MPC106 PCI products here. 2000-01-18 20:01:28 +00:00
thorpej c241e27b63 Use b_cylinder as defined in sys/buf.h 2000-01-18 19:37:58 +00:00
kleink 11e6c54cfc C99: Define a NAN macro in <math.h> which evaulates to a constant expression of
a single-precision quiet NaN; only to be defined on platforms that do support
this value.
1999-12-23 10:15:05 +00:00
thorpej a7f264fd2f Update for BATU()/BATL() changes. 1999-12-18 01:37:00 +00:00
danw a9d982e4f4 synchronize various changes to comments between these files to make it
even more obvious that they're 90% identical and really ought to be
using common code in arch/powerpc for a most of this...
1999-12-07 16:11:48 +00:00
drochner 0893832078 update for changed struct wsdisplay_accessops:show_screen signature.
no functional changes
1999-12-06 19:25:56 +00:00
ragge 0513268399 CL* discarding. 1999-12-04 21:13:19 +00:00
thorpej 4560ac465a Split the PC-like keyboard controller driver into chip back-end and
bus front-end.
1999-12-03 22:48:22 +00:00
sakamoto 816e27676c s/ELF32_HDR_SIZE/sizeof (hdr)/ 1999-12-03 15:44:41 +00:00
sakamoto 7a77d2bc71 add cast for pmap_extract(). 1999-12-03 15:43:47 +00:00
itojun e9a0023b37 bring in content of GENERIC.v6 into GENERIC.
remove GENERIC.v6 file (as it is part of GENERIC now).

"faith" interface is commented out by default as it is not really for
general use.
IPsec items are commented out as well, though we can enable "options IPSEC"
without export-related issue ("options IPSEC" will enable authentication
portion only).  We may need to think about it again.

if you have problem compiling with INET6 on archs I do not have access to,
please contact me.

XXX what to do with arch/arm32/SHARK{,.v6}?
1999-11-21 14:00:37 +00:00
kleink eac5784583 Move signal management code common to all PowerPC platforms (sendsig(),
sigreturn(), sigcode) to a single place in the shared powerpc directory.
(The struct sigcontext etc. definitions were already being shared.)
1999-11-17 14:56:10 +00:00
fvdl 8bec119fcc Add commented out option SOFTDEP to all GENERIC kernels. 1999-11-15 19:10:44 +00:00
fvdl d116707af0 Add
prefix ../gnu/sys
cinclude "conf/files.softdep"
prefix

to all std.* files, so that soft dependencies can be activated using
"options SOFTDEP".
1999-11-15 19:00:25 +00:00
thorpej 1946167939 Update for pmap_enter() API change. No functional difference. 1999-11-13 00:30:26 +00:00
kleink 522cbf0248 Update to match new SVR4-style definition names in <sys/exec_elf.h>. 1999-10-25 13:55:06 +00:00
thorpej 11cae42531 Centralize the declaration and clearing of `cold'. 1999-09-17 19:59:35 +00:00
thorpej 3b01d1b872 Rename the machine-dependent autoconfiguration entry point `cpu_configure()',
and rename config_init() to configure() and call cpu_configure() from there.
1999-09-15 18:10:33 +00:00
thorpej 2cf3330a1b Garbage-collect reference to <sys/dmap.h>. 1999-08-23 22:29:37 +00:00
thorpej 28fb7c1eb8 Define cpu_number() as discussed on tech-smp. 1999-08-10 21:08:05 +00:00
thorpej eb20bbc780 Change the semantics of splsoftclock() to be like other spl*() functions,
that is priority is rasied.  Add a new spllowersoftclock() to provide the
atomic drop-to-softclock semantics that the old splsoftclock() provided,
and update calls accordingly.

This fixes a problem with using the "rnd" pseudo-device from within
interrupt context to extract random data (e.g. from within the softnet
interrupt) where doing so would incorrectly unblock interrupts (causing
all sorts of lossage).

XXX 4 platforms do not have priority-raising capability: newsmips, sparc,
XXX sparc64, and VAX.  This platforms still have this bug until their
XXX spl*() functions are fixed.
1999-08-05 18:08:08 +00:00
thorpej a843b027bd Sync w/ the i386 port. Fixes some bugs in the conventional interrupt
heirarchy.  Reviewed by sakamoto@netbsd.org.
1999-08-01 07:52:22 +00:00
augustss f641c4b3b6 Make two wsmux pseudo devices and add mux locators. 1999-07-29 19:36:58 +00:00
augustss 3652732791 Add wsmux device.
(Also add lots of missing chrtoblktbl[] entries.)
1999-07-29 19:14:35 +00:00
augustss a7cd454b1d It's time to be COMPAT_14. 1999-07-29 10:37:12 +00:00
cgd f886376518 be more efficient when doing the SYSTEM_LD_TAIL for -g kernels: don't
copy them just to strip them, use strip -o.
1999-07-26 05:20:44 +00:00
thorpej 0945bf58b0 Add examples for including the kernel crypto bits from either crypto-us
or crypto-intl, commented out, with instructions to use only one, and
adjust the prefix as necessary.
1999-07-09 18:55:33 +00:00
mrg ecdad0ec33 clean up a bit after jason :)
- fix emitrules() like emitfiles() to deal with the prefix (otherwise it
  would attempt to find the file in the normal base for the NORMAL_C rule).
- add emitincludes() which adds include directives for each prefix to the
  $INCLUDES variable in the makefile.
- add %INCLUDES to each Makefile.arch to deal with the above.

this makes "prefix" actually work in a usable manner, and now i can move
on to fixing compiler warnings (errors) in the ESP code. :)
1999-07-09 09:52:55 +00:00
thorpej b2781586c4 Normalize include paths. 1999-07-09 02:32:28 +00:00
thorpej 3ebbe095e0 Change the pmap_extract() interface to:
boolean_t pmap_extract(pmap_t, vaddr_t, paddr_t *);
This makes it possible for the pmap to map physical address 0.
1999-07-08 18:05:21 +00:00
sakamoto 0ef2d3f6e2 MD defines for the MI loadfile. 1999-07-02 15:36:51 +00:00
sakamoto f789d4809c Fix arg of delay. int -> unsigned int 1999-07-02 15:33:36 +00:00
itojun 5effafcaa6 kernel configuration for IPv6/IPsec. should be in GENERIC in the future.
(source code will be committed soon)
1999-07-01 07:00:12 +00:00
itojun 427639cdce - Call ip6intr if INET6 is defined.
- remove "need-flag" for mac68k esp driver, as it is not used in anywhere
  and conflicts with IPsec ESP header.

This should be the only MD change in IPv6 support, except kernel config file.
Very sorry if you have any compilation problem with it (I believe it is okay).
If your favorite arch is not included in here, please add a
call to ip6intr() from softintr handle.
1999-06-28 08:20:40 +00:00
sakamoto 8b9b340040 remove display.h 1999-06-28 02:44:49 +00:00
sakamoto 0d8aecad83 Description of making bootable floppy disk for NetBSD/bebox. 1999-06-28 02:19:37 +00:00
sakamoto d897c73dfc correct tgets loop. 1999-06-28 01:35:11 +00:00
sakamoto d32f22724c Use loadfile.
KNF
b* -> mem*
1999-06-28 01:20:43 +00:00
sakamoto a6ad37379e Add elf2pef and mkbootimage. 1999-06-28 01:08:05 +00:00
sakamoto 70b8755876 Convert ELF image into PEF image.
some KNF
1999-06-28 01:03:55 +00:00
sakamoto 9b0b219ff6 Moved from /cvsroot/syssrc/sys/arch/bebox/stand/boot/pef.h,v 1999-06-28 00:56:31 +00:00
sakamoto 8ab4e1005a Moved to /cvsroot/syssrc/sys/arch/bebox/stand/elf2pef/pef.h,v 1999-06-28 00:56:30 +00:00
sakamoto e6fae19e1f Moved from /cvsroot/syssrc/sys/arch/bebox/stand/boot/magic.h,v 1999-06-28 00:56:03 +00:00
sakamoto 52fc791782 Moved to /cvsroot/syssrc/sys/arch/bebox/stand/elf2pef/magic.h,v 1999-06-28 00:56:02 +00:00
sakamoto f1be5c4181 Moved to /cvsroot/syssrc/sys/arch/bebox/stand/elf2pef/elf2pef.c,v 1999-06-28 00:51:11 +00:00
sakamoto 13ba815119 Moved from /cvsroot/syssrc/sys/arch/bebox/stand/boot/elf2pef.c,v 1999-06-28 00:51:10 +00:00
sakamoto 5b75eca570 mkbootimage makes bootable BeOS DR8 filesystem(a.k.a. obfs) image. 1999-06-28 00:35:22 +00:00
sakamoto b1790e3799 Sync with i386. 1999-06-25 01:54:39 +00:00
sakamoto 129b091aa8 Use powerpc's header. 1999-06-24 01:35:33 +00:00
sakamoto cce254bef2 Add some declarations. 1999-06-24 01:33:08 +00:00
sakamoto 4364147a17 include machine/intr.h
CACHELINESIZE enabled with defined(_STANDALONE).
1999-06-24 01:28:02 +00:00
sakamoto 943b8c34be Sync with i386's fd.c, fdreg.h. 1999-06-24 01:22:19 +00:00
sakamoto fb1608de31 Comment out MKDEP SFILES. bebox dir has only locore.s.
include bsd.own.mk.
1999-06-24 01:19:51 +00:00
sakamoto dfb8f015ec display.h doubly exists in include and include/pc. 1999-06-24 01:16:52 +00:00
sakamoto 95dac23012 Some cleanup.
Move bootinfo related things to boot.c
and console related things to cons.c.
1999-06-24 01:10:31 +00:00
sakamoto a9088f55c8 Add casts for -Wall. 1999-06-22 02:04:06 +00:00
sakamoto 40629ff8cc rename pms to opms. 1999-06-22 01:48:33 +00:00
sakamoto 4763a9b0a0 Remove sc_id member from fdc_softc. 1999-06-22 01:41:48 +00:00
sakamoto f93507970d Use powerpc/reg.h 1999-06-22 01:39:43 +00:00
sakamoto ade7d52fc9 Use powerpc/pmap.h. 1999-06-22 01:38:38 +00:00
cgd 7c02d93c04 nuke current definitions provided by __BUS_SPACE_COMPAT_OLDDEFS.
I'll do what I can to make new ones soon.  8-)
1999-06-18 04:49:24 +00:00
thorpej 0288ffb53a pmap_change_wiring() -> pmap_unwire(). 1999-06-17 19:23:20 +00:00
thorpej 2c35c7bd03 Only declare block major numbers for devices which can be the root device. 1999-06-07 20:31:27 +00:00
thorpej d76e7b8c6d Don't pass a nam2blk around at all; just have setroot() and friends reference
dev_name2blk[] directly.  Addresses PR #7622 (ITOH Yasufumi), although
in a different way.
1999-06-07 20:16:08 +00:00
thorpej 2580d306ab Change the vm_map's "entries_pageable" member to a r/o flags member, which
has PAGEABLE and INTRSAFE flags.  PAGEABLE now really means "pageable",
not "allocate vm_map_entry's from non-static pool", so update all map
creations to reflect that.  INTRSAFE maps are maps that are used in
interrupt context (e.g. kmem_map, mb_map), and thus use the static
map entry pool (XXX as does kernel_map, for now).  This will eventually
change now these maps are locked, as well.
1999-05-26 19:16:28 +00:00
thorpej 5832084eaf bus_dmamem_map() maps DMA safe memory, which is usually one or more
managed pages, into KVA space.  Since the pages are managed, we should
use pmap_enter(), not pmap_kenter_pa().

Also, when entering the mappings, enter with an access_type of
VM_PROT_READ | VM_PROT_WRITE.  We do this for a couple of reasons:

	(1) On systems that have H/W mod/ref attributes, the hardware
	    may not be able to track mod/ref done by a bus master.

	(2) On systems that have to do mod/ref emulation, this prevents
	    a mod/ref page fault from potentially happening while in an
	    interrupt context, which can be problematic.

This latter change is fairly important if we ever want to be able to
transfer DMA-safe memory pages to anonymous memory objects; we will need
to know that the pages are modified, or else data could be lost!

Note that while the pages are unowned (i.e. "just DMA-safe memory pages"),
they won't consume any swap resources, as the mappings are wired, and
the pages aren't on the active or inactive queues.
1999-05-25 23:14:03 +00:00
lukem e4a87aa1a9 * convert to using MI allocsys(). most ports were using an MD allocsys(),
although a couple still used the old pre-4.4-lite (?) mechanism.
* use format_bytes() to format the various printf()s that print out memory sizes
1999-05-20 08:21:42 +00:00
ws 5423093850 Modify syncicache on PowerPC from an inline to a real function.
Support different cache line sizes with the same object code in userland.
While here, move the function to implementation name space.
1999-04-17 21:16:45 +00:00
thorpej e49833cd68 Now that we have direct-mapped pool pages, we can garbage-collect VM_MBUF_SIZE
and don't need to allocate mb_map.
1999-04-16 21:47:11 +00:00
chs f455dd6596 add a `flags' argument to uvm_pagealloc_strat().
define a flag UVM_PGA_USERESERVE to allow non-kernel object
allocations to use pages from the reserve.
use the new flag for allocations in pmap modules.
1999-04-11 04:04:04 +00:00
thorpej 967b8c433c Don't call configure() from cpu_startup(). 1999-04-01 00:17:45 +00:00
mycroft 9c6b797796 Changes for modified pmap_enter() API:
* Map the message buffer with access_type = VM_PROT_READ|VM_PROT_WRITE `just
  because'.
* Map the file system buffers with access_type = VM_PROT_READ|VM_PROT_WRITE to
  avoid possible problems with pagemove().
* Do not use VM_PROT_EXEC with either of the above.
* Map pages for /dev/mem with access_type = prot.  Also, DO NOT use
  pmap_kenter() for this, as we DO NOT want to lose modification information.
* Map pages in dumpsys() with VM_PROT_READ.
* Map pages in m68k mappedcopyin()/mappedcopyout() and writeback() with
  access_type = prot.
* For now, bus_dma*(), pmap_map(), vmapbuf(), and similar functions still use
  access_type = 0.  This should probably be revisited.
1999-03-26 23:41:25 +00:00
mrg 7b93dd1117 remove opt_uvm.h 1999-03-25 00:41:46 +00:00
mrg ca5f9685bb clean up kernel/config files files for machVM lossage. 1999-03-24 06:06:09 +00:00
mrg d2397ac5f7 completely remove Mach VM support. all that is left is the all the
header files as UVM still uses (most of) these.
1999-03-24 05:50:49 +00:00
drochner 76fa1751fe Add a macro to check for sufficient pointer alignment in bus.h context,
"BUS_SPACE_ALIGNED_POINTER()".
Equal to the param.h "ALIGNED_POINTER()" normally, but obeys additional
requirements of the bus_space_xxx_n() macros. (BUS_SPACE_DEBUG)
1999-03-23 21:29:03 +00:00
thorpej 63b6321834 VM_MBUF_SIZE is in terms of MCLBYTES, not CLBYTES. 1999-03-23 00:31:59 +00:00
cgd f822fd675f Moved to arch/bebox/include/isa_machdep.h,v 1999-03-19 05:02:03 +00:00
cgd a4033465f4 Moved from arch/bebox/isa/isa_machdep.h,v 1999-03-19 05:02:02 +00:00
cgd d00106ee06 if you pull in isavar.h, you don't need isa_machdep.h. 1999-03-19 04:58:45 +00:00
cgd 8649cea317 Moved to arch/bebox/include/pci_machdep.h,v 1999-03-19 03:36:07 +00:00
cgd 99633b3ef3 Moved from arch/bebox/pci/pci_machdep.h,v 1999-03-19 03:36:06 +00:00
cgd 190d23ee40 Moved to arch/bebox/include/isapnp_machdep.h,v 1999-03-19 03:18:34 +00:00
cgd 0af0341ff6 Moved from arch/bebox/isa/isapnp_machdep.h,v 1999-03-19 03:18:33 +00:00
sommerfe bc533621ed defopt MINIROOTSIZE 1999-03-17 18:59:21 +00:00
sakamoto a6a228ce7f RCS ID police 1999-02-15 04:38:06 +00:00
lukem dcab0210a0 convert from NOxxx= to MKxxx=no.
include <bsd.own.mk> if testing a MKxxx variable.
1999-02-13 02:54:17 +00:00
thorpej cb8268a3a5 Use <sys/disklabel_mbr.h>. 1999-01-27 21:00:05 +00:00
drochner 6fe2522d57 second round of mouse renaming: psm->pms 1999-01-23 16:10:47 +00:00
chuck 32244a5a1a MNN is now the default 1999-01-16 20:13:17 +00:00
thorpej 8922647c58 Some minor, mostly costmetic, changes to CPPFLAGS/CFLAGS. 1999-01-15 23:37:05 +00:00
bouyer dc306354b0 Move the bswap functions from libutil to libc (this bups the
minor of libc and the major of libutil). For little-endian architectures
merge the bnswap() assembly versions with nto* and hton* using symbols
aliasing. Use symbol renaming for the bswap function in this case to avoid
namespace pollution.
Declare bswap* in machine/bswap.h, not machine/endian.h. For little-endian
machines, common code for inline macros go in machine/byte_swap.h
Sync libkern with libc.
Adjust #include in kernel sources for machine/bswap.h.
1999-01-15 13:31:15 +00:00
drochner 35eeb3f1cd remove dummy "load_font" entries 1999-01-11 21:54:22 +00:00
thorpej e598335d1c Garbage-collect `mbutl'. 1999-01-09 22:10:12 +00:00
augustss fc5f9ee81d Add -Wpointer-arith warning since `void *' arithmetic is not ANSI C. 1999-01-08 19:26:12 +00:00
thorpej 7fa243e59e Pass the symbol table size, like a.out. 1998-12-04 20:22:36 +00:00
sakamoto 0bba7a7eca Not used. 1998-12-04 00:17:49 +00:00
hwr 59acb69be1 Add (commented out) 'gre' pseudo device line. Feedback is welcome.
Inspired by Klaus Klein.
1998-11-25 20:30:44 +00:00
sakamoto 28c9fd0c8c Fix no check for negative offset in mmap. 1998-11-24 06:34:10 +00:00
mrg db3051d720 fix problems in many d_mmap routines:
- returned EOPNOTSUPP rather than -1.
	- no check for negative offset.
many of these fix potential security problems in these drivers.


XXX XXX XXX
the d_mmap cdev routine should be changed to have a prototype like:
	paddr_t (*d_mmap) __P((dev_t, off_t, int));

by someone!
1998-11-19 15:38:20 +00:00
sakamoto d8d1762a15 Support frame buffer console initialized by the BootRom of the BeBox. 1998-11-18 09:05:18 +00:00
oster cf5710c839 Added a (commented out) configuration line for the RAIDframe device driver. 1998-11-16 16:44:55 +00:00
oster c74d32c5fc Updating of bdev's and cdev's to support RAIDframe. 1998-11-13 04:47:03 +00:00
sakamoto 7b111b4229 Support frame buffer console with Matrox Millennium(probably, and II).
But, NetBSD/bebox kernel doesn't support yet.
1998-10-28 02:47:35 +00:00
sakamoto 709dd80ed0 Support frame buffer console initialized by the BootRom of the BeBox.
But, NetBSD/bebox kernel doesn't support yet.
1998-10-26 00:45:47 +00:00
tron b296275bb4 Defopt SYSVMSG, SYSVSEM and SYSVSHM. 1998-10-19 22:09:13 +00:00
drochner 2468738337 change handling of libkern:
-sys/lib/libkern builds as library per default (as it was documented all
 the time)
-ports able to LKM set "KERN_AS=obj" explicitely in their Makefiles
 (for now; should depend on actual "option LKM" or -better- functions
 included for LKM use should be pulled in by a stub)
-always link libcompat before libkern - libkern stuff can be referred to
 by libcompat, but not the other way
1998-10-15 18:37:13 +00:00
thorpej 908cdfe4e3 Add scsibus entry points to the cdevsw[]. 1998-10-10 02:00:49 +00:00
sakamoto 72e565d9b1 Fix unassigned minaddr for uvm_km_suballoc.
Eliminate space at end of line, and so on.
1998-10-06 03:48:12 +00:00
sakamoto c9937d0234 cleanup. 1998-10-05 02:01:57 +00:00
sakamoto 9f317a1a9d Add syncicache after text loading. 1998-10-05 01:58:03 +00:00
thorpej 49a45fed9b If the memory range of the machine is such that no bouncing is necessary,
or if the device is capable of 32-bit DMA (specified by ISABUS_DMA_32BIT),
clear the map's bounce threshold at map creation time.
1998-10-03 21:53:04 +00:00
thorpej 01a1588265 Initialize the DMA map's bounce threshold to the tag's at map creation time,
and use the map's threshold when loading the map.
1998-10-03 21:38:48 +00:00
thorpej 10557b15d7 Add a private bounce threshold to the DMA map, initialized in a bus-dependent
fashion.
1998-10-03 21:24:00 +00:00
sakamoto fd24065cb5 pcvt is no longer used with bebox. 1998-09-28 09:49:49 +00:00
sakamoto 4a04e5038e pcvt is no longer used with bebox. 1998-09-28 09:33:12 +00:00
thorpej 2671c2fa42 Make bus_dmamap_load_uio() work, from Kevin Lahey <kml@nas.nasa.gov>. 1998-09-21 22:51:56 +00:00
mycroft fa31b94af9 Fix omission in previous; remember to record that we're on the signal stack. 1998-09-13 11:57:58 +00:00
thorpej c7d391b23c Make signal delivery work again. 1998-09-13 09:15:51 +00:00
thorpej 8abe0d6b1c Adjust for the new "reaper" kernel thread: do not free the vmspace and
u-area in machine-dependent code.  Instead, call exit2() to schedule
the reaper to free them for us, once it is safe to do so (i.e. we are
no longer running on the dead proc's vmspace and stack).
1998-09-09 00:07:48 +00:00
christos 449820f2ea Assign copyright to TNF. 1998-09-05 15:28:04 +00:00
lukem c9db84ecc9 distclean is a synonym for cleandir 1998-09-05 15:15:14 +00:00
sakamoto 9b0803da20 Use UVM by default. 1998-09-03 01:43:34 +00:00
sakamoto 64b0761e4d Include bsd.subdir.mk instead of bsd.prog.mk. 1998-09-01 08:43:48 +00:00
sakamoto 67d65cd631 Sync with i386/include/bus.h. 1998-09-01 05:57:23 +00:00
sakamoto 0bbf57d7ec Eliminate ovbcopy define. 1998-09-01 05:55:14 +00:00
sakamoto 62ed825858 vm_offset_t --> [pv]addr_t. 1998-08-24 01:40:26 +00:00
thorpej fb0cc46daf Internal cleanup. 1998-08-17 22:30:08 +00:00
mycroft d07b3639a4 Assign my copyrights to TNF. 1998-08-15 17:47:15 +00:00
mycroft 228f894ea2 This code was written by Jason. 1998-08-15 10:38:03 +00:00
mycroft 6dc903202f Assign my copyrights to TNF. 1998-08-15 10:10:47 +00:00
mycroft cc8a78e783 Assign my copyrights to TNF. 1998-08-15 04:42:42 +00:00
mycroft df9baf2311 Assign copyrights to TNF. 1998-08-15 03:51:30 +00:00
mycroft 6d3d8a1350 Make copyright notices with my name consistent. 1998-08-15 03:02:31 +00:00
eeh a2dd74ed79 Merge paddr_t changes into the main branch. 1998-08-13 02:10:37 +00:00
thorpej 46c7e2fa53 ISA PnP goo. 1998-07-31 04:55:30 +00:00
thorpej 2e33e4c2fa First-cut support for ISA PnP for NetBSD/bebox. 1998-07-31 04:54:38 +00:00
perry c4fae2a286 NORVEGIAN -> NORWEGIAN 1998-07-27 23:52:49 +00:00
is 6054d626f9 Switching dev/ic/lpt.c to use spllpt() instead of spltty(). It doesn't use
tty structures, and on some machines (namely the DraCo internal lpt, and some
multi-i/o boards for Amigas and DraCos), tying spltty to the pretty high printer
interupt level would hurt serial performance.

On all affected ports but Amiga, spllpt() has been defined in machine/intr.h
to be spltty(), thus preserving old behaviour. Portmasters are encouraged to
change is, if they feel something else is better (e.g., one of its own were
possible).
1998-07-18 21:27:25 +00:00
thorpej 2fc1260cc0 Implement bus_dmamap_load_uio(). 1998-07-17 21:09:59 +00:00
thorpej 8f2575ec87 Use fixed-size types. 1998-07-07 04:29:42 +00:00
jonathan d275e56dee * defopt COMPAT_{09,10,11,12,13} and COMPAT_NOMID.
TODO: revisit interaction between native compat and emul compat usage.
1998-07-05 08:49:30 +00:00
jonathan 011f2bda08 defopt NS, NSIP. 1998-07-05 06:49:00 +00:00
jonathan 5c0c5dd0b4 defopt ISO TPIP. 1998-07-05 04:37:35 +00:00
jonathan 8db0fcdbf7 defopt CCITT. 1998-07-05 02:12:22 +00:00
jonathan 3751946b97 defopt INET, NETATALK. 1998-07-05 00:51:04 +00:00
jonathan 466e784ee1 defopt DDB. 1998-07-04 22:18:13 +00:00
lukem bd8d501f7e remove options FIFO; it's now the default 1998-06-26 01:53:43 +00:00
thorpej 816e12eac2 defopt COMPAT_SVR4 1998-06-26 00:07:06 +00:00
sommerfe 446beb9dc4 defopt COMPAT_386BSD_MBRPART into opt_mbr.h 1998-06-22 21:12:51 +00:00
cgd 651b44e211 Rework the way kernel include files are installed. In the new method,
as with user-land programs, include files are installed by each directory
in the tree that has includes to install.  (This allows more flexibility
as to what gets installed, makes 'partial installs' easier, and gives us
more options as to which machines' includes get installed at any given
time.)  The old SYS_INCLUDES={symlinks,copies} behaviours are _both_
still supported, though at least one bug in the 'symlinks' case is
fixed by this change.  Include files can't be build before installation,
so directories that have includes as targets (e.g. dev/pci) have to move
those targets into a different Makefile.
1998-06-12 23:22:30 +00:00
thorpej 02182100df Use config_defer(). 1998-06-09 18:49:33 +00:00
sakamoto 949c52c154 add address conversion macro for MPC105 and some fix. 1998-06-09 05:53:30 +00:00
sakamoto 040581ceed Add UVM support. 1998-06-09 05:41:19 +00:00
thorpej 680a3d77f4 Add isa_dma{freeze,thaw}(), used to temporarily stop and then restart
all ISA DMA.  Needed by e.g. the SmartCard reader for Sharks.
1998-06-09 01:04:17 +00:00
thorpej f194cb8705 Provide an isa_chipset_tag_t to children. 1998-06-09 00:10:27 +00:00
thorpej 0b76aff07b Change the ISA DMA API to take an isa_chipset_tag_t rather than
a struct device * corresponding to the ISA bus device.  The ISA DMA
controller driver functions have been renamed and now take a struct
isa_dma_state *, and are called indirectly by machine-dependent code
which provides the DMA state.

These changes allow e.g. `ofisa' (the OpenFirmware configuration
mechanism for the ISA bus, used by e.g. Sharks) to use the MI ISA
DMA controller code.
1998-06-09 00:10:02 +00:00
thorpej eddb2f4269 Adjust for change to the ISA DMA API. 1998-06-09 00:09:43 +00:00
lukem 8fb1228bc8 everything has bugs; either document them or don't bother with a BUGS section 1998-06-08 13:02:19 +00:00
lukem ed25dc5c57 if there's no known bugs, don't have a BUGS section 1998-06-08 11:35:10 +00:00
lukem cd2f6e9504 remove unnecessary paragraph separator 1998-06-08 11:34:41 +00:00
lukem d719a4221f if there's no known bugs, don't have a BUGS section 1998-06-08 11:34:04 +00:00
thorpej f8acb6d6fa Sync w/ i386 port:
Eliminate some needless indirection through ISA DMA front-end functions.
1998-06-03 21:55:26 +00:00
thorpej 52450409d6 Sync w/ i386 port:
Implement bounce buffers for mbufs.

Also, correct copyright snafus, and a forgot-o left over from a commit
I made yesterday.
1998-06-03 21:52:36 +00:00
thorpej 28486ff301 Remove the _cookie member of the DMA tag; it's not used by anything. (This
was already done to the i386 port.)
1998-06-03 06:47:41 +00:00
thorpej 7b37a276e2 Sync w/ i386 port:
Optimize the ISA DMA map load somewhat; don't traverse the buffer twice.
Instead, just attempt to do a normal load first.  If we exceed the bounce
threshold or the number of segments, then we bounce the transfer.
1998-06-03 06:43:04 +00:00
thorpej 6ffa35b390 Sync w/ i386 port:
When loading a DMA map, if the page's physical address exceeds the bounce
threshold, return an error to the caller (the caller will attempt to
bounce the transfer).
1998-06-03 06:41:51 +00:00
thorpej b5c2ecc231 Sync w/ i386 port:
Add a `bounce threshold' to the i386 DMA tag.
1998-06-03 06:40:45 +00:00
thorpej 2e846b8c1e Sync w/ i386 port. 1998-06-03 04:20:22 +00:00
thorpej a7f360c6c9 Specify a non-profiling C rule. 1998-05-31 23:25:41 +00:00
drochner 0c05b92da1 pull in new PC display headers 1998-05-28 16:59:31 +00:00
sakamoto 45439ad32b Use new PowerPC-generic stuff(sys/arch/powerpc). 1998-05-28 08:44:56 +00:00
kleink a97fc2f180 If any of _ANSI_SOURCE, _POSIX_C_SOURCE or _XOPEN_SOURCE are defined, don't
provide any identifiers other than sig_atomic_t.
1998-05-25 20:59:01 +00:00
thorpej 6626878e7b It is no longer necessary for pmap_pinit() and pmap_release() to be
pmap interface functions, as NetBSD no longer uses statically allocated
pmaps (except for the kernel pmap, which is special-cased anyhow).
1998-05-19 19:00:11 +00:00
kleink 687ea7404c Fix some arithmetics lossage on typeless pointers. 1998-05-08 16:55:15 +00:00
kleink aa36ad1f55 Fix some arithmetics lossage on typeless pointers. 1998-05-07 21:01:41 +00:00
thorpej 1686aca01d Pull in opt_gateway.h as appropriate. 1998-04-29 23:11:00 +00:00
kleink a53c1863fe Provide definitions for intptr_t and uintptr_t, signed resp. unsigned integral
types large enough to hold any pointer.
1998-04-27 17:39:10 +00:00
sakamoto 9880e1560f Back out the changes about NVGA. It's not necessary. 1998-04-20 12:24:03 +00:00
sakamoto 90bb94019a Use NVGA_ISA and NVGA_PCI instead of NVGA
for ISA/PCI frontend of vga.c.
1998-04-20 05:27:41 +00:00
drochner f44d3a08e5 "spkr" is now MI. Keep this file for compatibility. 1998-04-15 21:53:47 +00:00
drochner ebefb51112 cdev_{wsdisplay,spkr}_init() are now in sys/conf.h 1998-04-15 21:52:14 +00:00
drochner abce54eaa2 spkr stuff is now in sys/conf.h 1998-04-15 21:48:51 +00:00
drochner 70702ea730 "spkr" attaches to "pcppi" now. 1998-04-15 21:46:23 +00:00
drochner 37db4134a0 VGA and spkr are now MI. 1998-04-15 21:44:39 +00:00
tv b21bfbde11 Add -Wno-main conditional on compiler being gcc 2.8 or egcs. (This adds
a HAVE_GCC28 check-variable that can now be used to add other gcc-2.8
flags in cases where they may be useful, or to remove gcc 2.7.2 "bug
workaround" flags.)
1998-04-12 23:47:41 +00:00
tv 482063559a .y.c <sys.mk> rule fixes. Don't create a y.tab.h file unless asked for,
and use smarter creation of the header file.
1998-04-09 00:32:31 +00:00
sakamoto 2467110095 Change commented out default baudrate(38400 to 9600) of serial console. 1998-03-27 00:11:07 +00:00
sakamoto 94a783a350 allow use of new wscons code. 1998-03-27 00:07:53 +00:00
sakamoto f9133e686e Change default console. pc -> wscons 1998-03-26 23:51:08 +00:00
sakamoto 6143f6a20e Allow to use the new VGA and keyboard controller drivers as console 1998-03-26 23:45:59 +00:00
sakamoto a46fb646ee add entries for the new wscons stuff 1998-03-26 23:43:43 +00:00
sakamoto a81efa33bc tell drivers that this port knows about the new wscons code
(and generates the NWSCONS etc include files)
1998-03-26 23:42:53 +00:00
sakamoto 3334a0d040 Add bus_space_copy_region_N(). 1998-03-26 23:41:51 +00:00
mycroft 0dae91d9af Eliminate uses of TS_WOPEN in hard-wired devices. 1998-03-21 22:52:59 +00:00
bouyer 9f50fca1fd Add commented out "options FFS_EI" 1998-03-18 16:34:41 +00:00
mikel 415c4a15df duplicate i386 fixes (q.v.) 1998-03-04 07:20:13 +00:00