Lines Matching refs:rxd

984 static void sa_sync_from_device(struct sa_rx_data *rxd)
988 if (rxd->mapped_sg[0].dir == DMA_BIDIRECTIONAL)
989 sgt = &rxd->mapped_sg[0].sgt;
991 sgt = &rxd->mapped_sg[1].sgt;
993 dma_sync_sgtable_for_cpu(rxd->ddev, sgt, DMA_FROM_DEVICE);
996 static void sa_free_sa_rx_data(struct sa_rx_data *rxd)
1000 for (i = 0; i < ARRAY_SIZE(rxd->mapped_sg); i++) {
1001 struct sa_mapped_sg *mapped_sg = &rxd->mapped_sg[i];
1004 dma_unmap_sgtable(rxd->ddev, &mapped_sg->sgt,
1010 kfree(rxd);
1015 struct sa_rx_data *rxd = (struct sa_rx_data *)data;
1022 sa_sync_from_device(rxd);
1023 req = container_of(rxd->req, struct skcipher_request, base);
1026 mdptr = (__be32 *)dmaengine_desc_get_metadata_ptr(rxd->tx_in, &pl,
1030 for (i = 0; i < (rxd->enc_iv_size / 4); i++)
1031 result[i] = be32_to_cpu(mdptr[i + rxd->iv_idx]);
1034 sa_free_sa_rx_data(rxd);
1056 struct sa_rx_data *rxd;
1076 rxd = kzalloc(sizeof(*rxd), gfp_flags);
1077 if (!rxd)
1102 rxd->ddev = ddev;
1130 mapped_sg = &rxd->mapped_sg[0];
1142 kfree(rxd);
1153 kfree(rxd);
1177 mapped_sg = &rxd->mapped_sg[1];
1218 rxd->tx_in = dmaengine_prep_slave_sg(dma_rx, dst, dst_nents,
1221 if (!rxd->tx_in) {
1227 rxd->req = (void *)req->base;
1228 rxd->enc = req->enc;
1229 rxd->iv_idx = req->ctx->iv_idx;
1230 rxd->enc_iv_size = sa_ctx->cmdl_upd_info.enc_iv.size;
1231 rxd->tx_in->callback = req->callback;
1232 rxd->tx_in->callback_param = rxd;
1258 dmaengine_submit(rxd->tx_in);
1266 sa_free_sa_rx_data(rxd);
1332 struct sa_rx_data *rxd = (struct sa_rx_data *)data;
1341 sa_sync_from_device(rxd);
1342 req = container_of(rxd->req, struct ahash_request, base);
1346 mdptr = (__be32 *)dmaengine_desc_get_metadata_ptr(rxd->tx_in, &pl, &ml);
1352 sa_free_sa_rx_data(rxd);
1669 struct sa_rx_data *rxd = (struct sa_rx_data *)data;
1681 sa_sync_from_device(rxd);
1682 req = container_of(rxd->req, struct aead_request, base);
1687 mdptr = (u32 *)dmaengine_desc_get_metadata_ptr(rxd->tx_in, &pl, &ml);
1693 if (rxd->enc) {
1705 sa_free_sa_rx_data(rxd);