Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9a937c91 authored by FUJITA Tomonori's avatar FUJITA Tomonori
Browse files

powerpc: add dma_capable() to replace is_buffer_dma_capable()



dma_capable() eventually replaces is_buffer_dma_capable(), which tells
if a memory area is dma-capable or not. The problem of
is_buffer_dma_capable() is that it doesn't take a pointer to struct
device so it doesn't work for POWERPC.

Signed-off-by: default avatarFUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Acked-by: default avatarBecky Bruce <beckyb@kernel.crashing.org>
parent a0b00ca8
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -424,6 +424,19 @@ static inline int dma_mapping_error(struct device *dev, dma_addr_t dma_addr)
#endif
}

static inline bool dma_capable(struct device *dev, dma_addr_t addr, size_t size)
{
	struct dma_mapping_ops *ops = get_dma_ops(dev);

	if (ops->addr_needs_map && ops->addr_needs_map(dev, addr, size))
		return 0;

	if (!dev->dma_mask)
		return 0;

	return addr + size <= *dev->dma_mask;
}

#define dma_alloc_noncoherent(d, s, h, f) dma_alloc_coherent(d, s, h, f)
#define dma_free_noncoherent(d, s, v, h) dma_free_coherent(d, s, v, h)
#ifdef CONFIG_NOT_COHERENT_CACHE