Commit Graph

62 Commits

Author SHA1 Message Date
jdolecek
e0cc03a09b merge kqueue branch into -current
kqueue provides a stateful and efficient event notification framework
currently supported events include socket, file, directory, fifo,
pipe, tty and device changes, and monitoring of processes and signals

kqueue is supported by all writable filesystems in NetBSD tree
(with exception of Coda) and all device drivers supporting poll(2)

based on work done by Jonathan Lemon for FreeBSD
initial NetBSD port done by Luke Mewburn and Jason Thorpe
2002-10-23 09:10:23 +00:00
thorpej
bd5bb4652b Add trailing ; to CFATTACH_DECL 2002-10-02 15:45:10 +00:00
itohy
d64dac0bb7 ../../../../arch/dreamcast/dev/g2/gapspci.c:62: macro `CFATTACH_DECL' used with only 5 args 2002-10-02 09:49:38 +00:00
thorpej
c5e91d447d Use CFATTACH_DECL(). 2002-10-02 04:55:47 +00:00
thorpej
c4cbfcf060 Use CFATTACH_DECL(). 2002-10-01 02:54:11 +00:00
thorpej
9a711d6985 Declare all cfattach structures const. 2002-09-27 20:29:02 +00:00
thorpej
6c88de3b53 Introduce a new routine, config_match(), which invokes the
cfattach->ca_match function in behalf of the caller.  Use it
rather than invoking cfattach->ca_match directly.
2002-09-27 03:17:40 +00:00
thorpej
bb34bc8caa When in a match routine, the cfdata we're passed always references
our own cfdriver, so don't bother comparing the names, since they
will always match.
2002-09-27 02:16:28 +00:00
gehenna
77a6b82b27 Merge the gehenna-devsw branch into the trunk.
This merge changes the device switch tables from static array to
dynamically generated by config(8).

- All device switches is defined as a constant structure in device drivers.

- The new grammer ``device-major'' is introduced to ``files''.

	device-major <prefix> char <num> [block <num>] [<rules>]

- All device major numbers must be listed up in port dependent majors.<arch>
  by using this grammer.

- Added the new naming convention.
  The name of the device switch must be <prefix>_[bc]devsw for auto-generation
  of device switch tables.

- The backward compatibility of loading block/character device
  switch by LKM framework is broken. This is necessary to convert
  from block/character device major to device name in runtime and vice versa.

- The restriction to assign device major by LKM is completely removed.
  We don't need to reserve LKM entries for dynamic loading of device switch.

- In compile time, device major numbers list is packed into the kernel and
  the LKM framework will refer it to assign device major number dynamically.
2002-09-06 13:18:43 +00:00
hannken
69d849b171 Convert to new device buffer queue interface.
Approved by: Marcus Comstedt <marcus@netbsd.org>
2002-07-27 11:07:35 +00:00
tsutsui
0fe49daba1 Add keydescs for swapctrlcaps, and clean up formating. 2002-07-05 14:29:06 +00:00
junyoung
3d826105dc alloc_attr -> allocattr
Approved by Matthias Drochner.
2002-07-04 14:37:10 +00:00
drochner
d2b9876081 move initialization of the "struct pglist" returned by uvm_pglistalloc()
from the calling code into uvm_pglistalloc() itself for consistency
and easier error handling
2002-06-02 14:44:35 +00:00
thorpej
204183c0fa * Add "pcitag_t *pba_bridgetag" to pci_attach_args. This is set to
NULL for root PCI busses.  For busses behind a bridge, it points to
  a persistent copy of the bridge's pcitag_t.  This can be very useful
  for machine-dependent PCI bus enumeration code.
* Implement a machine-dependent pci_enumerate_bus() for sparc64 which
  uses OFW device nodes to enumerate the bus.  When a PCI bus that is
  behind a bridge is attached, pci_attach_hook() allocates a new PCI
  chipset tag for the new bus and sets it's "curnode" to the OFW node
  of the bridge.  This is used as a starting point when enumerating
  that bus.  Root busses get the OFW node of the host bridge (psycho).
* Garbage-collect "ofpci" and "ofppb" from the sparc64 port.
2002-05-16 01:01:28 +00:00
thorpej
e19aab3751 Implement pci_decompose_tag(). 2002-05-15 17:09:04 +00:00
thorpej
b8e4c037bd De-obfuscate somewhat; define and use register bit constants, etc. 2002-05-03 04:42:08 +00:00
uch
b095a0d0c5 ANSIfy, KNF 2002-03-25 18:59:39 +00:00
uch
e8300f3659 adapted to new interrupt code and shb changes. 2002-03-24 18:21:08 +00:00
atatat
31144d9976 Convert ioctl code to use EPASSTHROUGH instead of -1 or ENOTTY for
indicating an unhandled "command".  ERESTART is -1, which can lead to
confusion.  ERESTART has been moved to -3 and EPASSTHROUGH has been
placed at -4.  No ioctl code should now return -1 anywhere.  The
ioctl() system call is now properly restartable.
2002-03-17 19:40:26 +00:00
ad
b89e39b91a Reorganise the wsfont stuff slightly so that multiple display adapters
with different bit/byte order requirements can co-exist happily.
2002-03-13 15:05:13 +00:00
uch
90baa8b206 SR related parts moved to psl.h. cpufunc.h segments.h are removed.
kernel mode checking is only SR.MD. no check stack pointer.
2002-03-03 14:31:24 +00:00
uch
1bdc7cc5ca Clean up functions
disable_intr, enable_intr, disable_interrupt, enable_interrupt,
disable_ext_intr, enable_ext_intr.
New functions:
for external interrupt:
_cpu_intr_suspend and _cpu_intr_resume.
for exception:
_cpu_exception_suspend and _cpu_exception_resume.
2002-02-19 17:21:18 +00:00
atatat
239aeafb2e Fixes to eliminate some compiler complaints, such as:
suggest explicit braces to avoid ambiguous `else'
suggest parentheses around assignment used as truth value
2001-12-04 15:27:35 +00:00
chris
0e7661f023 Update pmap_update to now take the updated pmap as an argument.
This will allow improvements to the pmaps so that they can more easily defer expensive operations, eg tlb/cache flush, til the last possible moment.

