Commit Graph

132 Commits

Author SHA1 Message Date
martin
ce099b4099 Remove clause 3 and 4 from TNF licenses 2008-04-28 20:22:51 +00:00
tsutsui
02cb47cab2 Split softc and device_t for zsc(4) and its children.
XXX we should restructure MI APIs and make it really machine independent.
2008-03-29 19:15:34 +00:00
sekiya
209f5cf4d0 Increase MSGBUFSIZE so that we don't truncate dmesg before syslog
starts.
2008-02-21 09:32:12 +00:00
macallan
c46b52294a add bus_space_mmap() 2008-02-13 17:00:12 +00:00
tsutsui
de92c0b2bc Replace bootinfo stuff on sgimips (which has been disabled in bootloader)
with ones used on arc (which has been working for a year) and
enable it in bootloader. Tested on IP32.
2008-01-26 14:35:24 +00:00
joerg
3615cf7715 Now that __HAVE_TIMECOUNTER and __HAVE_GENERIC_TODR are invariants,
remove the conditionals and the code associated with the undef case.
2008-01-20 18:09:03 +00:00
ad
4b293a84e1 Interrupt handling changes, in discussion since February:
- Reduce available SPL levels for hardware devices to none, vm, sched, high.
- Acquire kernel_lock only for interrupts at IPL_VM.
- Implement threaded soft interrupts.
2007-12-03 15:33:00 +00:00
ad
d37935697b Merge tty changes from the vmlocking branch. 2007-11-07 15:56:11 +00:00
garbled
d974db0ada Merge the ppcoea-renovation branch to HEAD.
This branch was a major cleanup and rototill of many of the various OEA
cpu based PPC ports that focused on sharing as much code as possible
between the various ports to eliminate near-identical copies of files in
every tree.  Additionally there is a new PIC system that unifies the
interface to interrupt code for all different OEA ppc arches.  The work
for this branch was done by a variety of people, too long to list here.

TODO:
bebox still needs work to complete the transition to -renovation.
ofppc still needs a bunch of work, which I will be looking at.
ev64260 still needs to be renovated
amigappc was not attempted.

NOTES:
pmppc was removed as an arch, and moved to a evbppc target.
2007-10-17 19:52:51 +00:00
macallan
f6e06b3004 sprinkle (vaddr_t) to deal with sizeof(paddr_t) != sizeof(void *)
Now the loader should build again.
2007-07-23 00:45:52 +00:00
macallan
02d1fad157 use 64bit paddr_t and bus_addr_t so we can mmap DMA buffers uncached 2007-07-17 04:03:22 +00:00
ad
63811f5275 Generic soft interrupts are mandatory. 2007-07-14 21:48:17 +00:00
tsutsui
1a56f97bac Fix swapped SI_QUEUENAMES to match SI_SOFT* numbers. 2007-06-26 12:55:38 +00:00
tsutsui
73b3a64df4 Move declaretions of _spl*() and _{clr,set}softintr() functions
(which are in mips/locore.S) into <mips/locore.h>
from various MD files.
2007-06-17 06:04:27 +00:00
rumble
7a969b00a1 Update a prototype corresponding to rev. 1.36 of sgimips/autoconf.c. 2007-05-11 01:40:18 +00:00
christos
53524e44ef Kill caddr_t; there will be some MI fallout, but it will be fixed shortly. 2007-03-04 05:59:00 +00:00
mrg
4410329b87 add a pair of new bus_dma(9) functions:
int _bus_dmatag_subregion(bus_dma_tag_t tag,
				  bus_addr_t min_addr,
				  bus_addr_t max_addr,
				  bus_dma_tag_t *newtag,
				  int flags)
	void _bus_dmatag_destroy(bus_dma_tag_t tag)

that allow a (normally broken/limited) device to restrict the bus address
range it can talk to.  this is used by bce(4) to limit DMA addresses to
1GB range, the maximum the chip can address.

all this is from Yorick Hardy <yhardy@uj.ac.za> with input from several
people on tech-kern.

XXX: bus_dma(9) needs an update still.
2007-02-21 20:41:23 +00:00
ad
e2147a0dfd + mutex.h, rwlock.h 2007-02-18 16:25:44 +00:00
ad
3363855a4a Remove spllowersoftclock() and CLKF_BASEPRI(), and always dispatch callouts
via a soft interrupt. In the near future, softclock will be run from process
context.
2007-02-16 02:53:43 +00:00
ad
b07ec3fc38 Merge newlock2 to head. 2007-02-09 21:55:00 +00:00
rumble
1426ceeded IP12 (and perhaps other systems) appear to be buggy and incapable of
reliably supporting badaddr(). False negatives appear to occur
approximately 1.8 percent of the time, although neither false positives
nor consecutive false negatives occur. We take advantage of the latter
property and always use a wrapper that makes multiple checks.

My IP12 no longer sees occasional ghost devices and related panics during
boot.
2006-12-29 05:26:30 +00:00
rumble
af1144f245 Guiness -> Guinness. 2006-12-22 01:32:37 +00:00
yamt
8bf7662829 merge yamt-splraiseipl branch.
- finish implementing splraiseipl (and makeiplcookie).
	  http://mail-index.NetBSD.org/tech-kern/2006/07/01/0000.html
	- complete workqueue(9) and fix its ipl problem, which is reported
	  to cause audio skipping.
	- fix netbt (at least compilation problems) for some ports.
	- fix PR/33218.
