freebsd-dev/sys/sparc64/include
Thomas Moestl f42d907165 When multiple IOMMUs are present in a system, use a single TSB for all
of them, and couple them by always performing all operations on all
present IOMMUs. This is required because with the current API there
is no way to determine on which bus a busdma operation is performed.

While being there, clean up the iommu code a bit.

This should be a step in the direction of allow some of larger machines
to work; tests have shown that there still seem to be problems left.
2002-07-16 18:17:03 +00:00
..
_inttypes.h Since printf(3) now supports the `j' conversion specifier, use that 2002-06-30 05:48:03 +00:00
_limits.h o Add new header <sys/stdint.h>. 2001-11-02 18:05:43 +00:00
ansi.h Move __offsetof() macro from <machine/ansi.h> to <sys/cdefs.h>. It's 2002-07-08 16:43:35 +00:00
asi.h Add ASI definitions of UltraSPARC-III (Cu) processors, and add some 2002-07-16 16:22:25 +00:00
asm.h ASM versions of __FBSDID. 2002-03-23 02:01:27 +00:00
asmacros.h Minor style. 2002-05-25 01:44:08 +00:00
atomic.h Use ASI_P instead of ASI_N if _KERNEL isn't defined so that these 2001-12-29 06:48:43 +00:00
bus_common.h Add support for the counter-timer which is included in the Sun U2S and 2002-02-13 16:16:36 +00:00
bus_memio.h Add bus_space and busdma support for sparc64. 2001-11-09 20:05:53 +00:00
bus_pio.h Add bus_space and busdma support for sparc64. 2001-11-09 20:05:53 +00:00
bus_private.h Revamp the busdma implementation a bit: 2002-03-24 02:50:53 +00:00
bus.h Revamp the busdma implementation a bit: 2002-03-24 02:50:53 +00:00
cache.h Add SMP aware cache flushing functions, which operate on a single physical 2002-05-20 16:30:47 +00:00
ccr.h Add definitions for the number of bits in the icc and xcc fields 2001-12-29 06:50:25 +00:00
clock.h Add a missing prototype to fix a warning. 2002-06-23 21:29:00 +00:00
cpu.h Define CKLF_PC in terms of TRAPF_PC. 2002-01-08 04:36:53 +00:00
cpufunc.h Stage-2 commit of the critical*() code. This re-inlines cpu_critical_enter() 2002-04-01 23:51:23 +00:00
critical.h Stage-2 commit of the critical*() code. This re-inlines cpu_critical_enter() 2002-04-01 23:51:23 +00:00
db_machdep.h 1. Remove kdbframe. Bad idea. 2001-11-18 03:41:12 +00:00
eeprom.h Add missing header for the eeprom driver frontents. 2002-04-05 02:40:54 +00:00
elf.h Move the definition of ElfN_Hashelt to common headers. The only platform 2002-05-30 08:32:18 +00:00
emul.h Oops. machine/emul.h didn't exist yet. 2002-04-09 01:42:19 +00:00
endian.h style sync with other platforms. 2002-05-15 16:40:25 +00:00
exec.h The author isn't a [UC] Regents. Correct the copyright language. 2001-08-09 02:09:34 +00:00
float.h Remove __P. 2002-03-21 00:06:55 +00:00
floatingpoint.h Add this FreeBSD standard header. 2002-02-10 14:27:20 +00:00
fp.h Remove code from trap which is handled in userland now. 2002-06-08 07:17:19 +00:00
frame.h Rename some fields in struct frame to be compatible with NetBSD/OpenBSD, 2002-04-09 00:57:23 +00:00
fsr.h Fix the type of some constants, and make some macros safer by casting 2002-03-11 03:04:28 +00:00
idprom.h Add a structure defintion for the id prom contents. 2001-11-18 20:50:11 +00:00
ieee.h Add kernel headers needed to build libc. Some are bogus and/or just enough 2001-11-18 17:56:46 +00:00
ieeefp.h Standardize idempotentcy ifdefs. 2001-11-18 20:30:16 +00:00
in_cksum.h Add optimized implementations of in_cksum_skip() and related functions 2001-11-06 20:05:01 +00:00
instr.h Add new UltraSPARC-III VIS II instructions. 2002-07-16 17:44:01 +00:00
intr_machdep.h Forward declare struct trapframe. 2002-05-29 19:25:14 +00:00
iommureg.h Remove the superfluous second argument from the IOTSBSLOT() macro. 2002-04-02 17:41:06 +00:00
iommuvar.h When multiple IOMMUs are present in a system, use a single TSB for all 2002-07-16 18:17:03 +00:00
kse.h Add files that are new for KSE. 2002-06-29 07:04:59 +00:00
ktr.h Provide an implementation of KTR_CPU that doesn't use pcpu, so we don't 2002-04-06 08:40:59 +00:00
limits.h o Add new header <sys/stdint.h>. 2001-11-02 18:05:43 +00:00
lsu.h Add new LSU bits for UltraSPARC-III. 2002-07-16 16:24:03 +00:00
md_var.h Make cpu_identify take the value of the ver register and cpuid as arguments 2002-02-27 06:05:50 +00:00
metadata.h Use a contrived 'tlb_entry' structure for passing the mappings for the 2002-05-29 05:49:59 +00:00
mutex.h Modify the critical section API as follows: 2001-12-18 00:27:18 +00:00
nexusvar.h Correct the defintion of struct ofw_upa_regs, and use it instead of 2002-01-02 18:27:13 +00:00
ofw_bus.h Make the OpenFirmware interrupt mapping code more generic, to reduce 2002-03-24 02:11:06 +00:00
ofw_machdep.h Add support for starting and stopping cpus with ipis. 2002-03-13 04:59:01 +00:00
ofw_nexus.h Correct the defintion of struct ofw_upa_regs, and use it instead of 2002-01-02 18:27:13 +00:00
ofw_upa.h Correct the defintion of struct ofw_upa_regs, and use it instead of 2002-01-02 18:27:13 +00:00
param.h Move MI stuff out of MD param.h files. 2002-05-14 20:35:29 +00:00
pcb.h Remove pcb_y. It has moved to trapframe. 2001-12-29 07:00:30 +00:00
pcpu.h Convert the interrupt queue from an array to a linked list. Implement 2002-05-25 02:39:28 +00:00
pmap.h pmap_kremove can no longer be used to remove the magic device mappings 2002-06-25 15:13:09 +00:00
proc.h Remove unneeded include. 2002-05-08 04:21:58 +00:00
profile.h Remove a couple of __P() stragglers. 2002-06-29 02:32:34 +00:00
pstate.h Define PSTATE_MM_MASK in terms of PSTATE_MM_SIZE. 2001-12-29 07:01:34 +00:00
ptrace.h Move the definition of PT_[GS]ET{,DB,FP}REGS from the MD ptrace.h to the 2002-03-16 00:25:53 +00:00
pv.h Add pv list linkage and a pmap pointer to struct tte. Remove separately 2002-05-29 05:56:05 +00:00
reg.h Comment two values I was looking at for GDB. 2002-05-09 02:07:51 +00:00
reloc.h Add kernel headers needed to build libc. Some are bogus and/or just enough 2001-11-18 17:56:46 +00:00
resource.h
runq.h Move the "- 1" into the RQB_FFS(mask) macro itself so that 2002-06-20 06:21:20 +00:00
setjmp.h jmpbuf is no longer a ucontext_t since it does not need to be passed 2001-12-29 07:03:09 +00:00
sigframe.h Implement signals. 2001-09-03 22:41:40 +00:00
signal.h Don't use types that require other headers. 2001-09-30 18:52:17 +00:00
smp.h When sending cache flushing IPIs, don't try to IPI the triggering CPU 2002-07-12 16:26:49 +00:00
stdarg.h Gcc 3.1 varargs support. 2002-05-10 02:02:54 +00:00
sysarch.h Add support for an alternate signal trampoline; add a sysarch call to register 2002-04-29 18:08:26 +00:00
tick.h Add support for driving the clocks on secondary cpus. 2002-03-13 04:38:33 +00:00
tlb.h Fix bizarre SMP problems. The secondary cpus sometimes start up with junk 2002-06-08 07:10:28 +00:00
trap.h Add a panic stack, which is used as a known good stack when there is 2002-01-01 20:26:46 +00:00
tsb.h Bump TSB_PAGES_SHIFT to 4. Less sucks too much. 2002-06-04 19:40:45 +00:00
tstate.h Add definitions for TSTATE_MM_* and TSTATE_{I,X}CC_*. 2001-12-29 07:11:00 +00:00
tte.h Add pv list linkage and a pmap pointer to struct tte. Remove separately 2002-05-29 05:56:05 +00:00
types.h Remove label_t and physadr, which seem to have never been used in 2002-07-10 15:47:59 +00:00
ucontext.h 1. Remove bootinfo and just pass loader metadata to the kernel. 2001-11-18 03:02:53 +00:00
upa.h Lower UPA_MEMSTART to 0x1c000000000. This is required for some larger 2002-04-02 17:38:52 +00:00
utrap.h Add a define for the fp restore soft trap type. 2002-01-01 21:19:46 +00:00
varargs.h Gcc 3.1 varargs support. 2002-05-10 02:02:54 +00:00
ver.h Identify UltraSPARC-III and UltraSPARC-III+ cpus. 2002-07-13 03:23:29 +00:00
vmparam.h Use a fixed address for KERNBASE, so it doesn't change if the size of KVA 2002-07-13 03:29:10 +00:00
watch.h Add code for supporting hardware watch points. 2001-08-20 23:50:08 +00:00
wstate.h Implement a nested window state. This avoids attempting to spill a user 2002-02-25 18:37:17 +00:00