Commit Graph

1851 Commits

Author SHA1 Message Date
kleink a7c20e5788 Add definitions of C99 integer constant macros. 2001-04-14 22:38:33 +00:00
kleink 7affdab52e Add definitions of C99 minimum-width and greatest-width integer types.
XXX Fastest minimum-width integer types haven't been decided upon yet.
2001-04-14 12:19:49 +00:00
thorpej bf2dcec4f5 Remove the use of splimp() from the NetBSD kernel. splnet()
and only splnet() is allowed for the protection of data structures
used by network devices.
2001-04-13 23:29:55 +00:00
tron 824065dc0a Don't call "is_a1200()" again after its result was stored in the "softc"
structure.
2001-04-07 05:09:27 +00:00
tsutsui 7f28cbe9dc Fix an obvious typo. 2001-03-28 17:33:07 +00:00
lukem 20ba07f2fe - add dev_noimpl(xxx,yyy) macro to replace "(dev_type_xxx((*))) yyy",
and use appropriately

- create more helper macros:
   . cdev__xyz_init(c,n), such as cdev__ocri_init() for
     /* open, close, read, ioctl */, etc.
   . cdev__xRy_init(c,n), where nullop is used instead of enodev to dummy out
     method `R' and the comments now read /* xxx (read) yyy */ instead
   . cdev__xyz_t_init(c,n,t) - as per cdev__xyz_init, but sets d_type = t
     as well

- use seltrue instead of dev_noimpl(poll,*), as (IIRC) cdevsw.d_poll should
  always DTRT WRT returning a valid result.  (a few devices previously
  incorrectly returned ENODEV)

- use dev_noimpl(stop,enodev) instead of dev_noimpl(stop,nullop) if tty
  == 0, because it doesn't matter if dev_type_stop isn't implemented in that
  case, and it allows the use of the cdev__xyz_init macros. certain ports
  (sparc,sparc64,x68k) used the nullop method for dev_type_stop in a few
  drivers, whereas everything else uses enodev

- ensure that the comments are accurate WRT the behaviour of a given entry
2001-03-26 12:33:22 +00:00
is 0e72b76163 Missing changes to the last update, making this compile (and work) again. 2001-03-25 16:14:00 +00:00
martin 478c6ce6b9 Adjust to new hardware driver <-> isdn layer 2 and above sheme. 2001-03-24 12:45:15 +00:00
lukem 9f60674a47 now that duplicated stuff has been moved to sys/conf.h, remove unnecessary
defs for: lpt, joy, pc
2001-03-21 23:42:14 +00:00
lukem 723cd818d8 move duplicate definitions for:
pc, lpt, joy, ocis, apm, satlink, i4bctl, i4brbch, i4btel, i4btrc, i4b
from the port-specific arch/*/*/conf.c files into sys/conf.h
2001-03-21 22:25:52 +00:00
chs e47583af2c missed some KERN_FAILUREs. 2001-03-18 23:43:53 +00:00
is d7e64c2e21 Method array for a really big inter-byte offset. 2001-03-17 22:03:12 +00:00
chs ac3bc537bd eliminate the KERN_* error codes in favor of the traditional E* codes.
the mapping is:

KERN_SUCCESS			0
KERN_INVALID_ADDRESS		EFAULT
KERN_PROTECTION_FAILURE		EACCES
KERN_NO_SPACE			ENOMEM
KERN_INVALID_ARGUMENT		EINVAL
KERN_FAILURE			various, mostly turn into KASSERTs
KERN_RESOURCE_SHORTAGE		ENOMEM
KERN_NOT_RECEIVER		<unused>
KERN_NO_ACCESS			<unused>
KERN_PAGES_LOCKED		<unused>
2001-03-15 06:10:32 +00:00
is e2e5c62d49 Make this compile again (when building the LKMs). 2001-03-12 21:00:02 +00:00
mhitch 1c10294eb2 ELF ABI requires address to be returned in A0.
Change an external reference from absolute address to PC-relative.
2001-03-11 20:15:02 +00:00
mhitch 5a182288c0 ELF ABI requires address to be returned in A0. 2001-03-11 20:10:04 +00:00
mhitch 751017e6c1 Pack the ExecBase structure to avoid aligning contraint problems with ELF
compiler
2001-03-11 20:09:07 +00:00
is 782a7670e9 - The ioblix zbus board comes in 24 MHz and 22.1184 MHz clock variants.
We default to the (newer, more sane) 22.1184 MHz value, but set it from
the iobzclock variable (in Hz), which is initialized from the IOBZCLOCK
configuration option and patchable.
XXX we should time the clock at system startup.
- add ioblix_zbus to the GENERIC configuration.
2001-03-10 23:55:29 +00:00
is 6288edb5bd Add rcsid. 2001-03-08 19:21:53 +00:00
mhitch 626864333b Use ${NM} and ${SIZE} so cross-compiling works. The machine and m68k include
directories still need to be fixed.
2001-03-02 16:46:19 +00:00
mhitch f9e9387cf0 More missing register prefixes and _C_LABEL()s for ELF. Should now compile
with ELF, but still needs an "elf2bb" program.
2001-03-02 16:43:25 +00:00
mhitch 5864b6d958 More missing register prefixes. 2001-03-02 16:29:41 +00:00
is db27e55251 Add register prefixes. 2001-03-01 21:32:53 +00:00
is 9af33798b8 pack the structure to avoid aligning contraint problems with ELF compiler 2001-02-26 16:07:58 +00:00
is 19d69802f3 fix comment 2001-02-26 16:07:19 +00:00
is 025d7c7815 use ENTRY_NOPROFILE and _C_LABEL, where appropriate. 2001-02-26 14:58:36 +00:00
martin f0d6660cf4 Filename cleanup: remove i4b_ prefixes outside sys/netisdn, last round.
Renamed in sys/dev/ic:
i4b_hscx.c -> hscx.c
i4b_hscx.h -> hscx.h
i4b_ipac.h -> ipac.h
i4b_isac.c -> isac.c
i4b_isac.h -> isac.h
i4b_isic.c -> isic.c
i4b_isicbchan.c -> isic_bchan.c
i4b_isicl1.c -> isic_l1.c
i4b_isicl1.h -> isic_l1.h
i4b_isicl1fsm.c -> isic_l1fsm.c
2001-02-20 22:24:31 +00:00
is fcc944a0c5 Clean up messages, and replace nested ifs by switch statement. 2001-02-20 21:55:00 +00:00
is dd234724b6 Print out IPL. 2001-02-14 21:05:31 +00:00
is 1f9f72f6df Missing: register prefixes, _FOO_LABEL(n) macros, etc, in preparation for
ELFing the port. Patch provided by scw.
2001-02-14 20:24:17 +00:00
thorpej 043e519d55 Adjust the way that media is initialized on DP8390-compatible
chips.  The dp8390_softc now has media_init and media_fini
function pointers that do the work.
2001-02-12 18:49:03 +00:00
is 15d041fe54 Be a bit more helpful in the error case. 2001-02-11 09:54:48 +00:00
is 8b2795fa72 Support for BSC ISDN Master II. As far as we are concerned, this seems
to be identical to the old model.
2001-02-08 18:08:22 +00:00
is e36ad02480 gspa can directly create the C language array. 2001-02-03 20:23:59 +00:00
is 92fd3fa589 Initial, still incomplete wscons support by Jukka Andberg, PR 11068 2001-02-02 21:52:11 +00:00
is 6cec6799ac SIR_CLOCK is gone. 2001-01-28 22:31:53 +00:00
is 5d4912dc4b Add NetBSD rcsid, clean up comments. 2001-01-28 22:18:17 +00:00
is f7aa87a4a5 Jens Schönfeld seems to recall the name is ISDN link. 2001-01-28 21:43:38 +00:00
is facd2d0feb Support for the Zeus Development(?) ISDN board (2189/3). 2001-01-26 21:49:04 +00:00
aymeric a85be0a99c process_machdep.c is actually procfs_machdep.c 2001-01-26 10:31:29 +00:00
is d2ace86ad7 Two suggestions by jhawk:
- be more verbose about what file is created
- adjust copied $NetBSD...$ from $ NetBSD to NetBSD.
2001-01-25 22:34:20 +00:00
is 3f25157bea Add support for ISDN Surfer (ISDN only, for the time being). 2001-01-25 22:22:15 +00:00
is 93f107e677 adjust comments to reality 2001-01-23 11:25:59 +00:00
is c1f1dff4bd Amiga part of isdn4bsd, and an example kernel configuration file. 2001-01-21 22:23:07 +00:00
is f3f791ab03 - Replace idesc by standard wdc attachment.
- Add A1200 pcmcia slot driver.
(Both where options already.)
2001-01-21 20:41:39 +00:00
is fec2d92852 - Replace idesc driver by standard wdc attachment.
- Add PCMCIA driver for A1200.
(Both where options already.)
2001-01-21 20:38:20 +00:00
mhitch 62ec5a5bc5 UVM pagesize needs to be set *before* UVM tries to use it. The change to
a constant PAGE_SIZE value didn't include setting the UVM pagesize, and the
attempt to add this ended up in the wrong place.  Amiga should now boot
again.
2001-01-20 17:08:41 +00:00
is ca0031c4cd No need for a seperate "I'm initialized" variable - the pointer itself
should work fine.
2001-01-19 21:18:29 +00:00
tv e58532a4bf No-op commit to force update to a non-"-kk" revision. 2001-01-18 17:47:58 +00:00
is 72d949304b Add IPL_SOFTCLOCK, which was missing. 2001-01-17 20:53:43 +00:00
fvdl c7f1462f3e Add machdep file for procfs. Currently only used for linux-style
/proc/cpuinfo (only active when procfs is mounted with -o linux).
For ports other than the i386 this currently produces an empty
string.
2001-01-17 00:07:18 +00:00
thorpej d74e432ed3 Make softclock a generic soft interrupt of the API is available,
adding the requisite void * argument to softclock().
2001-01-15 20:19:50 +00:00
thorpej 45de366b2e Rename __GENERIC_SOFT_INTERRUPTS to __HAVE_GENERIC_SOFT_INTERRUPTS,
and place the definition in <machine/types.h>.  This can now be used
as a flag to indicate whether or not <machine/intr.h> can be included
to get the generic soft interrupt API.
2001-01-14 23:50:28 +00:00
martin a261276f16 The i4b raw b-channel devices actually do have an ioctl routine,
so better add this to the cdevsw entry.
Noted by Bruno Achauer.
2001-01-14 11:17:28 +00:00
thorpej 6f0dfa5049 splimp() -> splvm() 2001-01-14 03:32:20 +00:00
thorpej d85a75f583 Make sure everybody has an splvm() and equate it with splimp() (splimp()
is the historical name for this interrupt level, and the historical name
is going to go away in the near future).
2001-01-14 02:00:37 +00:00
aymeric edecf4bc97 Notify UVM subsystem about our page size in pmap_init().
Some MI code needs it (Linux emulation, sysctl and the like).
Thanks to Izumi Tsutsui for pointing it.
2001-01-13 11:31:04 +00:00
aymeric f806b0811c Pass CPPFLAGS to gcc in NORMAL_G, plus minor change: ; -> && 2001-01-13 02:17:50 +00:00
aymeric 80f1cca44e Make this compile again: we don't need to initialize PAGE_SIZE and friends
since they are now (preprocessor) constants.
2001-01-13 02:15:16 +00:00
aymeric 032ced3b65 Make these compile again, plus minor aesthetic changes. 2001-01-13 02:09:27 +00:00
aymeric 11dbbd8afe make this compile again 2001-01-13 02:08:15 +00:00
martin f53c899649 Add isdn devices to all archs that seem to support at least one of the
necessary busses. Sync comments with reality for archs that already had
the devices.
2001-01-08 21:46:33 +00:00
martin 242656c78a Enable the imported ISDN4BSD based ISDN subsystem.
This is the kernel part (userland to follow soon) of the latest (and
very probably last) release (version 0.96) of ISDN4BSD. ISDN4BSD has a
homepage at http://www.freebsd-support.de/i4b/.

It gives the user various ways to use the isdn connection: raw data (via
the i4brbch "raw b-channel" device), ppp (via the isp "isdn PPP" device),
voice/answering machine (the i4btel "telephone" device) and ip over isdn
(the ipr device, "IP over raw ISDN").

Supported are a bunch of common and older cards, more to be added soon
after some cleanup. Currently only the european E-DSS1 variant of the
ISDN D channel protocol is supported.
2001-01-05 13:09:15 +00:00
is d1089630fa The name is X-surf, not X-serv. I'll never learn this.
Thanks to Petri Koistinen for the correction.
2000-12-29 22:39:29 +00:00
is 9ae07c3362 Update for vlan addition and Xsurf name addition. 2000-12-29 22:36:51 +00:00
is f2ff118b7c Add name of X-surf Ethernet board. Patch by Petri Koistinen. 2000-12-29 22:31:56 +00:00
jdolecek de31133f1d split off thread specific stuff from struct sigacts to struct sigctx, leaving
only signal handler array sharable between threads
move other random signal stuff from struct proc to struct sigctx

This addresses kern/10981 by Matthew Orgass.

XXX I wish m68k ports would share trap.c
2000-12-23 09:35:51 +00:00
scw 4350a7f2b7 Unification of the m68k syscall() function. 2000-12-19 21:09:54 +00:00
tsutsui cb7f7c7f3b Remove "rnd is EXPERIMENTAL" comments. 2000-12-19 15:51:47 +00:00
bouyer c71f40d166 Add pseudo-device vlan 2000-12-19 10:42:02 +00:00
jdolecek cacec11253 delete obsolete comment 2000-12-17 15:52:39 +00:00
jdolecek ca57e681bd g/c obsolete vtrace(2) stuff 2000-12-13 18:13:05 +00:00
jdolecek 17a9fd0da5 split m68k SunOS and SVR4-specific sigcode.s code to sunos_sigcode.s
and svr4_sigcode.s respectively
adjust individual m68k port's locore.s to include new sigcode files if
appropriate
2000-11-26 11:47:23 +00:00
tsutsui 2c7e91a09e Define proper macros for FP frame offsets rather than magic numbers. 2000-11-21 13:54:13 +00:00
jdolecek baae0324b9 restructure struct emul and execsw, in preparation to make emulations LKMable:
* move all exec-type specific information from struct emul to execsw[] and
  provide single struct emul per emulation
* elf:
  - kern/exec_elf32.c:probe_funcs[] is gone, execsw[] how has one entry
    per emulation and contains pointer to respective probe function
  - interp is allocated via MALLOC() rather than on stack
  - elf_args structure is allocated via MALLOC() rather than malloc()
* ecoff: the per-emulation hooks moved from alpha and mips specific code
  to OSF1 and Ultrix compat code as appropriate, execsw[] has one entry per
  emulation supporting ecoff with appropriate probe function
* the makecmds/probe functions don't set emulation, pointer to emulation is
  part of appropriate execsw[] entry
* constify couple of structures
2000-11-21 00:37:49 +00:00
chs c62d17a551 rationalize the use of b_flags for geteblk() buffers.
rather than assigning to the whole field, set or clear individual flags,
which implies that the B_BUSY and B_INVAL flags will remain set.
this allows us to make the assertion in brelse() that B_BUSY is set,
which is the purpose of all this.
2000-11-20 08:24:08 +00:00
thorpej b84f740be0 Move bpfattach()/bpfdetach() calls into ether_ifattach()/ether_ifdetach(). 2000-11-15 01:02:11 +00:00
thorpej f74dfc7755 We use 8K pages on the Amiga. Make PAGE_SIZE and friends into
compile-time constants.
2000-11-14 18:58:29 +00:00
is 588900ab75 Remove some of the bitrot. 2000-11-08 21:50:25 +00:00
eeh bc7363329c Adapt to new line discipline scheme. 2000-11-02 00:26:35 +00:00
aymeric 79041c7a30 add a semicolon to make this compile again 2000-10-30 14:40:33 +00:00
is b0ee22422c Regenerate from INSTALL. 2000-10-04 20:44:53 +00:00
is 6458912fb4 regenerate: INSTALL changes as implemented in GENERIC and Makefile. 2000-10-04 20:40:06 +00:00
is 986619df97 Reimplement the INSTALL changes in GENERIC and Makefile. 2000-10-04 20:38:11 +00:00
is 1c9bb33fcb resync, mostly for the rnd addition. 2000-10-04 20:13:42 +00:00
itojun 9e47af8814 enable rnd device. they are now mandatory for ssh/sshd support,
so it makes more sense to enable it.
please disable them if there's any issues, but in that case, in-tree
ssh/sshd won't work.
2000-10-04 03:35:53 +00:00
abs 2824f4906d Ensure all INSTALL* kernels have two ptys, and a note explaining why:
pseudo-device  pty             2       # pseudo-terminals (Sysinst needs two)
(Some installers may not be using sysinst, in which case this just reduces
the number of ptys from 16 that are not used to 2 that are not used)
For i386 conf files, no change other than comments.
2000-10-02 18:43:34 +00:00
thorpej 7ca3fb9ef0 Move the check for "promisc + unicast + not for us" into ether_input(),
and change Ethernet drivers to always pass all received frames to
ether_input() (with a few exceptions, which are documented in the
code).
2000-10-01 23:32:39 +00:00
aymeric 5712405584 cross-compile properly 2000-09-27 08:28:34 +00:00
aymeric 25365607f3 minor aesthetic changes, plus explicitly state this is public domain 2000-09-27 08:24:02 +00:00
aymeric 97e929ff45 define PCB_REGS_* so that kdb compiles again 2000-09-27 08:23:50 +00:00
abs 3ef92f0bdb Use "options<SPACE><TAB>" not "options<TAB>" - noted by simonb.
Move VNODE_OP_NOINLINE and NFS_V2_ONLY into '# Filesystem options' section.
Consistently label '# Filesystem options' and '#File systems' sections.
2000-09-25 13:54:50 +00:00
abs ccf1c822a6 Ensure all INSTALL config files have (at least) COPTS="-Os", cincluding bebox
based on it working already for macppc.
Also add commented out:
#options        VNODE_OP_NOINLINE       # Don't inline vnode op calls
#options        NFS_V2_ONLY             # Exclude NFS3 and NQNFS code
as suggestions for additional savings
2000-09-25 11:46:37 +00:00
jdolecek f9f2c92422 this file was oversight at first (pointed out by is):
Add new boot flags -v, -q, which switch on AB_VERBOSE or AB_QUIET
respectively. This follows recent bootverbose/bootquiet changes.
2000-09-24 20:56:04 +00:00
jdolecek b1f94e26ab don't specify number of ptys if >= 16 (current default initial number)
pty comments: normalize and g/c what is no longer relevant
2000-09-24 15:59:26 +00:00
jdolecek 49c105ffdb add new macro BOOT_FLAG() (defined in <sys/boot_flag.h>) - this
maps standard boot flags to corresponding RB_* values
use BOOT_FLAG() in port's MD code as appropriate

as discussed on tech-kern, add new boot flags -v, -q for booting
verbosely or quietly, and corresponding AB_VERBOSE/AB_QUIET
boot flags; also add FreeBSD-compatible bootverbose macro and
NetBSD-specific bootquiet macro

for hpcmips, use new bootverbose instead of it's own hpcmips_verbose

Tested on i386, and to limited extend (compile of affected files) also for
mvme68k, hp300, luna68k, sun3.
2000-09-24 12:32:31 +00:00
is ff3689f89c On AmigaPPC, the kernel directly maps the i/o range. 2000-09-20 19:05:53 +00:00
is ff3205e665 Make this build again. Fixes by Michael Hitch. 2000-09-17 18:24:12 +00:00
is 47d6ee388a Missing piece of PowerPC support. 2000-09-13 20:15:52 +00:00
thorpej 72a24b4eae Add an align argument to uvm_map() and some callers of that
routine.  Works similarly fto pmap_prefer(), but allows callers
to specify a minimum power-of-two alignment of the region.
How we ever got along without this for so long is beyond me.
2000-09-13 15:00:15 +00:00
is 7d54381711 sm* at (mhz at) pcmcia* needs mii to link (although not at runtime...). 2000-09-03 19:07:05 +00:00
mhitch 4a320ca712 Use the correct DMA pointer for the second channel on 14-bit byte-swapped
conversion.  Fixes NULL pointer reference crash when playing 16 bit little
endian audio.
2000-09-03 02:04:53 +00:00
mhitch 76585aedee Fix typo: a%0 -> %a0. 2000-09-02 04:50:08 +00:00
jhawk a022cf9d37 Use
${MAKE}
instead of
  make
2000-08-30 23:51:46 +00:00
is 9ec45c470a Use an INSTALL kernel, instead of GENERIC. We want this to be as small as
possible so that it can boot even on low memory Amiga machines.
2000-08-30 09:43:04 +00:00
is e83ee64031 Stripped down Install kernels (no audio, no OSI or Xerox networking, no
scanners).
INSTWDCPCM has the wdc instead of the idesc, and the PCMCIA support, so
that people can test it easily.
2000-08-29 21:09:28 +00:00
is 115bd3b350 Replace one callout handler by using a timeout in tsleep().
1.4.x version of it submitted by Ingolf Koch; translated to 1.5-ish by
myself.
2000-08-27 10:35:43 +00:00
thorpej 4db6fc7542 Make need_resched() take a "struct cpu_info *" argument. This
causes gives a primitive form of processor affinity.  Its use in
roundrobin() still needs some work.
2000-08-25 01:04:06 +00:00
thorpej 58e7a6954b Add spllock(). See spl(9) for details. 2000-08-22 19:46:26 +00:00
thorpej a86d1f4891 Add a lock around the scheduler, and use it as necessary, including
in the non-MULTIPROCESSOR case (LOCKDEBUG requires it).  Scheduler
lock is held upon entry to mi_switch() and cpu_switch(), and
cpu_switch() releases the lock before returning.

Largely from Bill Sommerfeld, with some minor bug fixes and
machine-dependent code hacking from me.
2000-08-20 21:50:06 +00:00
itojun 85dda25e94 move "options PULLDOWN_TEST" into sys/sys/mbuf.h (in #ifdef _KERNEL),
as it is no wthe default setting for everyone.

the reason we still use the name "PULLDOWN_TEST" while it is now default:
kame code sharing.
2000-08-13 01:31:15 +00:00
mason 4a353b5330 Moving to a default of 64 PTYs. 2000-07-27 17:53:35 +00:00
sommerfeld bd29eb7984 regenerate 2000-07-05 04:10:15 +00:00
sommerfeld 502fc00210 Comment out EON ISO-over-ip tunneling pseudo-driver, and document as
broken/fragile.  Unlikely to be of much use, and confuses new users
when their system crashes when they, or their dhclient stumble over
it.  See kern/10500, kern/8994 for the gory details.
2000-07-05 04:07:22 +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 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 b564830503 remove include of <vm/vm.h>. <vm/vm.h> -> <uvm/uvm_extern.h> 2000-06-29 08:44:03 +00:00
mhitch e87450fc4b Add cdev_decl() to declare mm*() routines. 2000-06-29 01:55:57 +00:00
mrg e185413725 remove redudant <vm/pmap.h> includes. <vm/pmap.h> -> <uvm/uvm_pmap.h> 2000-06-27 04:18:48 +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 89d0a3e519 remove redundant vm includes. 2000-06-26 14:38:50 +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
is 30cef4176a - auto-USE_C_BFOPS when !defined(__m68k__)
- for bold characters, only blit the leftmost ftwidth pixels per character
  cell row. The rightmost row which used to be printed would have been
  overwritten formerly by the next character on sequential output, so no
  visible change will result most of the time.
  This fixes two problems:
  * USE_C_BFOPS (which only works for 8 pixel wide fonts) blits the same
    for bold characters now... it used to print the rightmost 8 pixel columns
    of the bold-smeared characters
  * we no longer need a reserved 1 pixel column at the right end of the screen.
    That is, a 640x400 screen will hold 80x50 charactes with the 8x8 font.
2000-06-21 21:28:39 +00:00
is d139625de5 Fix for two bugs discovered by Gunther Nikl:
- missing printf parameter
- error in DraCo detection
2000-06-15 13:43:35 +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
frueauf 3be3d75487 recently findroot() was changed to get no arguments, so remove the
arguments in the findroot() call withing cpu_rootconf().
2000-06-10 19:34:46 +00:00
soren a9aa2abf94 defopt SYSCALL_DEBUG. 2000-06-06 18:52:30 +00:00
jhawk c063b64a2b Do not clear msgbufenabled in dumpsys(). Dump messages will now go to
the message buffer. This can be invaluable in debugging if the dump
fails (assuming a persistant message buffer)
2000-06-05 23:44:55 +00:00
tsutsui 8c4d1bf1f9 Adapt MI ncr53c9x changes. 2000-06-05 15:08:00 +00:00
matt 33763f10cf Fix a missing cases of devpp -> booted_device, partp -> booted_parition 2000-06-01 17:42:59 +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
thorpej 8871d8563a Add a comment on single-processor systems about p_cpu being initialized
by fork1().
2000-05-31 05:06:43 +00:00
thorpej e03e9e8086 Rather than starting init and creating kthreads by forking and then
doing a cpu_set_kpc(), just pass the entry point and argument all
the way down the fork path starting with fork1().  In order to
avoid special-casing the normal fork in every cpu_fork(), MI code
passes down child_return() and the child process pointer explicitly.

This fixes a race condition on multiprocessor systems; a CPU could
grab the newly created processes (which has been placed on a run queue)
before cpu_set_kpc() would be performed.
2000-05-28 05:48:59 +00:00
sommerfeld 40339b39f9 Reduce use of curproc in several places:
- Change ktrace interface to pass in the current process, rather than
p->p_tracep, since the various ktr* function need curproc anyway.

 - Add curproc as a parameter to mi_switch() since all callers had it
handy anyway.

 - Add a second proc argument for inferior() since callers all had
curproc handy.

Also, miscellaneous cleanups in ktrace:

 - ktrace now always uses file-based, rather than vnode-based I/O
(simplifies, increases type safety); eliminate KTRFLAG_FD & KTRFAC_FD.
Do non-blocking I/O, and yield a finite number of times when receiving
EWOULDBLOCK before giving up.

 - move code duplicated between sys_fktrace and sys_ktrace into ktrace_common.

 - simplify interface to ktrwrite()
2000-05-27 00:40:29 +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
is f0d88bea57 Prepare for AmigaPPC. 2000-05-25 19:10:04 +00:00
is da281d4321 Prepare for AmigaPPC. 2000-05-25 18:39:09 +00:00
is ebc6483ef9 missed one line when converting m68k asm() to macro calls. 2000-05-24 19:36:29 +00:00
thorpej 1140468205 Use preempt(), not an open-coded equivalent (which won't be
equivalent for long).
2000-05-24 16:48:33 +00:00
thorpej 071aed40ac A foolish consistency; most parts of the kernel use bp->b_data, so
change these from bp->b_un.b_addr to bp->b_data, as well.  This also
allows us more flexibility to experiment with other data buffer types
hung off of struct buf.
2000-05-19 18:54:22 +00:00
is 5e33ffef22 Initialize hardware for mouse mode at open time.
This fixes MB2 and MB3 on the 2nd mouse port (the first is initialized by
the Amiga ROM at boot time).
2000-05-18 19:58:30 +00:00
kleink 8050d5687d Restructure the ms(4) autoconfiguration code to attach as a single device
instance and select a mouse port via the least significant bit of its
device minor number.  Fixes abuse of cf_unit in this driver.
2000-05-18 15:39:22 +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
minoura 879e4dbe7c defopt FPSP. 2000-05-14 14:13:50 +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
is e6f57d38e4 Fix thinko in fix for fix for cf_unit abuse. 2000-04-27 21:11:07 +00:00
mhitch 437d090c28 Long term bug finally reared its head: size of device softc was specified
as sizeof(struct device) when amiga switched to new config, and recent
additions of callout structures and a long missing struct device to the
soft structure resulted in kernel panics when attempting to open the builtin
serial port.  The callout structure initialization was clearing the serial
port softc data!  Fixed by using sizeof(struct par_softc).
2000-04-23 19:55:51 +00:00
bouyer 2ce6bd4b28 Rename the 'siop' define to 'asiop', to avoid clash with the MI siop driver.
This doesn't change the name of the drivers in config files.
2000-04-21 16:51:36 +00:00
itojun 3be41bae18 add stf pseudo interface (commented out due to possible security risks) 2000-04-19 06:50:27 +00:00
is 136b230eaa Don't use runtime systems' includes. 2000-04-15 20:10:41 +00:00
is f0b2e9f184 Make this work again after the last changes...
remember, folks, potential Amiga console devices run autoconfiguration
_twice_.
2000-04-14 21:56:22 +00:00
aymeric 8e8e291c78 Prevent serial port from hanging when used as both console and terminal. 2000-04-07 19:47:18 +00:00
aymeric fdbfdd90f2 added two vaddr_t casts so that this compiles again with -DDEBUG 2000-04-03 15:07:07 +00:00
is 389ed19c62 Start to define an INSTALL kernel. 2000-04-01 20:21:27 +00:00
is b2a8826b6a The cfunit (ab)use fix broke the Amiga early console autoconfiguration. 2000-03-30 20:58:39 +00:00
tsutsui 58714261cc Remove register declarations. 2000-03-30 11:37:21 +00:00
simonb 2f1fef39b3 Centralise the declarations of cpu_model, machine, machine_arch,
osrelease, and ostype and remove "extern char foo[];" (for hostname
and domainname too).

Also delete redunctant decl of boottime in kern_info_43.c.
2000-03-28 23:57:24 +00:00
is 91d927ae42 synchronize to GENERIC 2000-03-28 20:17:14 +00:00
kleink 230876cf26 Merge parts of chs-ubc2 into the trunk:
* Remove the casts to vaddr_t from the round_page() and trunc_page() macros to
  make them type-generic, which is necessary i.e. to operate on file offsets
  without truncating them.
* In due course, cast pointer arguments to these macros to an appropriate
  integral type (paddr_t, vaddr_t).

Originally done by Chuck Silvers, updated by myself.
2000-03-26 20:42:21 +00:00
frueauf 440814a0b5 Add "struct device sc_dev;" to struct par_softc.
Reviewed by Ignatios Souvatzis.
2000-03-26 10:15:32 +00:00
is 40b550935e provide CCITT includes, and work around namespace collision 2000-03-26 07:52:58 +00:00
is 128258c1a2 Initial IOBlix support. Only lpt and com; lpt untested; com assumes 24 MHz
clock (needs autoprobe of clock speed).
2000-03-23 22:44:42 +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
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
kleink 8bc084e1de Kill more broken cf_unit bogons. 2000-03-16 16:37:20 +00:00
kleink 1634305526 Kill a couple of unnecessary cf_unit (ab)uses. 2000-03-15 20:40:00 +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
soren 95054da1a1 Fix doubled 'the's in comments. 2000-03-13 23:52:25 +00:00
aymeric 7cd55062c0 do as if bus_space_read_4() returned an int, although it just calls panic. 2000-03-04 11:49:18 +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
aymeric 77292e79c6 fix a couple of things to handle interrupts more cleanly on the A1200 2000-02-21 18:27:49 +00:00
aymeric 728c720d75 acknowledge the interrupt to gayle before entering wdc_intr.
This fixes the lost interrupts problem.
fix some glitches on the A1200 too.
2000-02-19 17:16:20 +00:00
is a90153e264 enlarge the initial kernel page table - needed for some 128 MB machine 2000-02-14 20:23:20 +00:00
thorpej 5903e181fa Nuke NKMEMCLUSTERS. 2000-02-12 03:29:18 +00:00
thorpej dded044fc2 Update for the NKMEMPAGES changes. 2000-02-11 19:25:12 +00:00
is 9bf09631c6 Only output message on really special DEBUG kernels. 2000-02-11 19:09:56 +00:00
aymeric dc0ce1249b fix interrupt handling
I still get lost interrupts on the A1200, but the problem is certainly
elsewhere (not in wdc_amiga).
2000-02-10 15:51:59 +00:00
aymeric a10113c83a fix a couple of things to (hopefully) make this work on the A1200 2000-02-09 22:27:20 +00:00
shin 7f5a7c00ac fix include file.
<netinet6/ip6.h>	->	<netinet/ip6.h>
2000-02-09 05:48:26 +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
mhitch 93be165768 Remove an "#if 0" I seemed to have missed, to include wd* devices in the
search for root filesystems.
2000-02-06 21:45:03 +00:00
mhitch d9b42dd1fc At long last, the MI wdc glue for the Amiga. Tested on my A4000, but not
on an A1200 yet.  Configuration of wdc/atapi in GENERIC is currently
commented out to prevent the suprise of an IDE drive changing from sd0
to wd0 (and the first real SCSI drive changing from sd1/sd1 to sd0).
2000-02-05 18:46:28 +00:00
mhitch db4859bcd8 Regen (with commented MI wdc stuff) 2000-02-05 18:42:49 +00:00
mhitch 915731c9ea Add commented out configuration for MI wdc.
Note:  enabling these will cause disk device renumbering if any IDE were
present (i.e. if sd0 was IDE drive 0, that drive will become wd0 and sd0
will be the first real SCSI drive.
2000-02-05 18:41:58 +00:00
cgd 7d16ac338c add __BROKEN_CONFIG_UNIT_USAGE #define, becuase these ports do very
wrong things with device configuration data "cf_unit" information.
2000-02-05 00:13:22 +00:00
tsutsui 11c8f56d48 Revert STRIPPROG -> STRIP 2000-02-01 05:25:24 +00:00
mhitch a50bf9a39a Include word access methods with stride 4.
Add a byte-swapping access_method array for use with MI wdc driver.
XXX Currently only read_multi_2 and write_multi_2 are used by MI wdc code;
XXX The other byte-swapping routines still need to be added.
2000-02-01 05:21:24 +00:00
mhitch 1d24598795 Add check for wdc [MI wdc support].
Move 'cd' device back to end of the genericconf table - we want to check
the 'wd' device before the 'cd' device.
2000-01-31 22:51:53 +00:00
mhitch f12b50fc81 Add the wd devices for MI wdc IDE drive support. 2000-01-31 22:49:12 +00:00
mhitch 97107f760d Add the config information for the MI wdc support. 2000-01-31 22:47:07 +00:00
mhitch 554647f636 Semicolons in the 32-bit macros aren't nice.
Add a stride-4 with swapping bus_space_method for use by MI wdc.
2000-01-31 22:43:36 +00:00