Lines Matching defs:dmap
514 i40e_free_dma_buffer(i40e_dma_buffer_t *dmap)
516 if (dmap->dmab_dma_address != NULL) {
517 VERIFY(dmap->dmab_dma_handle != NULL);
518 (void) ddi_dma_unbind_handle(dmap->dmab_dma_handle);
519 dmap->dmab_dma_address = NULL;
520 dmap->dmab_size = 0;
523 if (dmap->dmab_acc_handle != NULL) {
524 ddi_dma_mem_free(&dmap->dmab_acc_handle);
525 dmap->dmab_acc_handle = NULL;
526 dmap->dmab_address = NULL;
529 if (dmap->dmab_dma_handle != NULL) {
530 ddi_dma_free_handle(&dmap->dmab_dma_handle);
531 dmap->dmab_dma_handle = NULL;
539 ASSERT(dmap->dmab_dma_address == NULL);
540 ASSERT(dmap->dmab_address == NULL);
541 ASSERT(dmap->dmab_size == 0);
542 dmap->dmab_len = 0;
547 * fills in the information in dmap and is designed for all of our single cookie
551 i40e_alloc_dma_buffer(i40e_t *i40e, i40e_dma_buffer_t *dmap,
570 NULL, &dmap->dmab_dma_handle);
574 dmap->dmab_dma_handle = NULL;
581 ret = ddi_dma_mem_alloc(dmap->dmab_dma_handle, size, accp, flags,
582 DDI_DMA_DONTWAIT, NULL, &dmap->dmab_address, &len,
583 &dmap->dmab_acc_handle);
587 dmap->dmab_address = NULL;
588 dmap->dmab_acc_handle = NULL;
589 i40e_free_dma_buffer(dmap);
597 bzero(dmap->dmab_address, len);
602 ret = ddi_dma_addr_bind_handle(dmap->dmab_dma_handle, NULL,
603 dmap->dmab_address, len, DDI_DMA_RDWR | flags, DDI_DMA_DONTWAIT,
608 i40e_free_dma_buffer(dmap);
613 dmap->dmab_dma_address = cookie.dmac_laddress;
614 dmap->dmab_size = len;
615 dmap->dmab_len = 0;
789 i40e_dma_buffer_t *dmap;
798 dmap = &rcb->rcb_dma;
799 if (i40e_alloc_dma_buffer(i40e, dmap,
814 dmap->dmab_size -= I40E_BUF_IPHDR_ALIGNMENT;
815 dmap->dmab_address += I40E_BUF_IPHDR_ALIGNMENT;
816 dmap->dmab_dma_address += I40E_BUF_IPHDR_ALIGNMENT;
822 rcb->rcb_mp = desballoc((unsigned char *)dmap->dmab_address,
823 dmap->dmab_size, 0, &rcb->rcb_free_rtn);