Currently this is a no-op on most platforms, so they should see no difference.

Reviewed by Jason.
2001-09-10 21:19:08 +00:00
thorpej
b42556773f Driver for the Dreamcast mouse, based on the programming info
on Marcus's web site.

Not yet thoroughly tested, but does appear to generate events
that look okay.
2001-09-06 22:07:39 +00:00
thorpej
2d2a66209d Indent. 2001-09-06 20:04:49 +00:00
wiz
8eaf0a103e bcopy -> memcpy, bzero -> memset 2001-07-22 15:46:41 +00:00
chs
e44e9dec8a replace vm_page_t with struct vm_page *. 2001-05-26 21:27:02 +00:00
marcus
e90e316b11 Changed maple device to attach per function instead of per unit.
Raw maple unit access is now possible through /dev/maple*.
2001-05-26 19:04:39 +00:00
marcus
bc069b939c Abstracted handling of System ASIC controlled IRQ:s a little.
Three different IRQ:s can be selected for each event, 9, 11, or 13
(which selects hardware priority).  More events to be added as they
are discovered.  Do not use shb_intr_establish() to register IRQ 9, 11
or 13 anymore.
2001-04-24 19:43:23 +00:00
thorpej
1c3a62e066 Sprinkle pmap_update() calls after calls to:
- pmap_enter()
- pmap_remove()
- pmap_protect()
- pmap_kenter_pa()
- pmap_kremove()
as described in pmap(9).

These calls are relatively conservative.  It may be possible to
optimize these a little more.
2001-04-24 04:30:50 +00:00
marcus
fab9e9b3bb sc_port_units was set incorrectly at probe time. 2001-03-16 19:57:49 +00:00
marcus
d152e7d2f8 Off-by-one error on v_absolute_size fixed. 2001-03-05 02:45:24 +00:00
marcus
a6ecc2d5de Made it possible to mmap the frame buffer. 2001-03-04 01:36:35 +00:00
marcus
33090db137 Harmonized keycodes with USB. 2001-03-02 00:25:06 +00:00
msaitoh
f4b23a11a4 fix a check code whether mkbs is console or not 2001-02-22 15:34:28 +00:00
marcus
7d1d4a2f4d New, interrupt-driven implementation. 2001-02-20 00:04:40 +00:00
marcus
037484799a PAL support... 2001-02-19 21:37:31 +00:00
marcus
0d6830073e Added subunit scan. 2001-02-03 23:25:51 +00:00
thorpej
4fab177f7e Don't make the reporting of the keyboard type a parenthetical. 2001-02-02 03:09:16 +00:00
thorpej
2ae9f715f6 Report the VGA/NTSC RGB/composite mode of the display. 2001-02-02 03:07:29 +00:00
thorpej
6195ca3474 Add some info to the dmamap_sync assertion messages. 2001-02-01 19:56:44 +00:00
marcus
fc7cc52392 Fixed the last raw accesses to use bus_space. Also added DMA mem size field. 2001-02-01 19:35:04 +00:00
thorpej
fbfc0872d8 New PowerVR display driver, based on the TURBOchannel "cfb"
driver by Tohru Nisimura (a very good framework for a FB driver,
BTW!), using bits of Marcus's original driver for the hardware
access.

The main advantage of this version is that is uses rasops (which
is faster than the rcons stuff) and wsfont, so you can select the
console font in the kernel config file.  Using the BOLD8x16 font,
you get an 80x30 console (vast improvement compared to the Gallant12x22
font).
2001-02-01 01:25:56 +00:00
thorpej
26cf6921bc GAPS PCI bridge support. Low-level stuff from Marcus, bus_dma
implementation from me.
2001-02-01 01:04:55 +00:00
thorpej
e2c0abd45d Implement {read,write}_region_1, and sprinkle some __volatile
around for sanity.
2001-02-01 01:01:50 +00:00
marcus
f2358f8d43 Basic G2 locking implemented. 2001-01-31 21:58:37 +00:00
thorpej
63885cd020 G2 bus support. Low level stuff by Marcus, bus_space stuff by me. 2001-01-31 18:33:24 +00:00
thorpej
c625c7ee25 Set the keyboard layout based on what type of keyboard
we probe, defaulting to Japanese if we don't know what
kind of keyboard we have.

XXX This should be done differently, if we ever want to
support multiple keyboards.
2001-01-31 03:21:03 +00:00
thorpej
37aca7f3f0 Add a US keyboard map. This may need to be reworked, as this
uses the Japanese keyboard map as the base.
2001-01-31 03:19:50 +00:00