Commit Graph

1324 Commits

Author SHA1 Message Date
thorpej
8b3fc18a1f Generic soft interrupt implementation for NetBSD/i386. This could
probably be tuned somewhat, but this is a stop-gap measure to hold
us until Bill Sommerfeld's new interrupt code comes in from the
MP branch.
2001-04-14 06:49:30 +00:00
wiz
c79d6f4378 Fix typo in comment reported by Yuji Yamano in kern/12391. 2001-03-12 17:26:37 +00:00
thorpej
ccea4c274b Avoid doing Very Bad Things by passing a horrible IRQ value to
npxprobe1().  Fixes a problem on IBM Thinkpads reported by
Chuck Cranor.
2001-01-21 04:55:48 +00:00
fvdl
0546607276 Export some variables. 2001-01-17 00:03:02 +00:00
thorpej
3a7c4f5973 Don't panic if we detect an IRQ combination that can't be shared,
just return NULL.
2001-01-10 01:15:32 +00:00
soren
2cc519bba5 <pc/display.h> has been moved to <dev/ic/pcdisplay.h>. 2000-12-01 07:55:10 +00:00
thorpej
990d23039d NBPG -> PAGE_SIZE. 2000-11-14 22:55:51 +00:00
eeh
8c3f6a0d10 Adapt to new line discipline scheme. 2000-11-02 00:37:56 +00:00
hpeyerl
87a8c94ed0 Sanity check the cursor position read from the 6845 and if clearly
off-screen, set it to 0x0.  From dean@huxley.org.
2000-10-12 22:36:30 +00:00
jdolecek
5fea96167f use new generic bootverbose instead of local definition 2000-09-24 12:37:03 +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
mrg
b564830503 remove include of <vm/vm.h>. <vm/vm.h> -> <uvm/uvm_extern.h> 2000-06-29 08:44:03 +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
thorpej
ff36cd64b7 Rearrange the npx driver a little to allow for multiple attachments
and add a pnpbios atttachment for it.
2000-06-16 03:47:24 +00:00
mycroft
6e7ce465e9 After almost 5 years, it is now time to decommission pcvt. Bon voyage. 2000-06-11 02:34:23 +00:00
sommerfeld
bcf02ec8ff If rnd is configured into the kernel, do rnd(4) entropy collection
from devices connected to pckbc:
 - Do actual sample collection in pckbc.
 - Add rndsource_element_t to the slot data.
 - Change pckbc_set_inputhandler() to take an additional argument,
the name of the device, which is (eventually) passed into
rnd_attach_source() to identify the source.
 - Change callers of pckbc_set_inputhander() appropriately.
2000-06-05 22:20:54 +00:00
mycroft
43a543fa88 Implement CLKF_INTR(), to count interrupt time separately. 2000-06-04 21:27:38 +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
jdolecek
8fedbd8497 Add i386-specific part of MicroChannel Architecture bus support, as
found in some older IBM PS/2 machines.

This code is based upon work by Scott D. Telford, with some minor bits
in arch/i386/mca/mca_machdep.c taken from FreeBSD.

XXX this is still very experimental and development version; use at your
XXX own risk
2000-05-11 16:38:10 +00:00
mycroft
468985f608 Adjust asm statement for newer GCCs. 2000-05-03 21:32:59 +00:00
tron
5bfc315184 Fix typo in comment. 2000-04-17 07:57:21 +00:00
thorpej
6dd5a9db6e Use dev/isa/fd.c. 2000-04-07 16:35:19 +00:00
thorpej
d8be1024c1 Make this compile again after the callout changes. 2000-04-02 19:54:29 +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
fvdl
bb8265c6be Update ISA/VL frontend for new ahc driver (done by Noriyuki Soda). 2000-03-15 02:05:19 +00:00
soren
95054da1a1 Fix doubled 'the's in comments. 2000-03-13 23:52:25 +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
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
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
minoura
93d494f9a5 Take care of National Geode (Cyrix MediaGX) built-in clock module bug.
Patch supplied by INOUE Yoshinari <pf5y-inue@asahi-net.or.jp>, kern/8654.
2000-02-02 15:26:27 +00:00
thorpej
52242fdf9f Update for sys/buf.h/disksort_*() changes. 2000-01-21 23:28:59 +00:00
enami
9d51226cc3 fix typo in comment. 2000-01-20 03:19:27 +00:00
takemura
ba04c55ed3 Absolute pointing device support.
- Wsmouse_input() get new argument 'flag', which indicates whether x/y/z are
   relative or absolute.
 - Wsmouse get new io controls, WSMOUSEIO_SCALIBCOORDS and
   WSMOUSEIO_GCALIBCOORDS.
