| /netbsd-src/sys/external/bsd/drm/dist/bsd-core/ |
| H A D | drm_dma.c | 44 dev->dma = malloc(sizeof(*dev->dma), DRM_MEM_DRIVER, M_NOWAIT | M_ZERO); in drm_dma_setup() 45 if (dev->dma == NULL) in drm_dma_setup() 55 drm_device_dma_t *dma = dev->dma; in drm_dma_takedown() local 58 if (dma == NULL) in drm_dma_takedown() 63 if (dma->bufs[i].seg_count) { in drm_dma_takedown() 65 " seg_count = %d\n", i, dma->bufs[i].buf_count, in drm_dma_takedown() 66 dma->bufs[i].seg_count); in drm_dma_takedown() 67 for (j = 0; j < dma->bufs[i].seg_count; j++) { in drm_dma_takedown() 68 drm_pci_free(dev, dma->bufs[i].seglist[j]); in drm_dma_takedown() 70 if (dma->bufs[i].seglist) in drm_dma_takedown() [all …]
|
| H A D | drm_bufs.c | 442 drm_device_dma_t *dma = dev->dma; in drm_do_addbufs_agp() local 499 entry = &dma->bufs[order]; in drm_do_addbufs_agp() 514 buf->idx = dma->buf_count + entry->buf_count; in drm_do_addbufs_agp() 519 buf->offset = (dma->byte_count + offset); in drm_do_addbufs_agp() 543 temp_buflist = realloc(dma->buflist, in drm_do_addbufs_agp() 544 (dma->buf_count + entry->buf_count) * sizeof(*dma->buflist), in drm_do_addbufs_agp() 551 dma->buflist = temp_buflist; in drm_do_addbufs_agp() 554 dma->buflist[i + dma->buf_count] = &entry->buflist[i]; in drm_do_addbufs_agp() 557 dma->buf_count += entry->buf_count; in drm_do_addbufs_agp() 558 dma->byte_count += byte_count; in drm_do_addbufs_agp() [all …]
|
| /netbsd-src/sys/external/bsd/drm2/dist/drm/ |
| H A D | drm_dma.c | 68 dev->dma = kzalloc(sizeof(*dev->dma), GFP_KERNEL); in drm_legacy_dma_setup() 69 if (!dev->dma) in drm_legacy_dma_setup() 73 memset(&dev->dma->bufs[i], 0, sizeof(dev->dma->bufs[0])); in drm_legacy_dma_setup() 88 struct drm_device_dma *dma = dev->dma; in drm_legacy_dma_takedown() local 95 if (!dma) in drm_legacy_dma_takedown() 100 if (dma->bufs[i].seg_count) { in drm_legacy_dma_takedown() 104 dma->bufs[i].buf_count, in drm_legacy_dma_takedown() 105 dma->bufs[i].seg_count); in drm_legacy_dma_takedown() 106 for (j = 0; j < dma->bufs[i].seg_count; j++) { in drm_legacy_dma_takedown() 107 if (dma->bufs[i].seglist[j]) { in drm_legacy_dma_takedown() [all …]
|
| H A D | drm_bufs.c | 772 struct drm_device_dma *dma = dev->dma; in drm_legacy_addbufs_agp() local 788 if (!dma) in drm_legacy_addbufs_agp() 836 entry = &dma->bufs[order]; in drm_legacy_addbufs_agp() 863 buf->idx = dma->buf_count + entry->buf_count; in drm_legacy_addbufs_agp() 868 buf->offset = (dma->byte_count + offset); in drm_legacy_addbufs_agp() 896 temp_buflist = krealloc(dma->buflist, in drm_legacy_addbufs_agp() 897 (dma->buf_count + entry->buf_count) * in drm_legacy_addbufs_agp() 898 sizeof(*dma->buflist), GFP_KERNEL); in drm_legacy_addbufs_agp() 906 dma->buflist = temp_buflist; in drm_legacy_addbufs_agp() 909 dma->buflist[i + dma->buf_count] = &entry->buflist[i]; in drm_legacy_addbufs_agp() [all …]
|
| /netbsd-src/sys/dev/hyperv/ |
| H A D | hyperv_common.c | 114 hyperv_dma_alloc(bus_dma_tag_t dmat, struct hyperv_dma *dma, bus_size_t size, in hyperv_dma_alloc() argument 119 KASSERT(dma != NULL); in hyperv_dma_alloc() 120 KASSERT(dma->segs == NULL); in hyperv_dma_alloc() 123 dma->segs = kmem_zalloc(sizeof(*dma->segs) * nsegs, KM_SLEEP); in hyperv_dma_alloc() 124 dma->nsegs = nsegs; in hyperv_dma_alloc() 126 error = bus_dmamem_alloc(dmat, size, alignment, boundary, dma->segs, in hyperv_dma_alloc() 133 error = bus_dmamem_map(dmat, dma->segs, rseg, size, &dma->addr, in hyperv_dma_alloc() 141 BUS_DMA_WAITOK, &dma->map); in hyperv_dma_alloc() 147 error = bus_dmamap_load(dmat, dma->map, dma->addr, size, NULL, in hyperv_dma_alloc() 155 memset(dma->addr, 0, dma->map->dm_mapsize); in hyperv_dma_alloc() [all …]
|
| /netbsd-src/sys/external/bsd/drm2/dist/drm/nouveau/ |
| H A D | nouveau_dma.c | 48 mem = &mem[chan->dma.cur]; in OUT_RINGp() 53 chan->dma.cur += nr_dwords; in OUT_RINGp() 93 val > chan->push.addr + (chan->dma.max << 2)) in READ_GET() 104 int ip = (chan->dma.ib_put * 2) + chan->dma.ib_base; in nv50_dma_push() 106 BUG_ON(chan->dma.ib_free < 1); in nv50_dma_push() 111 chan->dma.ib_put = (chan->dma.ib_put + 1) & chan->dma.ib_max; in nv50_dma_push() 117 nvif_wr32(&chan->user, 0x8c, chan->dma.ib_put); in nv50_dma_push() 120 chan->dma.ib_free--; in nv50_dma_push() 128 while (chan->dma.ib_free < count) { in nv50_dma_push_wait() 141 chan->dma.ib_free = get - chan->dma.ib_put; in nv50_dma_push_wait() [all …]
|
| H A D | nouveau_dma.h | 97 chan->dma.free -= size; in RING_SPACE() 104 nouveau_bo_wr32(chan->push.buffer, chan->dma.cur++, data); in OUT_RING() 149 if (chan->dma.cur == chan->dma.put) in FIRE_RING() 153 if (chan->dma.ib_max) { in FIRE_RING() 154 nv50_dma_push(chan, chan->push.addr + (chan->dma.put << 2), in FIRE_RING() 155 (chan->dma.cur - chan->dma.put) << 2); in FIRE_RING() 157 WRITE_PUT(chan->dma.cur); in FIRE_RING() 160 chan->dma.put = chan->dma.cur; in FIRE_RING() 166 chan->dma.cur = chan->dma.put; in WIND_RING()
|
| /netbsd-src/sys/dev/fdt/ |
| H A D | fdt_dma.c | 55 struct fdtbus_dma_controller *dma; in fdtbus_register_dma_controller() local 57 dma = kmem_alloc(sizeof(*dma), KM_SLEEP); in fdtbus_register_dma_controller() 58 dma->dma_dev = dev; in fdtbus_register_dma_controller() 59 dma->dma_phandle = phandle; in fdtbus_register_dma_controller() 60 dma->dma_funcs = funcs; in fdtbus_register_dma_controller() 62 LIST_INSERT_HEAD(&fdtbus_dma_controllers, dma, dma_next); in fdtbus_register_dma_controller() 70 struct fdtbus_dma_controller *dma; in fdtbus_get_dma_controller() local 72 LIST_FOREACH(dma, &fdtbus_dma_controllers, dma_next) { in fdtbus_get_dma_controller() 73 if (dma->dma_phandle == phandle) in fdtbus_get_dma_controller() 74 return dma; in fdtbus_get_dma_controller() [all …]
|
| /netbsd-src/sys/arch/evbppc/wii/dev/ |
| H A D | bwdsp.c | 88 size_t align, struct bwdsp_dma *dma) in bwdsp_allocdma() argument 92 dma->dma_size = size; in bwdsp_allocdma() 93 error = bus_dmamem_alloc(sc->sc_dmat, dma->dma_size, align, 0, in bwdsp_allocdma() 94 dma->dma_segs, 1, &dma->dma_nsegs, BUS_DMA_WAITOK); in bwdsp_allocdma() 98 error = bus_dmamem_map(sc->sc_dmat, dma->dma_segs, dma->dma_nsegs, in bwdsp_allocdma() 99 dma->dma_size, &dma->dma_addr, BUS_DMA_WAITOK | BWDSP_MAP_FLAGS); in bwdsp_allocdma() 103 error = bus_dmamap_create(sc->sc_dmat, dma->dma_size, dma->dma_nsegs, in bwdsp_allocdma() 104 dma->dma_size, 0, BUS_DMA_WAITOK, &dma->dma_map); in bwdsp_allocdma() 108 error = bus_dmamap_load(sc->sc_dmat, dma->dma_map, dma->dma_addr, in bwdsp_allocdma() 109 dma->dma_size, NULL, BUS_DMA_WAITOK); in bwdsp_allocdma() [all …]
|
| /netbsd-src/sys/arch/arm/sunxi/ |
| H A D | sunxi_codec.c | 107 size_t align, struct sunxi_codec_dma *dma) in sunxi_codec_allocdma() argument 111 dma->dma_size = size; in sunxi_codec_allocdma() 112 error = bus_dmamem_alloc(sc->sc_dmat, dma->dma_size, align, 0, in sunxi_codec_allocdma() 113 dma->dma_segs, 1, &dma->dma_nsegs, BUS_DMA_WAITOK); in sunxi_codec_allocdma() 117 error = bus_dmamem_map(sc->sc_dmat, dma->dma_segs, dma->dma_nsegs, in sunxi_codec_allocdma() 118 dma->dma_size, &dma->dma_addr, BUS_DMA_WAITOK | BUS_DMA_COHERENT); in sunxi_codec_allocdma() 122 error = bus_dmamap_create(sc->sc_dmat, dma->dma_size, dma->dma_nsegs, in sunxi_codec_allocdma() 123 dma->dma_size, 0, BUS_DMA_WAITOK, &dma->dma_map); in sunxi_codec_allocdma() 127 error = bus_dmamap_load(sc->sc_dmat, dma->dma_map, dma->dma_addr, in sunxi_codec_allocdma() 128 dma->dma_size, NULL, BUS_DMA_WAITOK); in sunxi_codec_allocdma() [all …]
|
| H A D | sunxi_i2s.c | 263 size_t align, struct sunxi_i2s_dma *dma) in sunxi_i2s_allocdma() argument 267 dma->dma_size = size; in sunxi_i2s_allocdma() 268 error = bus_dmamem_alloc(sc->sc_dmat, dma->dma_size, align, 0, in sunxi_i2s_allocdma() 269 dma->dma_segs, 1, &dma->dma_nsegs, BUS_DMA_WAITOK); in sunxi_i2s_allocdma() 273 error = bus_dmamem_map(sc->sc_dmat, dma->dma_segs, dma->dma_nsegs, in sunxi_i2s_allocdma() 274 dma->dma_size, &dma->dma_addr, BUS_DMA_WAITOK | BUS_DMA_COHERENT); in sunxi_i2s_allocdma() 278 error = bus_dmamap_create(sc->sc_dmat, dma->dma_size, dma->dma_nsegs, in sunxi_i2s_allocdma() 279 dma->dma_size, 0, BUS_DMA_WAITOK, &dma->dma_map); in sunxi_i2s_allocdma() 283 error = bus_dmamap_load(sc->sc_dmat, dma->dma_map, dma->dma_addr, in sunxi_i2s_allocdma() 284 dma->dma_size, NULL, BUS_DMA_WAITOK); in sunxi_i2s_allocdma() [all …]
|
| /netbsd-src/sys/dev/pci/ |
| H A D | hifn7751.c | 1191 struct hifn_dma *dma = sc->sc_dma; in hifn_alloc_slot() local 1193 if (dma->cmdi == HIFN_D_CMD_RSIZE) { in hifn_alloc_slot() 1194 dma->cmdi = 0; in hifn_alloc_slot() 1195 dma->cmdr[HIFN_D_CMD_RSIZE].l = htole32(HIFN_D_VALID | in hifn_alloc_slot() 1200 *cmdp = dma->cmdi++; in hifn_alloc_slot() 1201 dma->cmdk = dma->cmdi; in hifn_alloc_slot() 1203 if (dma->srci == HIFN_D_SRC_RSIZE) { in hifn_alloc_slot() 1204 dma->srci = 0; in hifn_alloc_slot() 1205 dma->srcr[HIFN_D_SRC_RSIZE].l = htole32(HIFN_D_VALID | in hifn_alloc_slot() 1210 *srcp = dma->srci++; in hifn_alloc_slot() [all …]
|
| H A D | auixp.c | 445 struct auixp_dma *dma; in auixp_malloc() local 451 dma = kmem_alloc(sizeof(*dma), KM_SLEEP); in auixp_malloc() 454 error = auixp_allocmem(sc, size, 16, dma); in auixp_malloc() 456 kmem_free(dma, sizeof(*dma)); in auixp_malloc() 461 SLIST_INSERT_HEAD(&sc->sc_dma_list, dma, dma_chain); in auixp_malloc() 464 "in %d segs\n", KERNADDR(dma), (uint32_t) DMAADDR(dma), dma->size, in auixp_malloc() 465 dma->nsegs) in auixp_malloc() 468 return KERNADDR(dma); in auixp_malloc() 481 struct auixp_dma *dma; in auixp_free() local 485 SLIST_FOREACH(dma, &sc->sc_dma_list, dma_chain) { in auixp_free() [all …]
|
| /netbsd-src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/engine/dma/ |
| H A D | Kbuild | 2 nvkm-y += nvkm/engine/dma/base.o 3 nvkm-y += nvkm/engine/dma/nv04.o 4 nvkm-y += nvkm/engine/dma/nv50.o 5 nvkm-y += nvkm/engine/dma/gf100.o 6 nvkm-y += nvkm/engine/dma/gf119.o 7 nvkm-y += nvkm/engine/dma/gv100.o 9 nvkm-y += nvkm/engine/dma/user.o 10 nvkm-y += nvkm/engine/dma/usernv04.o 11 nvkm-y += nvkm/engine/dma/usernv50.o 12 nvkm-y += nvkm/engine/dma/usergf100.o [all …]
|
| /netbsd-src/sys/external/gpl2/dts/dist/arch/arm64/boot/dts/ti/ |
| H A D | k3-j721e-som-p0.dtsi | 29 mcu_r5fss0_core0_dma_memory_region: r5f-dma-memory@a0000000 { 30 compatible = "shared-dma-pool"; 36 compatible = "shared-dma-pool"; 41 mcu_r5fss0_core1_dma_memory_region: r5f-dma-memory@a1000000 { 42 compatible = "shared-dma-pool"; 48 compatible = "shared-dma-pool"; 53 main_r5fss0_core0_dma_memory_region: r5f-dma-memory@a2000000 { 54 compatible = "shared-dma-pool"; 60 compatible = "shared-dma-pool"; 65 main_r5fss0_core1_dma_memory_region: r5f-dma-memory@a3000000 { [all …]
|
| /netbsd-src/sys/external/gpl2/dts/dist/arch/arm/boot/dts/ |
| H A D | ste-dbx5x0.dtsi | 497 dmas = <&dma 38 0 0x2>, /* Logical - DevToMem */ 498 <&dma 38 0 0x0>, /* Logical - MemToDev */ 499 <&dma 37 0 0x2>, /* Logical - DevToMem */ 500 <&dma 37 0 0x0>, /* Logical - MemToDev */ 501 <&dma 36 0 0x2>, /* Logical - DevToMem */ 502 <&dma 36 0 0x0>, /* Logical - MemToDev */ 503 <&dma 19 0 0x2>, /* Logical - DevToMem */ 504 <&dma 19 0 0x0>, /* Logical - MemToDev */ 505 <&dma 18 0 0x2>, /* Logical - DevToMem */ 506 <&dma 18 0 0x0>, /* Logical - MemToDev */ [all …]
|
| H A D | bcm2835-common.dtsi | 11 dma: dma@7e007000 { label 12 compatible = "brcm,bcm2835-dma"; 25 /* dma channel 11-14 share one irq */ 47 "dma-shared-all"; 48 #dma-cells = <1>; 49 brcm,dma-channel-mask = <0x7f35>; 135 dmas = <&dma 17>; 136 dma-names = "audio-rx"; 205 dmas = <&dma 2>, <&dma 3>; 206 dma-names = "tx", "rx"; [all …]
|
| H A D | sama7g5.dtsi | 15 #include <dt-bindings/dma/at91.h> 221 dma-names = "rx"; 233 dma-names = "tx"; 244 dma-names = "tx", "rx"; 256 dma-names = "tx", "rx"; 295 dma-names = "tx", "rx"; 296 atmel,use-dma-rx; 297 atmel,use-dma-tx; 321 dma-names = "rx", "tx"; 322 atmel,use-dma-rx; [all …]
|
| /netbsd-src/sys/arch/hp300/dev/ |
| H A D | dmareg.h | 118 struct dmaBdevice *dma = dc->dm_Bhwaddr; \ 119 dma->dmaB_addr = dc->dm_chain[dc->dm_cur].dc_addr; \ 120 dma->dmaB_count = dc->dm_chain[dc->dm_cur].dc_count - 1; \ 121 dma->dmaB_cmd = dc->dm_cmd; \ 123 struct dmadevice *dma = dc->dm_hwaddr; \ 124 dma->dma_addr = dc->dm_chain[dc->dm_cur].dc_addr; \ 125 dma->dma_count = dc->dm_chain[dc->dm_cur].dc_count - 1; \ 126 dma->dma_cmd = dc->dm_cmd; \ 131 struct dmadevice *dma = dc->dm_hwaddr; \ 132 dma->dma_addr = dc->dm_chain[dc->dm_cur].dc_addr; \ [all …]
|
| /netbsd-src/sys/external/bsd/drm2/dist/drm/i915/ |
| H A D | i915_sw_fence_work.c | 18 dma_fence_signal(&f->dma); in fence_complete() 28 dma_fence_set_error(&f->dma, err); in fence_work() 31 dma_fence_put(&f->dma); in fence_work() 42 dma_fence_set_error(&f->dma, fence->error); in fence_notify() 44 if (!f->dma.error) { in fence_notify() 45 dma_fence_get(&f->dma); in fence_notify() 53 dma_fence_put(&f->dma); in fence_notify() 67 struct dma_fence_work *f = container_of(fence, typeof(*f), dma); in get_timeline_name() 74 struct dma_fence_work *f = container_of(fence, typeof(*f), dma); in fence_release() 78 BUILD_BUG_ON(offsetof(typeof(*f), dma)); in fence_release() [all …]
|
| H A D | i915_sw_fence.c | 464 struct dma_fence *dma; member 470 static void dma_i915_sw_fence_wake(struct dma_fence *dma, in dma_i915_sw_fence_wake() argument 475 i915_sw_fence_set_error_once(cb->fence, dma->error); in dma_i915_sw_fence_wake() 490 cb->dma->ops->get_driver_name(cb->dma), in timer_i915_sw_fence_wake() 491 cb->dma->ops->get_timeline_name(cb->dma), in timer_i915_sw_fence_wake() 492 (uint64_t)cb->dma->seqno, in timer_i915_sw_fence_wake() 499 static void dma_i915_sw_fence_wake_timer(struct dma_fence *dma, in dma_i915_sw_fence_wake_timer() argument 508 i915_sw_fence_set_error_once(fence, dma->error); in dma_i915_sw_fence_wake_timer() 521 dma_fence_put(cb->dma); in irq_i915_sw_fence_work() 527 struct dma_fence *dma, in i915_sw_fence_await_dma_fence() argument [all …]
|
| /netbsd-src/sys/external/bsd/drm2/dist/drm/i915/gem/ |
| H A D | i915_gem_fence.c | 16 struct dma_fence dma; member 28 dma_fence_signal(&stub->dma); in stub_notify() 32 dma_fence_put(&stub->dma); in stub_notify() 51 struct stub_fence *stub = container_of(fence, typeof(*stub), dma); in stub_release() 55 BUILD_BUG_ON(offsetof(typeof(*stub), dma)); in stub_release() 57 dma_fence_free(&stub->dma); in stub_release() 79 dma_fence_init(&stub->dma, &stub_fence_ops, &stub->lock, in i915_gem_object_lock_fence() 88 dma_resv_add_excl_fence(obj->base.resv, &stub->dma); in i915_gem_object_lock_fence() 90 return &stub->dma; in i915_gem_object_lock_fence() 93 stub_release(&stub->dma); in i915_gem_object_lock_fence() [all …]
|
| /netbsd-src/sys/external/bsd/drm2/dist/drm/nouveau/nvkm/subdev/mmu/ |
| H A D | nouveau_nvkm_subdev_mmu_mem.c | 46 bus_addr_t *dma; member 51 dma_addr_t *dma; member 73 return mem->dma[0]; in nvkm_mem_addr() 91 .dma = mem->dma, in nvkm_mem_map_dma() 101 if (mem->dma) { in nvkm_mem_dtor() 102 kmem_free(mem->dma, mem->nseg * sizeof(mem->dma[0])); in nvkm_mem_dtor() 117 mem->dma[mem->pages], PAGE_SIZE, in nvkm_mem_dtor() 121 kvfree(mem->dma); in nvkm_mem_dtor() 224 if (args->v0.dma) { in nvkm_mem_new_host() 227 mem->dma = args->v0.dma; in nvkm_mem_new_host() [all …]
|
| /netbsd-src/sys/arch/i386/pci/ |
| H A D | glxsb.c | 585 glxsb_dma_alloc(struct glxsb_softc *sc, int size, struct glxsb_dma_map *dma) in glxsb_dma_alloc() argument 589 dma->dma_nsegs = 1; in glxsb_dma_alloc() 590 dma->dma_size = size; in glxsb_dma_alloc() 592 rc = bus_dmamap_create(sc->sc_dmat, size, dma->dma_nsegs, size, in glxsb_dma_alloc() 593 0, BUS_DMA_NOWAIT, &dma->dma_map); in glxsb_dma_alloc() 602 &dma->dma_seg, dma->dma_nsegs, &dma->dma_nsegs, BUS_DMA_NOWAIT); in glxsb_dma_alloc() 611 rc = bus_dmamem_map(sc->sc_dmat, &dma->dma_seg, 1, size, in glxsb_dma_alloc() 612 &dma->dma_vaddr, BUS_DMA_NOWAIT); in glxsb_dma_alloc() 620 rc = bus_dmamap_load(sc->sc_dmat, dma->dma_map, dma->dma_vaddr, in glxsb_dma_alloc() 629 dma->dma_paddr = dma->dma_map->dm_segs[0].ds_addr; in glxsb_dma_alloc() [all …]
|
| /netbsd-src/sys/arch/next68k/stand/boot/ |
| H A D | scsi.c | 69 struct dma_dev *dma; in scsi_init() local 72 dma = (struct dma_dev *)P_SCSI_CSR; in scsi_init() 79 dma->dd_csr = DMACSR_RESET; in scsi_init() 332 struct dma_dev *dma; in dma_start() local 335 dma = (struct dma_dev *)P_SCSI_CSR; in dma_start() 372 dma->dd_csr = DMACSR_READ | DMACSR_RESET; in dma_start() 373 dma->dd_next_initbuf = dma_buffer; in dma_start() 374 dma->dd_limit = DMA_ENDALIGN(char *, dma_buffer+len); in dma_start() 375 dma->dd_csr = DMACSR_READ | DMACSR_SETENABLE; in dma_start() 377 dma->dd_csr = 0; in dma_start() [all …]
|