Commit Graph

44 Commits

Author SHA1 Message Date
ad 06c343ac94 vm_page: put TAILQ_ENTRY into a union with LIST_ENTRY, so we can use both. 2008-06-04 12:41:40 +00:00
martin ce099b4099 Remove clause 3 and 4 from TNF licenses 2008-04-28 20:22:51 +00:00
he 157c460048 Need to include <powerpc/psl.h> and <powerpc/frame.h> here to get
PSL_EE and struct intrframe defined.  Fixes build problem for evbppc
EV64260 kernel.
2008-04-24 11:36:51 +00:00
garbled 2234198b7f Replace as much of the hardcoded CACHELINESIZE with
curcpu()->ci_ci.dcache_line_size as I can.  With this change, an ofppc kernel
compiled with both PPC_OEA and PPC_OEA64_BRIDGE defined, boots.
2008-02-05 18:52:55 +00:00
mrg bc98ae9212 move
extern struct powerpc_bus_dma_tag pci_bus_dma_tag;
where everyone can see it.  fixes ofppc builds.
2007-12-26 00:58:05 +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
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
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
hubertf 142c2a33ba Remove duplicate #includes, patch contributed in private mail
by Slava Semushin <slava.semushin@gmail.com>.

To verify that no nasty side effects of duplicate includes (or their
removal) have an effect here, I've compiled an i386/ALL kernel with
and without the patch, and the only difference in the resulting .o
files was in shifted line numbers in some assert() calls.
The comparison of the .o files was based on the output of "objdump -D".

Thanks to martin@ for the input on testing.
2007-01-24 13:08:11 +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
freza 78037d3f6d Bring ibm4xx interrupt code up to date:
- generic soft interrupts (ie. use powerpc/softintr.c)
- interrupt event counters (using the ones from powerpc/cpu.h:cpu_info
  where appropriate)
- cleanup ibm4xx_intr.h, move implementation details to intr.c

Convert all affected evbppc platforms.

OK by simonb@, some points discussed with matt@
2006-06-30 17:54:50 +00:00
freza dc25af75d0 Merge multiple definitions of cntlzw() ("count leading zeros")
instruction-wrapper to <powerpc/cpu.h>.

OK by briggs@
2006-06-13 18:24:37 +00:00
yamt 04ff17cc06 fix mistakes in yamt-uio_vmspace changes. 2006-03-12 22:44:27 +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 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
yamt ba38016298 implement splraiseipl() for the following ports.
evbppc, evbmips, evbsh3, hp700, mac68k, vax, x68k.
2005-11-27 14:01:45 +00:00
yamt bc21da4cfb bus_dmamem_map: honour BUS_DMA_NOWAIT. noted by Manuel Bouyer.
bus_space_map: always do NOWAIT allocation as it used to be before yamt-km.

we have too many copies!
2005-11-24 13:08:32 +00:00
scw 2224de5016 Appease -Wshadow. 2005-06-03 11:20:06 +00:00
yamt 6b2d8b66a4 merge yamt-km branch.
- don't use managed mappings/backing objects for wired memory allocations.
  save some resources like pv_entry.  also fix (most of) PR/27030.
- simplify kernel memory management API.
- simplify pmap bootstrap of some ports.
- some related cleanups.
2005-04-01 11:59:21 +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
thorpej 7a60e77293 bus_dmamap_load_mbuf(): Skip zero-length mbufs.
kern/24811
2004-11-28 17:34:45 +00:00
tacha 08adc832cf remove obsolete "pci_enumerate_bus" definition. 2004-08-02 18:07:40 +00:00
matt 3c0ef6aa5f Fix softnet intr handling (to be like the generic ppc softintr). 2004-06-01 00:49:41 +00:00
matt cec9cb32df Move CLKF_BASEPRI to machine specific <intr.h> file since it depends on
the encoding of the spl for the port.
2003-09-03 21:33:31 +00:00
lukem ed51729135 __KERNEL_RCSID() 2003-07-15 02:54:31 +00:00
fvdl d5aece61d6 Back out the lwp/ktrace changes. They contained a lot of colateral damage,
and need to be examined and discussed more.
2003-06-29 22:28:00 +00:00
darrenr 960df3c8d1 Pass lwp pointers throughtout the kernel, as required, so that the lwpid can
be inserted into ktrace records.  The general change has been to replace
"struct proc *" with "struct lwp *" in various function prototypes, pass
the lwp through and use l_proc to get the process pointer when needed.

Bump the kernel rev up to 1.6V
2003-06-28 14:20:43 +00:00
scw cd2d76d833 Fix an obvious pasto. 2003-05-19 08:10:03 +00:00
scw d0f3a5b671 Add parentheses around macro arguments. 2003-05-16 21:40:41 +00:00
scw 1f1e54196d Make this compile with DEBUG defined. 2003-05-16 21:38:50 +00:00
scw c48c683d1f Fix use of an uninitialised variable. This was harmless, other than
spuriously incrementing an interrupt counter.
2003-04-29 15:11:45 +00:00
wiz c42e1fac66 Management, not managment. Mostly from jmc@openbsd. 2003-04-26 22:07:12 +00:00
matt 4daebcbff5 Make the imask_t typedef a struct rather than a naked array. The attribute
on the array typedef was contaminating other u_int32_t naked arrays and
affecting their alignment.
2003-04-09 15:44:26 +00:00
thorpej 86f35f803c Use PAGE_SIZE rather than NBPG. 2003-04-02 02:45:36 +00:00
matt 582f976e54 Add __HAVE_GENERIC_SOFT_INTERRUPT support. 2003-03-17 16:54:16 +00:00
matt 5504cc0c26 Use "b" constraint so r0 won't be used. 2003-03-16 06:57:31 +00:00
matt 1d04c635f2 Make the result an early clobber so gcc won't get clever. 2003-03-16 06:56:47 +00:00
matt 640bee3010 Reduce visible globals. (gt_handle is now gt_memh and is only known to
machdep.c, gt_mainbus.c, and extintr.c)
2003-03-15 19:51:48 +00:00
matt 101a152db1 This contains no marvell specific code now. It now completely hides the
underlying PCI MD implementation.  XXX want to move this to
powerpc/include/ someday.
2003-03-15 19:50:31 +00:00
matt 0f1794e44a Make lint happy and use __asm && __volatile.
manipulate netisr via lwarx/stwcx. to get atomicity.
2003-03-15 07:50:28 +00:00
matt 210f48e582 Remove unneeded conditional code. 2003-03-06 07:15:46 +00:00
matt 0b8a5fd80f Adapt to powerpc/bus.h changes. 2003-03-06 00:20:39 +00:00
matt ff2281b498 Add preliminary support Marvell (Galileo) Discovery System Controllers.
This code was contributed by Allegro Networks.
2003-03-05 22:08:18 +00:00