diff options
| author | Marcel Moolenaar <marcel@FreeBSD.org> | 2005-05-25 07:25:12 +0000 |
|---|---|---|
| committer | Marcel Moolenaar <marcel@FreeBSD.org> | 2005-05-25 07:25:12 +0000 |
| commit | 6fbeb2e223c505e908cb5e6d822e604f7688d4fe (patch) | |
| tree | 4b05b9e3169820bc2542e5feb5e89700b41f69ed | |
| parent | 5b45c9f2a169c25f094e064f2ea015c2449bb796 (diff) | |
Notes
| -rw-r--r-- | sys/alpha/alpha/busdma_machdep.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/alpha/alpha/busdma_machdep.c b/sys/alpha/alpha/busdma_machdep.c index f2aa85994bbb..ee2ee410fd7d 100644 --- a/sys/alpha/alpha/busdma_machdep.c +++ b/sys/alpha/alpha/busdma_machdep.c @@ -479,6 +479,7 @@ bus_dmamap_load(bus_dma_tag_t dmat, bus_dmamap_t map, void *buf, bus_size_t buflen, bus_dmamap_callback_t *callback, void *callback_arg, int flags) { + bus_dma_segment_t segment; vm_offset_t vaddr; vm_offset_t paddr; bus_dma_segment_t *sg; @@ -495,6 +496,7 @@ bus_dmamap_load(bus_dma_tag_t dmat, bus_dmamap_t map, void *buf, * of the bus address space. */ vaddr = trunc_page((vm_offset_t) buf); + dmat->segments = &segment; dmat->segments[0].ds_addr = map->busaddress + (vm_offset_t) buf - vaddr; dmat->segments[0].ds_len = buflen; @@ -505,6 +507,7 @@ bus_dmamap_load(bus_dma_tag_t dmat, bus_dmamap_t map, void *buf, buflen); map->buflen = buflen; (*callback)(callback_arg, dmat->segments, 1, error); + dmat->segments = NULL; return (0); } |
