Re: [PATCH v23 12/14] crypto: qce - Map crypto memory for DMA
Mukesh Savaliya <[email protected]> Thu, 23 Jul 2026 14:50:43 +0530
| 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/22/2026 2:47 PM, Bartosz Golaszewski wrote: > On Tue, 21 Jul 2026 20:20:05 +0200, Mukesh Savaliya > <[email protected]> said: >> >> >> 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 ? > > No, I don't think this is needed and at v23 this really is useless bikeshedding > and doesn't add anything to the discussion and only delays getting > this upstream. > Okay, got it. Thanks ! > Bartosz > >>> + 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); >>> } >>> >> >> [...] >> >>