Commit 6223d1ce authored by Christoph Hellwig's avatar Christoph Hellwig Committed by Konrad Rzeszutek Wilk

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: default avatarChristoph Hellwig <hch@lst.de>
Signed-off-by: default avatarKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
parent 16bc75f3
...@@ -46,7 +46,7 @@ ...@@ -46,7 +46,7 @@
* API. * API.
*/ */
static char *xen_io_tlb_start, *xen_io_tlb_end; static char *xen_io_tlb_start;
static unsigned long xen_io_tlb_nslabs; static unsigned long xen_io_tlb_nslabs;
/* /*
* Quick lookup value of the bus address of the IOTLB. * 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, ...@@ -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)); 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) static inline int range_straddles_page_boundary(phys_addr_t p, size_t size)
{ {
unsigned long next_bfn, xen_pfn = XEN_PFN_DOWN(p); unsigned long next_bfn, xen_pfn = XEN_PFN_DOWN(p);
...@@ -250,7 +245,6 @@ int __ref xen_swiotlb_init(int verbose, bool early) ...@@ -250,7 +245,6 @@ int __ref xen_swiotlb_init(int verbose, bool early)
rc = swiotlb_late_init_with_tbl(xen_io_tlb_start, xen_io_tlb_nslabs); rc = swiotlb_late_init_with_tbl(xen_io_tlb_start, xen_io_tlb_nslabs);
end: end:
xen_io_tlb_end = xen_io_tlb_start + bytes;
if (!rc) if (!rc)
swiotlb_set_max_segment(PAGE_SIZE); swiotlb_set_max_segment(PAGE_SIZE);
...@@ -558,7 +552,7 @@ xen_swiotlb_sync_sg_for_device(struct device *dev, struct scatterlist *sgl, ...@@ -558,7 +552,7 @@ xen_swiotlb_sync_sg_for_device(struct device *dev, struct scatterlist *sgl,
static int static int
xen_swiotlb_dma_supported(struct device *hwdev, u64 mask) 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 = { const struct dma_map_ops xen_swiotlb_dma_ops = {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment