Commit Graph

522 Commits

Author SHA1 Message Date
christos 636b3ee69b s/JUMP/JMP/ like every other arch. 1999-02-07 17:20:00 +00:00
drochner bce7f71843 sort the dependencies between terminal devices a bit and add consistency
checks to catch conflicting devices at compile time
1999-02-06 18:46:21 +00:00
thorpej 6a75ade4bc The x86 does not have strict alignment requirements, so define
__NO_STRICT_ALIGNMENT here.
1999-02-05 22:13:12 +00:00
christos 72ba98061e Add btinfo_symtab, to pass symbol table information.
Actually the current ddb_init interface sucks, since there is no
magic number for a.out and it applies heuristics. It would be nice
if the boot blocks passed more info.
1999-01-28 20:10:55 +00:00
thorpej f077362c41 Use the MI <sys/disklabel_mbr.h>, not our own machine-dependent
definitions.
1999-01-27 20:54:56 +00:00
christos be52cd1738 Fix this properly, using gcc assembly syntax (thanks ws!) 1999-01-26 17:07:06 +00:00
christos d95840263e add prototypes for the assembly functions that moved to locore.s 1999-01-26 14:25:02 +00:00
christos 0339b8e4dd ifdef __ELF__ the softintr inline since we cannot use _C_LABEL to produce
a name. XXX: Is there a better way?
1999-01-26 14:22:23 +00:00
mycroft 897a8a7f29 Mark [hn]to[nh][ls]() with __const__, so they are subject to CSE. 1999-01-24 12:55:01 +00:00
mycroft ec253b6315 Use __builtin_next_arg(). Fixed PR 6862. 1999-01-22 14:14:32 +00:00
christos 28b4668c17 Move prototypes to mi code; add MD constant for padding 1999-01-21 23:11:45 +00:00
chuck 8bd992a5f6 remove non MNN code 1999-01-16 20:30:34 +00:00
tron 3601b98911 Add missing backslashes between continued lines. 1999-01-16 06:24:07 +00:00
bouyer 62a77e9dfe Oups, need byte_swap.h too. Pointed out by Robert V. Baron 1999-01-16 02:20:26 +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
christos e0c19ac888 We cannot relocate our interpreter (yet). 1999-01-11 11:02:50 +00:00
christos e293d1bc34 Add ELF crap. 1999-01-11 11:02:16 +00:00
christos c7f9823bf0 C_LABEL has no _ if __ELF__ 1998-12-23 15:09:48 +00:00
kleink 1b6a24c1d4 Support for compound statements enclosed in parenthes to appear as
expressions is a GNU C extension; mark as such them with __extension__ to
suppress portability warnings.  Addresses kern/3562 and misc/6185, as suggested
by Dave Sainty <dave@dtsp.co.nz>.
1998-12-16 11:11:02 +00:00
christos 4959a9fca6 Add defines for the fast trap vectors. 1998-12-13 19:27:51 +00:00
thorpej 2d7f8f3343 Support both a.out and Elf32 symbols in DDB. 1998-12-04 20:19:22 +00:00
thorpej da572a137f Argh, fix the ANSI CPP version of the a.out WARN_REFERENCES(). 1998-12-02 21:16:46 +00:00
thorpej a6f7e0c05a Implement WARN_REFERENCES(). 1998-12-02 00:58:42 +00:00
christos 9a95622add cast _mcount args to u_long, to avoid lint warnings. 1998-11-13 13:50:52 +00:00
thorpej 49c62c4336 Changes to support fork_kthread():
- cpu_set_kpc() now takes void *arg third argument, passed to the
  entry point.
- cpu_fork() allows parent to be non-curproc iff parent is proc0.
  When forking non-curproc, assume its state has already been saved.
