Changeset View
Changeset View
Standalone View
Standalone View
head/sys/boot/kshim/bsd_kernel.c
Show First 20 Lines • Show All 69 Lines • ▼ Show 20 Lines | |||||
int | int | ||||
bus_dmamem_alloc(bus_dma_tag_t dmat, void** vaddr, int flags, | bus_dmamem_alloc(bus_dma_tag_t dmat, void** vaddr, int flags, | ||||
bus_dmamap_t *mapp) | bus_dmamap_t *mapp) | ||||
{ | { | ||||
void *addr; | void *addr; | ||||
addr = malloc(dmat->maxsize + dmat->alignment, XXX, XXX); | addr = malloc(dmat->maxsize + dmat->alignment, XXX, XXX); | ||||
if (addr == 0) | if (addr == NULL) | ||||
return (ENOMEM); | return (ENOMEM); | ||||
*mapp = addr; | *mapp = addr; | ||||
addr = (void*)(((uintptr_t)addr + dmat->alignment - 1) & ~(dmat->alignment - 1)); | addr = (void*)(((uintptr_t)addr + dmat->alignment - 1) & ~(dmat->alignment - 1)); | ||||
*vaddr = addr; | *vaddr = addr; | ||||
return (0); | return (0); | ||||
} | } | ||||
▲ Show 20 Lines • Show All 1,373 Lines • Show Last 20 Lines |