Re: [PATCH v23 12/14] crypto: qce - Map crypto memory for DMA
Mukesh Savaliya <[email protected]>
| Newsgroups | org.kernel.vger.linux-crypto,org.infradead.lists.linux-arm-kernel,org.kernel.vger.dmaengine,org.kernel.vger.linux-arm-msm,org.kernel.vger.linux-doc,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
On 7/21/2026 7:03 PM, Bartosz Golaszewski wrote: > From: Bartosz Golaszewski <[email protected]> [...] > static int qce_crypto_probe(struct platform_device *pdev) > { > struct device *dev = &pdev->dev; > struct qce_device *qce; > + struct resource *res; > int ret; > > qce = devm_kzalloc(dev, sizeof(*qce), GFP_KERNEL); > @@ -204,7 +213,7 @@ static int qce_crypto_probe(struct platform_device *pdev) > qce->dev = dev; > platform_set_drvdata(pdev, qce); > > - qce->base = devm_platform_ioremap_resource(pdev, 0); > + qce->base = devm_platform_get_and_ioremap_resource(pdev, 0, &res); > if (IS_ERR(qce->base)) Would you like to add any debug/error log ? > return PTR_ERR(qce->base); > > @@ -254,6 +263,18 @@ static int qce_crypto_probe(struct platform_device *pdev) > qce->async_req_enqueue = qce_async_request_enqueue; > qce->async_req_done = qce_async_request_done; > > + qce->dma_size = resource_size(res); > + qce->base_dma = dma_map_resource(dev, res->start, qce->dma_size, > + DMA_BIDIRECTIONAL, 0); > + qce->base_phys = res->start; > + ret = dma_mapping_error(dev, qce->base_dma); > + if (ret) Would you like to add any debug/error log ? > + return ret; > + > + ret = devm_add_action_or_reset(qce->dev, qce_crypto_unmap_dma, qce); > + if (ret) same here > + return ret; > + > return devm_qce_register_algs(qce); > } > [...]