ptr->eptr = upper_32_bits(dma_addr);
}
+static void to_talitos_ptr_len(struct talitos_ptr *ptr, unsigned short len)
+{
+ ptr->len = cpu_to_be16(len);
+}
+
+static unsigned short from_talitos_ptr_len(struct talitos_ptr *ptr)
+{
+ return be16_to_cpu(ptr->len);
+}
+
static void to_talitos_ptr_extent_clear(struct talitos_ptr *ptr)
{
ptr->j_extent = 0;
{
dma_addr_t dma_addr = dma_map_single(dev, data, len, dir);
- ptr->len = cpu_to_be16(len);
+ to_talitos_ptr_len(ptr, len);
to_talitos_ptr(ptr, dma_addr);
to_talitos_ptr_extent_clear(ptr);
}
enum dma_data_direction dir)
{
dma_unmap_single(dev, be32_to_cpu(ptr->ptr),
- be16_to_cpu(ptr->len), dir);
+ from_talitos_ptr_len(ptr), dir);
}
static int reset_channel(struct device *dev, int ch)
{
int sg_count;
- ptr->len = cpu_to_be16(len);
+ to_talitos_ptr_len(ptr, len);
to_talitos_ptr_extent_clear(ptr);
sg_count = talitos_map_sg(dev, src, edesc->src_nents ? : 1, dir,
enum dma_data_direction dir,
struct talitos_ptr *ptr, int sg_count)
{
- ptr->len = cpu_to_be16(len);
+ to_talitos_ptr_len(ptr, len);
to_talitos_ptr_extent_clear(ptr);
if (dir != DMA_NONE)
/* cipher iv */
to_talitos_ptr(&desc->ptr[1], edesc->iv_dma);
- desc->ptr[1].len = cpu_to_be16(ivsize);
+ to_talitos_ptr_len(&desc->ptr[1], ivsize);
to_talitos_ptr_extent_clear(&desc->ptr[1]);
/* cipher key */
unmap_sg_talitos_ptr(dev, req_ctx->psrc, NULL, 0, edesc);
/* When using hashctx-in, must unmap it. */
- if (edesc->desc.ptr[1].len)
+ if (from_talitos_ptr_len(&edesc->desc.ptr[1]))
unmap_single_talitos_ptr(dev, &edesc->desc.ptr[1],
DMA_TO_DEVICE);
- if (edesc->desc.ptr[2].len)
+ if (from_talitos_ptr_len(&edesc->desc.ptr[2]))
unmap_single_talitos_ptr(dev, &edesc->desc.ptr[2],
DMA_TO_DEVICE);