Lines Matching refs:mi
182 struct sg_mapping_iter mi; in sun4i_hash_update() local
229 sg_miter_start(&mi, areq->src, sg_nents(areq->src), in sun4i_hash_update()
231 sg_miter_next(&mi); in sun4i_hash_update()
240 if (op->len > 0 || (mi.length - in_i) < 4) { in sun4i_hash_update()
248 in_r = min3(mi.length - in_i, end - i, in sun4i_hash_update()
250 memcpy(op->buf + op->len, mi.addr + in_i, in_r); in sun4i_hash_update()
254 if (in_i == mi.length) { in sun4i_hash_update()
255 sg_miter_next(&mi); in sun4i_hash_update()
267 if (mi.length - in_i > 3 && i < end) { in sun4i_hash_update()
269 in_r = min3(mi.length - in_i, areq->nbytes - i, in sun4i_hash_update()
270 ((mi.length - in_i) / 4) * 4); in sun4i_hash_update()
273 writesl(ss->base + SS_RXFIFO, mi.addr + in_i, todo); in sun4i_hash_update()
282 if (in_i == mi.length) { in sun4i_hash_update()
283 sg_miter_next(&mi); in sun4i_hash_update()
290 while (i < areq->nbytes && in_i < mi.length && op->len < 64) { in sun4i_hash_update()
292 in_r = min3(mi.length - in_i, areq->nbytes - i, in sun4i_hash_update()
294 memcpy(op->buf + op->len, mi.addr + in_i, in_r); in sun4i_hash_update()
298 if (in_i == mi.length) { in sun4i_hash_update()
299 sg_miter_next(&mi); in sun4i_hash_update()
305 sg_miter_stop(&mi); in sun4i_hash_update()