1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-12-19 10:53:58 +00:00
freebsd/sys/sparc64/include
Scott Long f6b1c44d1f Mega busdma API commit.
Add two new arguments to bus_dma_tag_create(): lockfunc and lockfuncarg.
Lockfunc allows a driver to provide a function for managing its locking
semantics while using busdma.  At the moment, this is used for the
asynchronous busdma_swi and callback mechanism.  Two lockfunc implementations
are provided: busdma_lock_mutex() performs standard mutex operations on the
mutex that is specified from lockfuncarg.  dftl_lock() is a panic
implementation and is defaulted to when NULL, NULL are passed to
bus_dma_tag_create().  The only time that NULL, NULL should ever be used is
when the driver ensures that bus_dmamap_load() will not be deferred.
Drivers that do not provide their own locking can pass
busdma_lock_mutex,&Giant args in order to preserve the former behaviour.

sparc64 and powerpc do not provide real busdma_swi functions, so this is
largely a noop on those platforms.  The busdma_swi on is64 is not properly
locked yet, so warnings will be emitted on this platform when busdma
callback deferrals happen.

If anyone gets panics or warnings from dflt_lock() being called, please
let me know right away.

Reviewed by:	tmm, gibbs
2003-07-01 15:52:06 +00:00
..
_inttypes.h
_limits.h sys/sys/limits.h: 2003-05-19 20:29:07 +00:00
_stdint.h
_types.h - Add vm_paddr_t, a physical address type. This is required for systems 2003-03-25 00:07:06 +00:00
asi.h
asm.h - Fix placement of cvs ids in previous commit to match .S files in libc. 2003-04-29 00:37:41 +00:00
asmacros.h I was wrong, the ENTRY bits in asm.h did have a purpose -- for userland. 2003-04-26 20:54:45 +00:00
atomic.h
bus_common.h
bus_memio.h
bus_pio.h
bus_private.h Further cleanup of the sparc64 busdma implementation: 2003-06-18 16:41:36 +00:00
bus.h Mega busdma API commit. 2003-07-01 15:52:06 +00:00
cache.h Use vm_paddr_t for physical addresses. 2003-04-08 06:35:09 +00:00
ccr.h
clock.h
cpu.h
cpufunc.h add support for peeking at pci busses on UltraSparc systems. This prevents 2003-06-22 01:26:08 +00:00
critical.h
db_machdep.h BKPT_INST is supposed to be a breakpoint, not 0. 2003-06-07 18:24:37 +00:00
eeprom.h
elf.h
endian.h
exec.h
float.h
floatingpoint.h
fp.h - Rename pcb_fpstate to pcb_ufp (user floating point), and change it to 2003-04-01 04:02:45 +00:00
frame.h
fsr.h
idprom.h
ieee.h
ieeefp.h
in_cksum.h
instr.h
intr_machdep.h
iommureg.h
iommuvar.h Further cleanup of the sparc64 busdma implementation: 2003-06-18 16:41:36 +00:00
kerneldump.h Use vm_paddr_t for physical addresses. 2003-04-08 06:35:09 +00:00
kse.h
ktr.h Two tokens that don't together form a vaid preprocssor token cannot be 2003-04-26 17:00:10 +00:00
limits.h sys/sys/limits.h: 2003-05-19 20:29:07 +00:00
lsu.h
md_var.h Use vm_paddr_t for physical addresses. 2003-04-08 06:35:09 +00:00
metadata.h Slight reorg and added AMD64 support. A couple of the MODINFOMD_* values 2003-05-01 03:31:18 +00:00
mutex.h
nexusvar.h
ofw_bus.h Add the new sparc64 OFW PCI framework, conditional on options OFW_NEWPCI 2003-07-01 14:52:47 +00:00
ofw_machdep.h
ofw_mem.h - Declare sparc64_memreg and sparc64_nmemreg in machine/ofw_mem.h. 2003-06-07 18:29:29 +00:00
ofw_nexus.h
ofw_upa.h
param.h Migrate the thread stack management functions from the machine-dependent 2003-06-14 23:23:55 +00:00
pcb.h - Add space for kernel floating point registers to the pcb. These will be 2003-04-03 18:28:03 +00:00
pcpu.h Remove unused fields. 2003-03-18 08:15:24 +00:00
pmap.h - Move the routine for flushing all user mappings from the tlb from pmap to 2003-04-13 21:54:58 +00:00
proc.h
profile.h
pstate.h
ptrace.h
reg.h
reloc.h
resource.h
runq.h
setjmp.h
sigframe.h
signal.h
smp.h Use vm_paddr_t for physical addresses. 2003-04-08 06:35:09 +00:00
stdarg.h
sysarch.h
tick.h
tlb.h - Move the routine for flushing all user mappings from the tlb from pmap to 2003-04-13 21:54:58 +00:00
trap.h Allow fast instruction and data access mmu miss traps to be handled by 2003-04-29 21:30:59 +00:00
tsb.h Use vm_paddr_t for physical addresses. 2003-04-08 06:35:09 +00:00
tstate.h
tte.h Handle the fictitious pages created by the device pager. For fictitious 2003-03-27 02:16:31 +00:00
ucontext.h
upa.h
utrap.h Allow fast instruction and data access mmu miss traps to be handled by 2003-04-29 21:30:59 +00:00
varargs.h
ver.h
vmparam.h
watch.h Use vm_paddr_t for physical addresses. 2003-04-08 06:35:09 +00:00
wstate.h