Commit e8304671 authored by Christoph Hellwig's avatar Christoph Hellwig
Browse files

hexagon: switch to use ->mapping_error for error reporting

parent e0d60ac1
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -29,8 +29,6 @@
#include <asm/io.h>

struct device;
extern int bad_dma_address;
#define DMA_ERROR_CODE bad_dma_address

extern const struct dma_map_ops *dma_ops;

+9 −3
Original line number Diff line number Diff line
@@ -25,11 +25,11 @@
#include <linux/module.h>
#include <asm/page.h>

#define HEXAGON_MAPPING_ERROR	0

const struct dma_map_ops *dma_ops;
EXPORT_SYMBOL(dma_ops);

int bad_dma_address;  /*  globals are automatically initialized to zero  */

static inline void *dma_addr_to_virt(dma_addr_t dma_addr)
{
	return phys_to_virt((unsigned long) dma_addr);
@@ -181,7 +181,7 @@ static dma_addr_t hexagon_map_page(struct device *dev, struct page *page,
	WARN_ON(size == 0);

	if (!check_addr("map_single", dev, bus, size))
		return bad_dma_address;
		return HEXAGON_MAPPING_ERROR;

	if (!(attrs & DMA_ATTR_SKIP_CPU_SYNC))
		dma_sync(dma_addr_to_virt(bus), size, dir);
@@ -203,6 +203,11 @@ static void hexagon_sync_single_for_device(struct device *dev,
	dma_sync(dma_addr_to_virt(dma_handle), size, dir);
}

static int hexagon_mapping_error(struct device *dev, dma_addr_t dma_addr)
{
	return dma_addr == HEXAGON_MAPPING_ERROR;
}

const struct dma_map_ops hexagon_dma_ops = {
	.alloc		= hexagon_dma_alloc_coherent,
	.free		= hexagon_free_coherent,
@@ -210,6 +215,7 @@ const struct dma_map_ops hexagon_dma_ops = {
	.map_page	= hexagon_map_page,
	.sync_single_for_cpu = hexagon_sync_single_for_cpu,
	.sync_single_for_device = hexagon_sync_single_for_device,
	.mapping_error	= hexagon_mapping_error,
	.is_phys	= 1,
};

+0 −1
Original line number Diff line number Diff line
@@ -40,7 +40,6 @@ EXPORT_SYMBOL(memset);
/* Additional variables */
EXPORT_SYMBOL(__phys_offset);
EXPORT_SYMBOL(_dflt_cache_att);
EXPORT_SYMBOL(bad_dma_address);

#define DECLARE_EXPORT(name)     \
	extern void name(void); EXPORT_SYMBOL(name)