[Linux-stm32] [PATCH v2 1/3] dmaengine: vchan: add vchan_chan_name() to get channel device name
Amelie Delaunay
amelie.delaunay at foss.st.com
Fri Sep 4 02:10:54 PDT 2026
On 9/4/26 10:35, Amelie Delaunay wrote:
> Hi Frank,
>
> On 9/3/26 22:53, Frank.Li at oss.nxp.com wrote:
>> From: Frank Li <Frank.Li at nxp.com>
>>
>> Introduce vchan_chan_name() to obtain the DMA channel device name.
>>
>> Use a dedicated helper instead of directly accessing dma_chan::dev
>> so callers remain unaffected by an upcoming rename of the struct member.
>>
>> Signed-off-by: Frank Li <Frank.Li at nxp.com>
>> ---
>> drivers/dma/arm-dma350.c | 2 +-
>> drivers/dma/loongson/loongson2-apb-cmc-dma.c | 2 +-
>> drivers/dma/stm32/stm32-dma.c | 2 +-
>> drivers/dma/stm32/stm32-dma3.c | 4 ++--
>
> Could you move the driver updates from this patch to the next one? I
> don’t understand why the drivers above are modified here, while others
> are deferred to "[PATCH v2 2/3] dmaengine: use dma_chan_name() helper to
> get per-channel device name".
>
Oh, okay — my bad. I've just looked at v1, and I now understand that you
split the vchan_chan_name() and dma_chan_name() updates.
I didn’t catch that at first glance because your cover letter hasn’t
changed between v1 and v2.
"1st patch: use the existing helper dma_chan_name() to reduce rename
differences.
2nd patch: rename drivers/dma"
> Regards,
> Amelie
>
>> drivers/dma/virt-dma.h | 11 +++++++++++
>> 5 files changed, 16 insertions(+), 5 deletions(-)
>>
>> diff --git a/drivers/dma/arm-dma350.c b/drivers/dma/arm-dma350.c
>> index 09403aca8bb06..52f5242ea3327 100644
>> --- a/drivers/dma/arm-dma350.c
>> +++ b/drivers/dma/arm-dma350.c
>> @@ -512,7 +512,7 @@ static int d350_alloc_chan_resources(struct
>> dma_chan *chan)
>> {
>> struct d350_chan *dch = to_d350_chan(chan);
>> int ret = request_irq(dch->irq, d350_irq, IRQF_SHARED,
>> - dev_name(&dch->vc.chan.dev->device), dch);
>> + vchan_chan_name(&dch->vc), dch);
>> if (!ret)
>> writel_relaxed(CH_INTREN_DONE | CH_INTREN_ERR, dch->base +
>> CH_INTREN);
>> diff --git a/drivers/dma/loongson/loongson2-apb-cmc-dma.c b/drivers/
>> dma/loongson/loongson2-apb-cmc-dma.c
>> index 1c9a542edc859..2f1c8c4fd0654 100644
>> --- a/drivers/dma/loongson/loongson2-apb-cmc-dma.c
>> +++ b/drivers/dma/loongson/loongson2-apb-cmc-dma.c
>> @@ -678,7 +678,7 @@ static int loongson2_cmc_dma_probe(struct
>> platform_device *pdev)
>> return lchan->irq;
>> ret = devm_request_irq(dev, lchan->irq,
>> loongson2_cmc_dma_chan_irq, IRQF_SHARED,
>> - dev_name(chan2dev(lchan)), lchan);
>> + vchan_chan_name(&lchan->vchan), lchan);
>> if (ret)
>> return ret;
>> }
>> diff --git a/drivers/dma/stm32/stm32-dma.c b/drivers/dma/stm32/stm32-
>> dma.c
>> index d3ad78562a140..3e8151e2ad75a 100644
>> --- a/drivers/dma/stm32/stm32-dma.c
>> +++ b/drivers/dma/stm32/stm32-dma.c
>> @@ -1668,7 +1668,7 @@ static int stm32_dma_probe(struct
>> platform_device *pdev)
>> ret = devm_request_irq(&pdev->dev, chan->irq,
>> stm32_dma_chan_irq, 0,
>> - dev_name(chan2dev(chan)), chan);
>> + vchan_chan_name(&chan->vchan), chan);
>> if (ret) {
>> dev_err(&pdev->dev,
>> "request_irq failed with err %d channel %d\n",
>> diff --git a/drivers/dma/stm32/stm32-dma3.c b/drivers/dma/stm32/stm32-
>> dma3.c
>> index 4724e7fa0008e..1ee1bd22703fb 100644
>> --- a/drivers/dma/stm32/stm32-dma3.c
>> +++ b/drivers/dma/stm32/stm32-dma3.c
>> @@ -1892,10 +1892,10 @@ static int stm32_dma3_probe(struct
>> platform_device *pdev)
>> chan->irq = ret;
>> ret = devm_request_irq(&pdev->dev, chan->irq,
>> stm32_dma3_chan_irq, 0,
>> - dev_name(chan2dev(chan)), chan);
>> + vchan_chan_name(&chan->vchan), chan);
>> if (ret) {
>> dev_err_probe(&pdev->dev, ret, "Failed to request
>> channel %s IRQ\n",
>> - dev_name(chan2dev(chan)));
>> + vchan_chan_name(&chan->vchan));
>> goto err_clk_disable;
>> }
>> }
>> diff --git a/drivers/dma/virt-dma.h b/drivers/dma/virt-dma.h
>> index 59d9eabc8b674..dd023a3831209 100644
>> --- a/drivers/dma/virt-dma.h
>> +++ b/drivers/dma/virt-dma.h
>> @@ -209,6 +209,17 @@ static inline void
>> vchan_free_chan_resources(struct virt_dma_chan *vc)
>> vchan_dma_desc_free_list(vc, &head);
>> }
>> +/**
>> + * vchan_chan_name - Return vchan DMA channel device name
>> + * @vc: virtual channel
>> + *
>> + * Return: The name of the DMA channel device
>> + */
>> +static inline const char *vchan_chan_name(struct virt_dma_chan *vc)
>> +{
>> + return dma_chan_name(&vc->chan);
>> +}
>> +
>> /**
>> * vchan_synchronize() - synchronize callback execution to the
>> current context
>> * @vc: virtual channel to synchronize
>>
>
> _______________________________________________
> Linux-stm32 mailing list
> Linux-stm32 at st-md-mailman.stormreply.com
> https://st-md-mailman.stormreply.com/mailman/listinfo/linux-stm32
More information about the linux-arm-kernel
mailing list