Searched refs:tlb_addr (Results 1 – 3 of 3) sorted by relevance
/kernel/linux/linux-5.10/kernel/dma/ |
D | swiotlb.c | 418 static void swiotlb_bounce(phys_addr_t orig_addr, phys_addr_t tlb_addr, in swiotlb_bounce() argument 422 unsigned char *vaddr = phys_to_virt(tlb_addr); in swiotlb_bounce() 571 phys_addr_t tlb_addr; in swiotlb_tbl_map_single() local 602 tlb_addr = slot_addr(io_tlb_start, index) + offset; in swiotlb_tbl_map_single() 610 swiotlb_bounce(orig_addr, tlb_addr, mapping_size, DMA_TO_DEVICE); in swiotlb_tbl_map_single() 611 return tlb_addr; in swiotlb_tbl_map_single() 617 void swiotlb_tbl_unmap_single(struct device *hwdev, phys_addr_t tlb_addr, in swiotlb_tbl_unmap_single() argument 622 unsigned int offset = swiotlb_align_offset(hwdev, tlb_addr); in swiotlb_tbl_unmap_single() 624 int index = (tlb_addr - offset - io_tlb_start) >> IO_TLB_SHIFT; in swiotlb_tbl_unmap_single() 633 swiotlb_bounce(orig_addr, tlb_addr, mapping_size, DMA_FROM_DEVICE); in swiotlb_tbl_unmap_single() [all …]
|
/kernel/linux/linux-5.10/include/linux/ |
D | swiotlb.h | 55 phys_addr_t tlb_addr, 62 phys_addr_t tlb_addr,
|
/kernel/linux/linux-5.10/drivers/iommu/intel/ |
D | iommu.c | 3859 phys_addr_t tlb_addr; in bounce_sync_single() local 3865 tlb_addr = intel_iommu_iova_to_phys(&domain->domain, addr); in bounce_sync_single() 3866 if (is_swiotlb_buffer(tlb_addr)) in bounce_sync_single() 3867 swiotlb_tbl_sync_single(dev, tlb_addr, size, dir, target); in bounce_sync_single() 3880 phys_addr_t tlb_addr; in bounce_map_single() local 3917 tlb_addr = swiotlb_tbl_map_single(dev, paddr, size, in bounce_map_single() 3919 if (tlb_addr == DMA_MAPPING_ERROR) { in bounce_map_single() 3923 void *padding_start = phys_to_virt(tlb_addr); in bounce_map_single() 3936 tlb_addr = paddr; in bounce_map_single() 3940 tlb_addr >> VTD_PAGE_SHIFT, nrpages, prot); in bounce_map_single() [all …]
|