2006-12-21 15:55:21 +00:00
tsutsui
afb7d3cbe0 Protect from multiple inclusion. 2006-09-26 13:11:59 +00:00
gdamore
5a87ca8ef8 sgimips converted to timecounters. Systems that can do them get mips_cp0
based logic.  We also use the common mips3_clock functions for those systems,
removing some port-specific code.

Tested by martin@.
2006-09-16 08:50:27 +00:00
rumble
f30a520560 Switch sgimips to MI todr. 2006-09-05 01:38:59 +00:00
bjh21
e10108c7f2 Nothing in the kernel now tests __HAVE_NWSCONS, so stop defining it everywhere. 2006-09-03 13:51:23 +00:00
rumble
aa71bc7886 Generalise pci/pci_machdep.c further and move all mace-specific code into
mace/pci_mace.c in preparation for pci devices on the gio(4) bus.
2006-08-30 23:35:10 +00:00
drochner
84f50d1b92 don't install <machine/db_machdep.h>, this is kernel only 2006-07-26 19:54:56 +00:00
martin
d8c7f94e0e Implement bus_space_*_stream_* methods for sgimips - so that we can use the
atheros wlan driver. Thanks to Izumi Tsutsui for lots of input. All errors,
as usualy, are mine though.
2006-06-08 19:29:16 +00:00
tsutsui
a465c6b884 Tweak bus_space_barrier(9) macro to appease
"left-hand operand of comma expression has no effect"
warnings by gcc4.
2006-05-26 13:23:34 +00:00
tsutsui
936c3743c7 Switch macepci to use MI pci_configure_bus(9) rather than its own fixup code.
Tested on my O2 with several devices, and ok'ed by sekiya.
2006-04-17 14:01:08 +00:00
tsutsui
cd453227e1 _ds_vaddr member in struct sgimips_bus_dma_segment is a virtual address,
so it should be vaddr_t rather than bus_addr_t.
2006-04-16 08:26:41 +00:00
yamt
ec5a93183a merge yamt-uio_vmspace branch.
- use vmspace rather than proc or lwp where appropriate.
  the latter is more natural to specify an address space.
  (and less likely to be abused for random purposes.)
- fix a swdmover race.
2006-03-01 12:38:10 +00:00
perry
fbae48b901 Change "inline" back to "__inline" in .h files -- C99 is still too
new, and some apps compile things in C89 mode. C89 keywords stay.

As per core@.
2006-02-16 20:17:12 +00:00
christos
606bb2caed free -> dealloc
unsigned -> size_t for alloc/dealloc
2006-01-25 18:28:25 +00:00
perry
5f1c88d70d Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete. 2005-12-24 20:06:46 +00:00
christos
95e1ffb156 merge ktrace-lwp. 2005-12-11 12:16:03 +00:00
tsutsui
e54d906c60 Add empty <machine/wired_map.h> for the MI mips/wired_map.c. 2005-11-05 09:54:48 +00:00
dyoung
a37289db57 Make disklabel(8) and fdisk(8) into "host tools " last step: build
and install ${TOOLDIR}/bin/${MACHINE_GNU_PLATFORM}-disklabel,
${TOOLDIR}/bin/${MACHINE_GNU_PLATFORM}-fdisk by "reaching over" to
the sources in ${NETBSDSRCDIR}/sbin/{disklabel fdisk}/.

To avoid clashes with a build-host's header files, especially on
*BSD, the host-tools versions of fdisk and disklabel search for
#includes such as disklabel.h, disklabel_acorn.h, disklabel_gpt.h,
and bootinfo.h in a new #includes namespace, nbinclude/.  That is,
they #include <nbinclude/sys/disklabel.h>, <nbinclude/machine/disklabel.h>,
<nbinclude/sparc64/disklabel.h>, instead of <sys/disklabel.h> and
such.  I have also updated the system headers to #include from
nbinclude/-space when HAVE_NBTOOL_CONFIG_H is #defined.
2005-06-12 19:46:15 +00:00
martin
172ecdbad8 Avoid a global name "netmask" - it causes lots of shadow warnings all over
the place. Collect all interrupt masks into a single array instead.
Constify a bit and fix a bogus argument to config_rootfound().
2005-06-03 19:02:33 +00:00
matt
a6db24a485 Add a dm_maxsegsz public member to bus_dmamap_t. This allows a user of the API
to select the maximum segment size for each bus_dmamap_load (up to the maxsegsz
supplied to bus_dmamap_create).  dm_maxsegsz is reset to the value supplied to
bus_dmamap_create when the dmamap is unloaded.
2005-03-09 19:04:43 +00:00
sekiya
d671c9b8d3 De-__P() 2005-02-28 07:24:51 +00:00
jmc
ceb4d24120 Pull host/arch native label information into bootblock.h. Therefore pieces of
this are accessible from host tools.
2004-11-24 21:59:32 +00:00
sekiya
8590eac465 Use the mace interrupt handler for PCI interrupts.
From KIYOHARA Takashi
2004-09-06 07:24:06 +00:00
drochner
a5a5473c25 remove now unnecessary "pci_enumerate_bus" definitions 2004-07-29 16:55:25 +00:00
sekiya
79fdbacde6 Add ih_next to the data structure. Part of Steve Rumble's interrupt-sharing
scheme.
2004-07-07 00:08:43 +00:00
kleink
7b3b647647 Factor out W{CHAR,INT}_{MAX,MIN} into their own header file. 2004-05-08 21:51:47 +00:00
drochner
cf8b697c65 remove license clauses 3 and 4 from my cpoyright notices 2004-03-24 17:06:57 +00:00
sekiya
ad76afdc86 de-__P. 2004-02-08 13:15:42 +00:00