- Adjust various pieces of machine-dependent code to account of all of this.
1998-11-11 06:41:23 +00:00
bad 28b3386649 Add CPUVENDOR_IDT and CPU_C6. 1998-10-15 13:40:33 +00:00
thorpej 010b1e5215 Erg, frame -> trapframe in last. (thanks to john kohl) 1998-10-07 21:25:35 +00:00
thorpej b38544d99e Oops, back out a buglet I didn't intend to commit in the last change. 1998-10-07 18:29:26 +00:00
thorpej d374462dfc Move the code that does the deferred (post-autoconfiguration) buffer
cache allocation to its own function, and call it at the end of configure().
1998-10-06 21:42:08 +00:00
thorpej d681cf055a configure() prototype is in <sys/device.h> 1998-10-06 20:50:15 +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
christos 36f308f4cc Add an LDT for Solaris-2.6 syscalls [from Frank] 1998-10-03 18:05:25 +00:00
jtk 787fcfeac7 copyright has been assigned to TNF, update notice 1998-10-03 02:14:30 +00:00
erh 33dacac36e linux_machdep.h has moved. 1998-10-01 18:32:33 +00:00
erh ccea47d790 Moved to compat/linux/i386/linux_machdep.h. 1998-10-01 02:20:52 +00:00
jtk 358521eba1 add prototype for bioscall() 1998-10-01 02:00:37 +00:00
christos 029ab07a4d delint 1998-09-26 19:21:19 +00:00
thorpej dbebd9b148 Need 13 longs for jmp_buf; signal mask is 128 bits now.
XXX Actually, libc appears to use only 7 of the previous 10, so increasing
the size isn't actually necessary!  But there was a gap at the end before,
so we'll keep it.
1998-09-14 21:31:52 +00:00
thorpej 27f3588d7b oops, missed one. 1998-09-14 02:50:12 +00:00
thorpej cbfc257eda sigset13_t -> int. 1998-09-14 02:48:33 +00:00
thorpej 35c106630e __LIBCxx_SOURCE__ refers to the library major number, not the NetBSD release
number.
1998-09-13 02:18:38 +00:00
thorpej 6351312ff7 Fix thinko in last thinko fix. We always have to store an old style
signal mask since a 1.3 binary may attempt to invoke sigreturn(2) directly
for an alternate exit from the signal handler.  If we don't do this, it will
get a garbage signal mask if it tries to do that.
1998-09-13 01:45:04 +00:00
mycroft 3f2c7263b1 Fix thinko in previous. 1998-09-12 10:48:27 +00:00
mycroft 89ea1fcbdd Version sys_sigreturn, to avoid breaking programs that use it explicitly. 1998-09-12 00:47:12 +00:00
mycroft fb526e055c Substantial signal handling changes:
* Increase the size of sigset_t to accomodate 128 signals -- adding new
  versions of sys_setprocmask(), sys_sigaction(), sys_sigpending() and
  sys_sigsuspend() to handle the changed arguments.
* Abstract the guts of sys_sigaltstack(), sys_setprocmask(), sys_sigaction(),
  sys_sigpending() and sys_sigsuspend() into separate functions, and call them
  from all the emulations rather than hard-coding everything.  (Avoids uses
  the stackgap crap for these system calls.)
* Add a new flag (p_checksig) to indicate that a process may have signals
  pending and userret() needs to do the full (slow) check.
* Eliminate SAS_ALTSTACK; it's exactly the inverse of SS_DISABLE.
* Correct emulation bugs with restoring SS_ONSTACK.
* Make the signal mask in the sigcontext always use the emulated mask format.
* Store signals internally in sigaction structures, rather than maintaining a
  bunch of little sigsets for each SA_* bit.
* Keep track of where we put the signal trampoline, rather than figuring it out
  in *_sendsig().
