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

Commit 49c5c27e authored by Mike Marciniszyn's avatar Mike Marciniszyn Committed by Roland Dreier
Browse files

IB/ipath: Remove ib_sg_dma_address() and ib_sg_dma_len() overloads



The removal of these methods is compensated for by code changes to
.map_sg to insure that the vanilla sg_dma_address() and sg_dma_len()
will do the same thing as the equivalent former ib_sg_dma_address()
and ib_sg_dma_len() calls into the drivers.

The introduction of this patch required that the struct
ipath_dma_mapping_ops be converted to a C99 initializer.

Suggested-by: default avatarBart Van Assche <bvanassche@acm.org>
Reviewed-by: default avatarDennis Dalessandro <dennis.dalessandro@intel.com>
Signed-off-by: default avatarMike Marciniszyn <mike.marciniszyn@intel.com>
Signed-off-by: default avatarRoland Dreier <roland@purestorage.com>
parent 446bf432
Loading
Loading
Loading
Loading
+15 −28
Original line number Diff line number Diff line
@@ -115,6 +115,10 @@ static int ipath_map_sg(struct ib_device *dev, struct scatterlist *sgl,
			ret = 0;
			break;
		}
		sg->dma_address = addr + sg->offset;
#ifdef CONFIG_NEED_SG_DMA_LENGTH
		sg->dma_length = sg->length;
#endif
	}
	return ret;
}
@@ -126,21 +130,6 @@ static void ipath_unmap_sg(struct ib_device *dev,
	BUG_ON(!valid_dma_direction(direction));
}

static u64 ipath_sg_dma_address(struct ib_device *dev, struct scatterlist *sg)
{
	u64 addr = (u64) page_address(sg_page(sg));

	if (addr)
		addr += sg->offset;
	return addr;
}

static unsigned int ipath_sg_dma_len(struct ib_device *dev,
				     struct scatterlist *sg)
{
	return sg->length;
}

static void ipath_sync_single_for_cpu(struct ib_device *dev,
				      u64 addr,
				      size_t size,
@@ -176,17 +165,15 @@ static void ipath_dma_free_coherent(struct ib_device *dev, size_t size,
}

struct ib_dma_mapping_ops ipath_dma_mapping_ops = {
	ipath_mapping_error,
	ipath_dma_map_single,
	ipath_dma_unmap_single,
	ipath_dma_map_page,
	ipath_dma_unmap_page,
	ipath_map_sg,
	ipath_unmap_sg,
	ipath_sg_dma_address,
	ipath_sg_dma_len,
	ipath_sync_single_for_cpu,
	ipath_sync_single_for_device,
	ipath_dma_alloc_coherent,
	ipath_dma_free_coherent
	.mapping_error = ipath_mapping_error,
	.map_single = ipath_dma_map_single,
	.unmap_single = ipath_dma_unmap_single,
	.map_page = ipath_dma_map_page,
	.unmap_page = ipath_dma_unmap_page,
	.map_sg = ipath_map_sg,
	.unmap_sg = ipath_unmap_sg,
	.sync_single_for_cpu = ipath_sync_single_for_cpu,
	.sync_single_for_device = ipath_sync_single_for_device,
	.alloc_coherent = ipath_dma_alloc_coherent,
	.free_coherent = ipath_dma_free_coherent
};