[Linux-stm32] [PATCH v2 1/3] dmaengine: vchan: add vchan_chan_name() to get channel device name
Frank Li
Frank.li at oss.nxp.com
Fri Sep 4 07:21:37 PDT 2026
On Fri, Sep 04, 2026 at 11:10:54AM +0200, Amelie Delaunay wrote:
> 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"
B4 did not update it. Do you agree on this change?
Frank
>
> > 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