2000-01-08 02:57:22 +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
drochner
59e13361f3 make "i386_isa_chipset" globally visible so it can be used from outside
the "isa" bus, attach "pnpbios" pseudo-bus if configured
1999-11-12 18:39:38 +00:00
drochner
536f716be9 use console_debugger() on CTL-ALT-ESC to honour the ddb.onconsole sysctl 1999-11-10 16:52:14 +00:00
enami
de37487d49 - Export initrtclock().
- Call it from apm_resume().

This fixes timer problem on some laptop after hybernation (PR#4808).
Reviewd by: fvdl@netbsd.org
1999-11-06 01:14:00 +00:00
drochner
e5f51da9de -mask interrupts w/o a handler
-update PIC _after_ the interrupt handler is linked into the chain
This fixes problems with dynamically installed interrupt handlers:
Interrupts were enabled before the handler was installed under some
circumstances (esp. on faster machines), leading to endless interrupt
handling.
1999-10-25 14:49:41 +00:00
fvdl
7bae87cae4 Set variable i386_fpu_present to 1 if a functional FPU was detected. For
later retrieval by sysctl.
1999-10-06 20:03:51 +00:00
thorpej
11cae42531 Centralize the declaration and clearing of `cold'. 1999-09-17 19:59:35 +00:00
kleink
5663256d0a Unlike in an i386 a.out assembler, where in an .align n directive n is meant
to be the logarithm to base 2 of the alignment, in an ELF environment n is
the actual alignment boundary; thus, adjust the directives accordingly.

Albeit the wonderful i386 architecture doesn't mind the smaller alignment in
an obvious way, it is likely to have resulted in some performance penalty
during the a.out->ELF transition.
1999-08-23 08:24:36 +00:00
drochner
6bd627f17f back out last rev - it looks like a local hack which shouldn't go here,
and it breaks the "opms at pckbc" case
1999-08-19 15:33:16 +00:00
augustss
db574ba708 Add umodem device. 1999-08-16 22:27:08 +00:00
wrstuden
f3b3a1b98d If we get into pcclose() without a defined tty, just exit rather than
dereferencing a null pointer.
1999-07-26 19:31:54 +00:00
thorpej
14a2fa8169 Fix IPv6 software interrupt vector label. 1999-07-01 22:03:38 +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
marc
cd040ea927 s/mkdir/mkdir -p/, since not all the parents of $(FONTDIR) are
guaranteed to exist.
1999-06-23 04:29:28 +00:00
thorpej
c5e6001ff8 Don't built most of the PCVT utilities; they're not really useful anymore,
now that we're trying to deprecate PCVT.

XXX Leave the fonts and font editor for now.
1999-06-04 18:47:33 +00:00
drochner
4479f71283 sync diagnostic printouts in opms_pckbc_probe() with dev/pckbc/psm.c:
pmsprobe() -- most notably: put a part inside #ifdef DEBUG
1999-05-06 09:10:51 +00:00
mycroft
7c33a450ba Recalculate delaytab[]. We need to round up in case we were on the edge of a
tick and the hardware mysteriously responds fast enough that the delay ends
up being 1 tick short.  An unlikely event, but just in case anything actually
relies on this...
1999-03-29 17:54:34 +00:00
mycroft
c40877ff9d delay(): For small values of n, use a fixed lookup table. Also use
rtclock_tval as the limit, since this is what we actually programmed the chip
for.
1999-03-29 17:33:29 +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
mycroft
6ada3afd8b Reject variant numbers which are too large (so that a new version of isapnpdevs
with an old driver will not lose mysteriously).
1999-03-22 10:00:09 +00:00
mycroft
2cccf3bd4a Update callers of isapnp_devmatch(). 1999-03-22 09:44:12 +00:00
cgd
37d2c204a7 Moved to arch/i386/include/isa_machdep.h,v 1999-03-19 05:02:11 +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
d6d5f13551 Moved to arch/i386/include/isapnp_machdep.h,v 1999-03-19 03:18:54 +00:00
explorer
3ebb419571 Update to slightly altered rnd_attach_source() api 1999-02-28 17:08:05 +00:00
mycroft
0dbf3ab3ca Use DMAMODE_DEMAND. Not tested, but presumed to work. 1999-02-22 02:56:13 +00:00
mycroft
4449a6ef39 Kill vestiges of isa_establish(). 1999-02-19 16:15:06 +00:00
christos
21485fd1d6 noise reduction. 1999-02-13 16:45:28 +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
drochner
b2c4a7b933 use mi data conversion functions, simplify inittodr() and resettodr() 1999-02-07 17:29:26 +00:00
drochner
0f145938b4 put all century related code into an own function clock_expandyear(),
touch the CMOS century byte only if the CMOS contents passes a
checksum test which qualifies it as "known compliant"
1999-02-07 16:18: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
christos
0c8f3a4f31 Don't use obsolete sgtty crap. 1999-02-02 13:00:19 +00:00
christos
d102972c3a Add a missing _C_LABEL(). Now an ELF kernel builds (if one removes the
-z flag from the ld line, in the Makefile)
1999-01-26 14:28:05 +00:00
christos
12bbb63ed7 move the assembly functions to locore.s and make the variables used by
them non-static
1999-01-26 14:27:08 +00:00
drochner
4120bf17c4 rename the autoconfiguration related symbols to opms* to avoid namespace
collisions with an mi wscons-capable pms driver
1999-01-23 15:07:10 +00:00
drochner
6ad1646ffb provide backwards-compatible busmouse drivers
(technically identical to lms.c/mms.c)
1999-01-23 15:05:39 +00:00
drochner
45ecb32709 make the busmice work with wscons 1999-01-23 15:03:50 +00:00
drochner
67589898ca Be more cautious about writing to the CMOS century byte. Update it only
if it contained a "19" before. There are machines (in particular PS/2
descendants) which have a checksum at this place.
Introduce a patchable kernel variable "rtc_update_century" to modify
the behaviour: 1="always update" (for testing and if one wants to set
the clock back) or -1="never touch".
1999-01-18 10:50:23 +00:00
augustss
332d7c138f Avoid arithmetic on `void *' since that's not ANSI C. 1999-01-08 18:10:35 +00:00
mycroft
b28c62f40d Run async_update() even if something is select()ing. 1998-12-12 17:29:39 +00:00
thorpej
1e7ec4d50e Use _C_LABEL() to generate C labels in assembly code, don't prepend an
underscore (_) directly.  (XXX Except in a few places, where traditional
CPP's macro evaluation semantics break things, so we test for __ELF__
directly in those places).
1998-12-01 04:30:59 +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
mellon
3cc58a69cc Fix a signed/unsigned thinko (this is cgd's fix) 1998-11-05 15:59:00 +00:00
hubertf
e45fa5e3bb add version for libkeycap 1998-11-01 17:14:27 +00:00
hubertf
eccf9ccdd8 s|share/misc|share/pcvt| 1998-11-01 16:37:06 +00:00
hubertf
bc70dd6bc5 Cleanup includes-installation, ACK'd by Matthias Drochner. 1998-10-28 14:14:45 +00:00
hubertf
c884556c3d Prevent loop caused by custom includes-target 1998-10-28 01:46:46 +00:00
hubertf
7e430fc3fd Install programs & files for pcvt. 1998-10-26 21:01:28 +00:00
perry
3a86ff1e67 Fix a stupid bug -- an if that was supposed to be nested but wasn't. 1998-10-13 15:14:13 +00:00
perry
37cb095897 1) Change "dectohexdec" and "hexdectodec" to "bintobcd" and
"bcdtobin". The old names were bogus.
2) Make the code grok the NVRAM's century field. This code is, to say
the least, poorly tested. It should make NetBSD play nicer with other
OSes that care about the century field, however.
1998-10-12 15:41:11 +00:00
perry
e7340f0ed3 Fix a potential Y2K bug on some clock chips: we were loading invalid
BCD into the year field of the RTC in years > 1999. It seems to have
worked just fine on my old broken down test machine, but apparently
some others actually get hurt. Suckage. We now make sure that we load
valid BCD.

