mirror of
https://github.com/torvalds/linux.git
synced 2024-11-27 14:41:39 +00:00
xen-swiotlb: use io_tlb_end in xen_swiotlb_dma_supported
Use the existing variable that holds the physical address for xen_io_tlb_end to simplify xen_swiotlb_dma_supported a bit, and remove the otherwise unused xen_io_tlb_end variable and the xen_virt_to_bus helper. Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
This commit is contained in:
parent
16bc75f3aa
commit
6223d1cef7
@ -46,7 +46,7 @@
|
||||
* API.
|
||||
*/
|
||||
|
||||
static char *xen_io_tlb_start, *xen_io_tlb_end;
|
||||
static char *xen_io_tlb_start;
|
||||
static unsigned long xen_io_tlb_nslabs;
|
||||
/*
|
||||
* Quick lookup value of the bus address of the IOTLB.
|
||||
@ -82,11 +82,6 @@ static inline phys_addr_t xen_dma_to_phys(struct device *dev,
|
||||
return xen_bus_to_phys(dev, dma_to_phys(dev, dma_addr));
|
||||
}
|
||||
|
||||
static inline dma_addr_t xen_virt_to_bus(struct device *dev, void *address)
|
||||
{
|
||||
return xen_phys_to_dma(dev, virt_to_phys(address));
|
||||
}
|
||||
|
||||
static inline int range_straddles_page_boundary(phys_addr_t p, size_t size)
|
||||
{
|
||||
unsigned long next_bfn, xen_pfn = XEN_PFN_DOWN(p);
|
||||
@ -250,7 +245,6 @@ retry:
|
||||
rc = swiotlb_late_init_with_tbl(xen_io_tlb_start, xen_io_tlb_nslabs);
|
||||
|
||||
end:
|
||||
xen_io_tlb_end = xen_io_tlb_start + bytes;
|
||||
if (!rc)
|
||||
swiotlb_set_max_segment(PAGE_SIZE);
|
||||
|
||||
@ -558,7 +552,7 @@ xen_swiotlb_sync_sg_for_device(struct device *dev, struct scatterlist *sgl,
|
||||
static int
|
||||
xen_swiotlb_dma_supported(struct device *hwdev, u64 mask)
|
||||
{
|
||||
return xen_virt_to_bus(hwdev, xen_io_tlb_end - 1) <= mask;
|
||||
return xen_phys_to_dma(hwdev, io_tlb_end - 1) <= mask;
|
||||
}
|
||||
|
||||
const struct dma_map_ops xen_swiotlb_dma_ops = {
|
||||
|
Loading…
Reference in New Issue
Block a user