2db99100a4
attributes (currently just BUS_DMA_NOCACHE): - Don't call pmap_change_attr() on the returned address, instead use kmem_alloc_contig() to ask the VM system for memory with the requested attribute. - As a result, always use kmem_alloc_contig() for non-default memory attributes, even for sub-page allocations. This requires adjusting bus_dmamem_free()'s logic for determining which free routine to use. - For x86, add a new dummy bus_dmamap that is used for static DMA buffers allocated via kmem_alloc_contig(). bus_dmamem_free() can then use the map pointer to determine which free routine to use. - For powerpc, add a new flag to the allocated map (bus_dmamem_alloc() always creates a real map on powerpc) to indicate which free routine should be used. Note that the BUS_DMA_NOCACHE handling in powerpc is currently #ifdef'd out. I have left it disabled but updated it to match x86. Reviewed by: scottl MFC after: 1 month |
||
---|---|---|
.. | ||
altivec.c | ||
autoconf.c | ||
bcopy.c | ||
bus_machdep.c | ||
busdma_machdep.c | ||
copystr.c | ||
cpu.c | ||
db_disasm.c | ||
db_hwwatch.c | ||
db_interface.c | ||
db_trace.c | ||
dump_machdep.c | ||
elf32_machdep.c | ||
elf64_machdep.c | ||
exec_machdep.c | ||
fpu.c | ||
fuswintr.c | ||
gdb_machdep.c | ||
genassym.c | ||
in_cksum.c | ||
intr_machdep.c | ||
iommu_if.m | ||
mem.c | ||
mmu_if.m | ||
mp_machdep.c | ||
openpic_fdt.c | ||
openpic.c | ||
pic_if.m | ||
platform_if.m | ||
platform.c | ||
pmap_dispatch.c | ||
sc_machdep.c | ||
setjmp.S | ||
sigcode32.S | ||
sigcode64.S | ||
stack_machdep.c | ||
suswintr.c | ||
syncicache.c | ||
sys_machdep.c | ||
uio_machdep.c |