Other ports should check for variations on this theme.
1998-10-06 05:52:23 +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
55df520938 Can't use -traditional; __RENAME() breaks due to a limitation in the
"traditional" C preprocessor.
1998-09-29 08:28:20 +00:00
thorpej
5a5380b92b This program is icky, and will die soon. So, don't put a whole lot of
effort into it, but make it build again by casting the second arg to signal().
1998-09-29 08:27:36 +00:00
thorpej
005af97f9e Use "print-objdir". 1998-09-29 08:16:11 +00:00
christos
50909bd6d9 Assign copyright to TNF. 1998-09-05 15:28:08 +00:00
christos
2d876282c2 Assign copyright to TNF. 1998-09-05 15:28:06 +00:00
lukem
c9db84ecc9 distclean is a synonym for cleandir 1998-09-05 15:15:14 +00:00
lukem
cdf68a7fa3 a minor hack i've had locally for ages: if PCVT_CAPS_IS_CTRL is
defined, make the capslock key act like another control key.
1998-08-30 09:59:47 +00:00
thorpej
daa8ad1747 Add some braces to make egcs happy. 1998-08-25 04:56:01 +00:00
veego
ff2c3adddc Add some braces to stop the new egcs warnings. 1998-08-20 19:55:06 +00:00
mycroft
c9a799adf6 Assign my copyrights to TNF. 1998-08-15 04:57:50 +00:00
mycroft
cc8a78e783 Assign my copyrights to TNF. 1998-08-15 04:42:42 +00:00
mycroft
6d3d8a1350 Make copyright notices with my name consistent. 1998-08-15 03:02:31 +00:00
thorpej
330d142f16 vm_offset_t -> {vaddr_t,paddr_t}, vm_size_t -> vsize_t 1998-08-13 21:36:02 +00:00