Lines Matching refs:mem_desc
47 struct esas2r_mem_desc *mem_desc,
50 mem_desc->esas2r_param = mem_desc->size + align;
51 mem_desc->virt_addr = NULL;
52 mem_desc->phys_addr = 0;
53 mem_desc->esas2r_data = dma_alloc_coherent(&a->pcid->dev,
54 (size_t)mem_desc->
56 (dma_addr_t *)&mem_desc->
60 if (mem_desc->esas2r_data == NULL) {
65 int)mem_desc->esas2r_param);
69 mem_desc->virt_addr = PTR_ALIGN(mem_desc->esas2r_data, align);
70 mem_desc->phys_addr = ALIGN(mem_desc->phys_addr, align);
71 memset(mem_desc->virt_addr, 0, mem_desc->size);
76 struct esas2r_mem_desc *mem_desc)
78 if (mem_desc->virt_addr == NULL)
88 if (mem_desc->phys_addr) {
89 int unalign = ((u8 *)mem_desc->virt_addr) -
90 ((u8 *)mem_desc->esas2r_data);
93 (size_t)mem_desc->esas2r_param,
94 mem_desc->esas2r_data,
95 (dma_addr_t)(mem_desc->phys_addr - unalign));
97 kfree(mem_desc->esas2r_data);
100 mem_desc->virt_addr = NULL;