* Issue a warning when a non-emulated sigaction bit is observed.
* Add missing emulated signals, and a native SIGPWR (currently not used).
* Implement the `not reset when caught' semantics for relevant signals.

Note: Only code touched by the i386 port has been modified.  Other ports and
emulations need to be updated.
1998-09-11 12:50:05 +00:00
christos 2d876282c2 Assign copyright to TNF. 1998-09-05 15:28:06 +00:00
jtk 663e79e90a add 32-bit register support and beginnings of APM V1.2 support 1998-08-31 23:54:32 +00:00
jtk 10ec6359b5 add 32-bit register support to BIOSCALL interface 1998-08-31 23:52:40 +00:00
cgd 5fa7eee1ff don't define __BUS_SPACE_COMPAT_OLDDEFS by default. As stated in
bus_space(9), if drivers want it (they shouldn't; easy to convert) they
can define it right before including bus.h.  There's been a release since
the interfaces were (slightly) changed, and no code in the source tree
uses the old interfaces as far as I can tell.
1998-08-30 23:40:14 +00:00
mycroft c9a799adf6 Assign my copyrights to TNF. 1998-08-15 04:57:50 +00:00
mycroft 6d3d8a1350 Make copyright notices with my name consistent. 1998-08-15 03:02:31 +00:00
thorpej f41c00629b Garbage-collect vm_offset_t and vm_size_t. 1998-08-13 21:36:27 +00:00
thorpej 330d142f16 vm_offset_t -> {vaddr_t,paddr_t}, vm_size_t -> vsize_t 1998-08-13 21:36:02 +00:00
eeh a2dd74ed79 Merge paddr_t changes into the main branch. 1998-08-13 02:10:37 +00:00
kleink 546365a27e _POSIX_SOURCE -> _POSIX_C_SOURCE 1998-08-06 11:25:04 +00:00
mycroft da2e61d160 Delint. 1998-07-27 13:55:32 +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 5f59f7e15a Add i386 relocations. 1998-07-12 17:09:43 +00:00
thorpej 1bd007d54b Define 2 free lists: a default, and a "first16", which is where the first
16M of RAM goes (in an effort to protect ISA DMA-safe memory).
1998-07-08 04:38:33 +00:00
thorpej 8f2575ec87 Use fixed-size types. 1998-07-07 04:29:42 +00:00
mjacob 20f9998e6f allow a config file to redefine MAXPHYS 1998-07-01 00:51:15 +00:00
kleink 1fbd0b3749 GC the unused `physadr' type, which was not able to hold a complete physical
address on 2 architectures anyhow.  Also, move the definition of the `label_t'
type inside _KERNEL protection, since it is specific to the in-kernel
setjmp()/longjmp() implementations.
1998-06-14 20:09:22 +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
drochner 81fd096b37 Since wscons can support VT_xxx ioctl()s, enable them if NWSDISPLAY > 0.
Implement KDGKBTYPE and KDGKBENT, this will make X servers happy.
1998-06-11 22:26:13 +00:00
thorpej f8e69a4627 Don't enable BUS_SPACE_DEBUG automatically if DEBUG is defined. 1998-06-09 22:53:57 +00:00
thorpej 528bbb95ed Add debugging support to the bus_space macros. If BUS_SPACE_DEBUG (or DEBUG)
is defined, the bus_space macros will check to ensure that the bus address
and the target buffer (if applicable) are aligned properly for the size
of the type being used.  If they are not, a message will be displayed on
the console.

While strict alignment is not strictly necessary on the x86, ensuring
proper alignment can aid performance, and help make drivers more portable
to architectures (like the Alpha and StrongARM) which _do_ require strict
alignment.
1998-06-07 03:32:32 +00:00
thorpej f018f866d7 Add a `bounce threshold' to the i386 DMA tag. 1998-06-03 06:33:02 +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
chuck 7704d6d342 correct some addresses in the comment that i missed when
KERNBASE changed a while back (from Matthias Drochner)
1998-05-05 01:36:46 +00:00
thorpej 627388689b Whitespace. 1998-05-04 06:09:35 +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
thorpej ff701f8abb Garbage-collect the DMA tag's "_cookie" member; it's not used for anything. 1998-04-26 22:37:20 +00:00
drochner 3ae87f413f "spkr" is now mi. Keep this file for compatibility. 1998-04-15 21:40:27 +00:00
drochner 7689c5d866 remove unneeded stuff 1998-04-15 21:39:01 +00:00
drochner 4682d49cf1 tell drivers that this port knows about the new wscons code
(and generates the NWSCONS etc include files)
1998-03-22 17:53:23 +00:00
drochner d4d8012d51 Export pcconskbd_cnattach() - it is used if pccons attaches to the MI
keyboard controller driver.
1998-03-22 17:49:00 +00:00
drochner 06471a2eed switch to non-BROKEN_INDIRECT_CONFIG 1998-03-22 12:52:03 +00:00
scottb d24f809241 Added prototype for ibcs2_sendsig. 1998-03-05 05:23:49 +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
perry edac6b7ff2 define kernel only inline static functions only #ifdef _KERNEL 1998-02-26 01:57:30 +00:00
perry 398e0f8c64 add /* LINTLIBRARY */ to supress lots of "unused function" warnings
from lint.
1998-02-25 22:36:45 +00:00
perry 56c01cbd82 change second parm of sysarch() from char * to void * 1998-02-25 21:24:56 +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
drochner 7d1b6dbcbf -define new own partition ID for NetBSD (0xa9)
-protect structure definitions from inclusion in assembler files
1998-02-19 14:10:34 +00:00
mycroft c525e48e35 Include correct information for long doubles (i387 extended precision). 1998-02-18 09:22:02 +00:00
thorpej edbfcebb6a Fixup an inconsistency in the declaration of PTDpaddr, pointed out by
Chris Demetriou.
1998-02-18 03:04:40 +00:00
cgd 3bbb7f7d45 Move pmap_map() function definition to MD headers, as appropriate. It's
an internal function, and the VM system shouldn't try to prototype it.
(Note that some ports _don't_ prototype it.)
1998-02-18 02:05:32 +00:00
thorpej b7d1ce7766 Switch the i386 port to the new kernel crash dump format. 1998-02-18 01:09:25 +00:00
mrg d90485202c - add defopt's for UVM, UVMHIST and PMAP_NEW.
- remove unnecessary UVMHIST_DECL's.
1998-02-10 14:08:44 +00:00
thorpej 9eb328b495 RCS ID police. 1998-02-06 22:26:13 +00:00
thorpej 2d1cb11d5b Allow userland access to pd_entry_t and pt_entry_t, like the old pte.h
used to do.  Also, RCS ID police.
1998-02-06 21:58:05 +00:00
mrg 6bcccb887c oops, forgot to add these new files 1998-02-06 07:41:33 +00:00
mrg 29e93b8bea add the i386 MD portions for UVM. 1998-02-06 07:21:42 +00:00
drochner 3f38ea4063 provide pushfl/popfl to C code 1998-02-05 19:53:52 +00:00
thorpej 8abe76d2f0 Add offset and length parameters to bus_dmamap_sync(), used for specifiying
partial syncs of a DMA mapping.
1998-02-04 05:12:46 +00:00
thorpej 99cc8482d1 Change the last argument of bus_dmamap_sync() from bus_dmasync_op_t to int,
and allow more than one synchronization operation to be specified in
a single call.  Dissallow mixing of PRE and POST operations.
1998-02-04 01:57:27 +00:00
thorpej a7c5c1ef3c Add dm_mapsize to bus_dmamap_t and rename BUS_DMAMEM_NOSYNC to
BUS_DMA_COHERENT.
1998-02-04 00:32:55 +00:00
mycroft b5c132e4d2 Prototype __flt_rounds() consistently. 1998-02-03 01:26:20 +00:00
mycroft d664bf39b8 Add some comments about what the control words do. 1998-01-24 14:00:36 +00:00