mbox series

[v12,0/8] Enable designware PCI EP EDMA locally

Message ID 20220524152159.2370739-1-Frank.Li@nxp.com (mailing list archive)
Headers show
Series Enable designware PCI EP EDMA locally | expand

Message

Frank Li May 24, 2022, 3:21 p.m. UTC
Default Designware EDMA just probe remotely at host side.
This patch allow EDMA driver can probe at EP side.

1. Clean up patch
   dmaengine: dw-edma: Detach the private data and chip info structures
   dmaengine: dw-edma: Remove unused field irq in struct dw_edma_chip
   dmaengine: dw-edma: Change rg_region to reg_base in struct
   dmaengine: dw-edma: rename wr(rd)_ch_cnt to ll_wr(rd)_cnt in struct

2. Enhance EDMA driver to allow prode eDMA at EP side
   dmaengine: dw-edma: Add support for chip specific flags
   dmaengine: dw-edma: Add DW_EDMA_CHIP_32BIT_DBI for chip specific
flags (this patch removed at v11 because dma tree already have fixed
patch)

3. Bugs fix at EDMA driver when probe eDMA at EP side
   dmaengine: dw-edma: Fix programming the source & dest addresses for
ep
   dmaengine: dw-edma: Don't rely on the deprecated "direction" member

4. change pci-epf-test to use EDMA driver to transfer data.
   PCI: endpoint: Add embedded DMA controller test

5. Using imx8dxl to do test, but some EP functions still have not
upstream yet. So below patch show how probe eDMA driver at EP
controller driver.
https://lore.kernel.org/linux-pci/20220309120149.GB134091@thinkpad/T/#m979eb506c73ab3cfca2e7a43635ecdaec18d8097

Frank Li (6):
  dmaengine: dw-edma: Remove unused field irq in struct dw_edma_chip
  dmaengine: dw-edma: Detach the private data and chip info structures
  dmaengine: dw-edma: Change rg_region to reg_base in struct
    dw_edma_chip
  dmaengine: dw-edma: Rename wr(rd)_ch_cnt to ll_wr(rd)_cnt in struct
    dw_edma_chip
  dmaengine: dw-edma: Add support for chip specific flags
  PCI: endpoint: Enable DMA tests for endpoints with DMA capabilities

Serge Semin (2):
  dmaengine: dw-edma: Drop dma_slave_config.direction field usage
  dmaengine: dw-edma: Fix eDMA Rd/Wr-channels and DMA-direction
    semantics

 drivers/dma/dw-edma/dw-edma-core.c            | 141 +++++++++++-------
 drivers/dma/dw-edma/dw-edma-core.h            |  31 +---
 drivers/dma/dw-edma/dw-edma-pcie.c            |  83 +++++------
 drivers/dma/dw-edma/dw-edma-v0-core.c         |  41 ++---
 drivers/dma/dw-edma/dw-edma-v0-core.h         |   4 +-
 drivers/dma/dw-edma/dw-edma-v0-debugfs.c      |  18 +--
 drivers/dma/dw-edma/dw-edma-v0-debugfs.h      |   8 +-
 drivers/pci/endpoint/functions/pci-epf-test.c | 112 ++++++++++++--
 include/linux/dma/edma.h                      |  59 +++++++-
 9 files changed, 317 insertions(+), 180 deletions(-)

Comments

Serge Semin May 25, 2022, 9:23 a.m. UTC | #1
Hello Vinod

On Tue, May 24, 2022 at 10:21:51AM -0500, Frank Li wrote:
> Default Designware EDMA just probe remotely at host side.
> This patch allow EDMA driver can probe at EP side.
> 
> 1. Clean up patch
>    dmaengine: dw-edma: Detach the private data and chip info structures
>    dmaengine: dw-edma: Remove unused field irq in struct dw_edma_chip
>    dmaengine: dw-edma: Change rg_region to reg_base in struct
>    dmaengine: dw-edma: rename wr(rd)_ch_cnt to ll_wr(rd)_cnt in struct
> 
> 2. Enhance EDMA driver to allow prode eDMA at EP side
>    dmaengine: dw-edma: Add support for chip specific flags
>    dmaengine: dw-edma: Add DW_EDMA_CHIP_32BIT_DBI for chip specific
> flags (this patch removed at v11 because dma tree already have fixed
> patch)
> 
> 3. Bugs fix at EDMA driver when probe eDMA at EP side
>    dmaengine: dw-edma: Fix programming the source & dest addresses for
> ep
>    dmaengine: dw-edma: Don't rely on the deprecated "direction" member
> 
> 4. change pci-epf-test to use EDMA driver to transfer data.
>    PCI: endpoint: Add embedded DMA controller test
> 
> 5. Using imx8dxl to do test, but some EP functions still have not
> upstream yet. So below patch show how probe eDMA driver at EP
> controller driver.
> https://lore.kernel.org/linux-pci/20220309120149.GB134091@thinkpad/T/#m979eb506c73ab3cfca2e7a43635ecdaec18d8097

This series has been on review for over three months now. It has got
several acks, rb and tb tags from me, Manivannan and Kishon (the last
patch in the series). Seeing Gustavo hasn't been active for all that time
at all and hasn't performed any review for more than a year the
probability of getting his attention soon enough is almost zero. Thus
could you please give your acks if you are ok with the series content. Due
to having several more patchsets dependent on this one, Bjorn has agreed
to merge this series in through the PCI tree:
https://lore.kernel.org/linux-pci/20220524155201.GA247821@bhelgaas/
So the only thing we need is your ack tags.

@Frank. Should there be a new patchset revision could you please add a
request to merge the series in to the PCI tree? I am a bit tired repeating
the same messages each time the new mailing review lap.)

-Sergey

> 
> Frank Li (6):
>   dmaengine: dw-edma: Remove unused field irq in struct dw_edma_chip
>   dmaengine: dw-edma: Detach the private data and chip info structures
>   dmaengine: dw-edma: Change rg_region to reg_base in struct
>     dw_edma_chip
>   dmaengine: dw-edma: Rename wr(rd)_ch_cnt to ll_wr(rd)_cnt in struct
>     dw_edma_chip
>   dmaengine: dw-edma: Add support for chip specific flags
>   PCI: endpoint: Enable DMA tests for endpoints with DMA capabilities
> 
> Serge Semin (2):
>   dmaengine: dw-edma: Drop dma_slave_config.direction field usage
>   dmaengine: dw-edma: Fix eDMA Rd/Wr-channels and DMA-direction
>     semantics
> 
>  drivers/dma/dw-edma/dw-edma-core.c            | 141 +++++++++++-------
>  drivers/dma/dw-edma/dw-edma-core.h            |  31 +---
>  drivers/dma/dw-edma/dw-edma-pcie.c            |  83 +++++------
>  drivers/dma/dw-edma/dw-edma-v0-core.c         |  41 ++---
>  drivers/dma/dw-edma/dw-edma-v0-core.h         |   4 +-
>  drivers/dma/dw-edma/dw-edma-v0-debugfs.c      |  18 +--
>  drivers/dma/dw-edma/dw-edma-v0-debugfs.h      |   8 +-
>  drivers/pci/endpoint/functions/pci-epf-test.c | 112 ++++++++++++--
>  include/linux/dma/edma.h                      |  59 +++++++-
>  9 files changed, 317 insertions(+), 180 deletions(-)
> 
> -- 
> 2.35.1
>
Zhi Li May 25, 2022, 2:41 p.m. UTC | #2
On Wed, May 25, 2022 at 4:23 AM Serge Semin <fancer.lancer@gmail.com> wrote:
>
> Hello Vinod
>
> On Tue, May 24, 2022 at 10:21:51AM -0500, Frank Li wrote:
> > Default Designware EDMA just probe remotely at host side.
> > This patch allow EDMA driver can probe at EP side.
> >
> > 1. Clean up patch
> >    dmaengine: dw-edma: Detach the private data and chip info structures
> >    dmaengine: dw-edma: Remove unused field irq in struct dw_edma_chip
> >    dmaengine: dw-edma: Change rg_region to reg_base in struct
> >    dmaengine: dw-edma: rename wr(rd)_ch_cnt to ll_wr(rd)_cnt in struct
> >
> > 2. Enhance EDMA driver to allow prode eDMA at EP side
> >    dmaengine: dw-edma: Add support for chip specific flags
> >    dmaengine: dw-edma: Add DW_EDMA_CHIP_32BIT_DBI for chip specific
> > flags (this patch removed at v11 because dma tree already have fixed
> > patch)
> >
> > 3. Bugs fix at EDMA driver when probe eDMA at EP side
> >    dmaengine: dw-edma: Fix programming the source & dest addresses for
> > ep
> >    dmaengine: dw-edma: Don't rely on the deprecated "direction" member
> >
> > 4. change pci-epf-test to use EDMA driver to transfer data.
> >    PCI: endpoint: Add embedded DMA controller test
> >
> > 5. Using imx8dxl to do test, but some EP functions still have not
> > upstream yet. So below patch show how probe eDMA driver at EP
> > controller driver.
> > https://lore.kernel.org/linux-pci/20220309120149.GB134091@thinkpad/T/#m979eb506c73ab3cfca2e7a43635ecdaec18d8097
>
> This series has been on review for over three months now. It has got
> several acks, rb and tb tags from me, Manivannan and Kishon (the last
> patch in the series). Seeing Gustavo hasn't been active for all that time
> at all and hasn't performed any review for more than a year the
> probability of getting his attention soon enough is almost zero. Thus
> could you please give your acks if you are ok with the series content. Due
> to having several more patchsets dependent on this one, Bjorn has agreed
> to merge this series in through the PCI tree:
> https://lore.kernel.org/linux-pci/20220524155201.GA247821@bhelgaas/
> So the only thing we need is your ack tags.
>
> @Frank. Should there be a new patchset revision could you please add a
> request to merge the series in to the PCI tree? I am a bit tired repeating
> the same messages each time the new mailing review lap.)

The key is to need Vinod to say something

Best regards
Frank Li.

>
> -Sergey
>
> >
> > Frank Li (6):
> >   dmaengine: dw-edma: Remove unused field irq in struct dw_edma_chip
> >   dmaengine: dw-edma: Detach the private data and chip info structures
> >   dmaengine: dw-edma: Change rg_region to reg_base in struct
> >     dw_edma_chip
> >   dmaengine: dw-edma: Rename wr(rd)_ch_cnt to ll_wr(rd)_cnt in struct
> >     dw_edma_chip
> >   dmaengine: dw-edma: Add support for chip specific flags
> >   PCI: endpoint: Enable DMA tests for endpoints with DMA capabilities
> >
> > Serge Semin (2):
> >   dmaengine: dw-edma: Drop dma_slave_config.direction field usage
> >   dmaengine: dw-edma: Fix eDMA Rd/Wr-channels and DMA-direction
> >     semantics
> >
> >  drivers/dma/dw-edma/dw-edma-core.c            | 141 +++++++++++-------
> >  drivers/dma/dw-edma/dw-edma-core.h            |  31 +---
> >  drivers/dma/dw-edma/dw-edma-pcie.c            |  83 +++++------
> >  drivers/dma/dw-edma/dw-edma-v0-core.c         |  41 ++---
> >  drivers/dma/dw-edma/dw-edma-v0-core.h         |   4 +-
> >  drivers/dma/dw-edma/dw-edma-v0-debugfs.c      |  18 +--
> >  drivers/dma/dw-edma/dw-edma-v0-debugfs.h      |   8 +-
> >  drivers/pci/endpoint/functions/pci-epf-test.c | 112 ++++++++++++--
> >  include/linux/dma/edma.h                      |  59 +++++++-
> >  9 files changed, 317 insertions(+), 180 deletions(-)
> >
> > --
> > 2.35.1
> >
Zhi Li May 31, 2022, 2:02 p.m. UTC | #3
On Wed, May 25, 2022 at 9:41 AM Zhi Li <lznuaa@gmail.com> wrote:
>
> On Wed, May 25, 2022 at 4:23 AM Serge Semin <fancer.lancer@gmail.com> wrote:
> >
> > Hello Vinod
> >
> > On Tue, May 24, 2022 at 10:21:51AM -0500, Frank Li wrote:
> > > Default Designware EDMA just probe remotely at host side.
> > > This patch allow EDMA driver can probe at EP side.
> > >
> > > 1. Clean up patch
> > >    dmaengine: dw-edma: Detach the private data and chip info structures
> > >    dmaengine: dw-edma: Remove unused field irq in struct dw_edma_chip
> > >    dmaengine: dw-edma: Change rg_region to reg_base in struct
> > >    dmaengine: dw-edma: rename wr(rd)_ch_cnt to ll_wr(rd)_cnt in struct
> > >
> > > 2. Enhance EDMA driver to allow prode eDMA at EP side
> > >    dmaengine: dw-edma: Add support for chip specific flags
> > >    dmaengine: dw-edma: Add DW_EDMA_CHIP_32BIT_DBI for chip specific
> > > flags (this patch removed at v11 because dma tree already have fixed
> > > patch)
> > >
> > > 3. Bugs fix at EDMA driver when probe eDMA at EP side
> > >    dmaengine: dw-edma: Fix programming the source & dest addresses for
> > > ep
> > >    dmaengine: dw-edma: Don't rely on the deprecated "direction" member
> > >
> > > 4. change pci-epf-test to use EDMA driver to transfer data.
> > >    PCI: endpoint: Add embedded DMA controller test
> > >
> > > 5. Using imx8dxl to do test, but some EP functions still have not
> > > upstream yet. So below patch show how probe eDMA driver at EP
> > > controller driver.
> > > https://lore.kernel.org/linux-pci/20220309120149.GB134091@thinkpad/T/#m979eb506c73ab3cfca2e7a43635ecdaec18d8097
> >
> > This series has been on review for over three months now. It has got
> > several acks, rb and tb tags from me, Manivannan and Kishon (the last
> > patch in the series). Seeing Gustavo hasn't been active for all that time
> > at all and hasn't performed any review for more than a year the
> > probability of getting his attention soon enough is almost zero. Thus
> > could you please give your acks if you are ok with the series content. Due
> > to having several more patchsets dependent on this one, Bjorn has agreed
> > to merge this series in through the PCI tree:
> > https://lore.kernel.org/linux-pci/20220524155201.GA247821@bhelgaas/
> > So the only thing we need is your ack tags.
> >
> > @Frank. Should there be a new patchset revision could you please add a
> > request to merge the series in to the PCI tree? I am a bit tired repeating
> > the same messages each time the new mailing review lap.)
>
> The key is to need Vinod to say something
>
> Best regards
> Frank Li.

@Vinod Kou:
       These patches were well reviewed by Serge Semin,  Bjorn,
Manivannan Sadhasivam, Kishon Vijay Abraham and tested on 3 platforms.
       Pending on your opinion because it touch file under /driver/dma/dw_edma/*

best regards
Frank Li

>
> >
> > -Sergey
> >
> > >
> > > Frank Li (6):
> > >   dmaengine: dw-edma: Remove unused field irq in struct dw_edma_chip
> > >   dmaengine: dw-edma: Detach the private data and chip info structures
> > >   dmaengine: dw-edma: Change rg_region to reg_base in struct
> > >     dw_edma_chip
> > >   dmaengine: dw-edma: Rename wr(rd)_ch_cnt to ll_wr(rd)_cnt in struct
> > >     dw_edma_chip
> > >   dmaengine: dw-edma: Add support for chip specific flags
> > >   PCI: endpoint: Enable DMA tests for endpoints with DMA capabilities
> > >
> > > Serge Semin (2):
> > >   dmaengine: dw-edma: Drop dma_slave_config.direction field usage
> > >   dmaengine: dw-edma: Fix eDMA Rd/Wr-channels and DMA-direction
> > >     semantics
> > >
> > >  drivers/dma/dw-edma/dw-edma-core.c            | 141 +++++++++++-------
> > >  drivers/dma/dw-edma/dw-edma-core.h            |  31 +---
> > >  drivers/dma/dw-edma/dw-edma-pcie.c            |  83 +++++------
> > >  drivers/dma/dw-edma/dw-edma-v0-core.c         |  41 ++---
> > >  drivers/dma/dw-edma/dw-edma-v0-core.h         |   4 +-
> > >  drivers/dma/dw-edma/dw-edma-v0-debugfs.c      |  18 +--
> > >  drivers/dma/dw-edma/dw-edma-v0-debugfs.h      |   8 +-
> > >  drivers/pci/endpoint/functions/pci-epf-test.c | 112 ++++++++++++--
> > >  include/linux/dma/edma.h                      |  59 +++++++-
> > >  9 files changed, 317 insertions(+), 180 deletions(-)
> > >
> > > --
> > > 2.35.1
> > >
Zhi Li June 15, 2022, 8:23 p.m. UTC | #4
On Tue, May 31, 2022 at 9:02 AM Zhi Li <lznuaa@gmail.com> wrote:
>
> On Wed, May 25, 2022 at 9:41 AM Zhi Li <lznuaa@gmail.com> wrote:
> >
> > On Wed, May 25, 2022 at 4:23 AM Serge Semin <fancer.lancer@gmail.com> wrote:
> > >
> > > Hello Vinod
> > >
> > > On Tue, May 24, 2022 at 10:21:51AM -0500, Frank Li wrote:
> > > > Default Designware EDMA just probe remotely at host side.
> > > > This patch allow EDMA driver can probe at EP side.
> > > >
> > > > 1. Clean up patch
> > > >    dmaengine: dw-edma: Detach the private data and chip info structures
> > > >    dmaengine: dw-edma: Remove unused field irq in struct dw_edma_chip
> > > >    dmaengine: dw-edma: Change rg_region to reg_base in struct
> > > >    dmaengine: dw-edma: rename wr(rd)_ch_cnt to ll_wr(rd)_cnt in struct
> > > >
> > > > 2. Enhance EDMA driver to allow prode eDMA at EP side
> > > >    dmaengine: dw-edma: Add support for chip specific flags
> > > >    dmaengine: dw-edma: Add DW_EDMA_CHIP_32BIT_DBI for chip specific
> > > > flags (this patch removed at v11 because dma tree already have fixed
> > > > patch)
> > > >
> > > > 3. Bugs fix at EDMA driver when probe eDMA at EP side
> > > >    dmaengine: dw-edma: Fix programming the source & dest addresses for
> > > > ep
> > > >    dmaengine: dw-edma: Don't rely on the deprecated "direction" member
> > > >
> > > > 4. change pci-epf-test to use EDMA driver to transfer data.
> > > >    PCI: endpoint: Add embedded DMA controller test
> > > >
> > > > 5. Using imx8dxl to do test, but some EP functions still have not
> > > > upstream yet. So below patch show how probe eDMA driver at EP
> > > > controller driver.
> > > > https://lore.kernel.org/linux-pci/20220309120149.GB134091@thinkpad/T/#m979eb506c73ab3cfca2e7a43635ecdaec18d8097
> > >
> > > This series has been on review for over three months now. It has got
> > > several acks, rb and tb tags from me, Manivannan and Kishon (the last
> > > patch in the series). Seeing Gustavo hasn't been active for all that time
> > > at all and hasn't performed any review for more than a year the
> > > probability of getting his attention soon enough is almost zero. Thus
> > > could you please give your acks if you are ok with the series content. Due
> > > to having several more patchsets dependent on this one, Bjorn has agreed
> > > to merge this series in through the PCI tree:
> > > https://lore.kernel.org/linux-pci/20220524155201.GA247821@bhelgaas/
> > > So the only thing we need is your ack tags.
> > >
> > > @Frank. Should there be a new patchset revision could you please add a
> > > request to merge the series in to the PCI tree? I am a bit tired repeating
> > > the same messages each time the new mailing review lap.)
> >
> > The key is to need Vinod to say something
> >
> > Best regards
> > Frank Li.
>
> @Vinod Kou:
>        These patches were well reviewed by Serge Semin,  Bjorn,
> Manivannan Sadhasivam, Kishon Vijay Abraham and tested on 3 platforms.
>        Pending on your opinion because it touch file under /driver/dma/dw_edma/*

@vinod kou:
      friendly ping.

>
> best regards
> Frank Li
>
> >
> > >
> > > -Sergey
> > >
> > > >
> > > > Frank Li (6):
> > > >   dmaengine: dw-edma: Remove unused field irq in struct dw_edma_chip
> > > >   dmaengine: dw-edma: Detach the private data and chip info structures
> > > >   dmaengine: dw-edma: Change rg_region to reg_base in struct
> > > >     dw_edma_chip
> > > >   dmaengine: dw-edma: Rename wr(rd)_ch_cnt to ll_wr(rd)_cnt in struct
> > > >     dw_edma_chip
> > > >   dmaengine: dw-edma: Add support for chip specific flags
> > > >   PCI: endpoint: Enable DMA tests for endpoints with DMA capabilities
> > > >
> > > > Serge Semin (2):
> > > >   dmaengine: dw-edma: Drop dma_slave_config.direction field usage
> > > >   dmaengine: dw-edma: Fix eDMA Rd/Wr-channels and DMA-direction
> > > >     semantics
> > > >
> > > >  drivers/dma/dw-edma/dw-edma-core.c            | 141 +++++++++++-------
> > > >  drivers/dma/dw-edma/dw-edma-core.h            |  31 +---
> > > >  drivers/dma/dw-edma/dw-edma-pcie.c            |  83 +++++------
> > > >  drivers/dma/dw-edma/dw-edma-v0-core.c         |  41 ++---
> > > >  drivers/dma/dw-edma/dw-edma-v0-core.h         |   4 +-
> > > >  drivers/dma/dw-edma/dw-edma-v0-debugfs.c      |  18 +--
> > > >  drivers/dma/dw-edma/dw-edma-v0-debugfs.h      |   8 +-
> > > >  drivers/pci/endpoint/functions/pci-epf-test.c | 112 ++++++++++++--
> > > >  include/linux/dma/edma.h                      |  59 +++++++-
> > > >  9 files changed, 317 insertions(+), 180 deletions(-)
> > > >
> > > > --
> > > > 2.35.1
> > > >
Vinod Koul June 16, 2022, 1:51 p.m. UTC | #5
On 24-05-22, 10:21, Frank Li wrote:
> Default Designware EDMA just probe remotely at host side.
> This patch allow EDMA driver can probe at EP side.
> 
> 1. Clean up patch
>    dmaengine: dw-edma: Detach the private data and chip info structures
>    dmaengine: dw-edma: Remove unused field irq in struct dw_edma_chip
>    dmaengine: dw-edma: Change rg_region to reg_base in struct
>    dmaengine: dw-edma: rename wr(rd)_ch_cnt to ll_wr(rd)_cnt in struct
> 
> 2. Enhance EDMA driver to allow prode eDMA at EP side
>    dmaengine: dw-edma: Add support for chip specific flags
>    dmaengine: dw-edma: Add DW_EDMA_CHIP_32BIT_DBI for chip specific
> flags (this patch removed at v11 because dma tree already have fixed
> patch)
> 
> 3. Bugs fix at EDMA driver when probe eDMA at EP side
>    dmaengine: dw-edma: Fix programming the source & dest addresses for
> ep
>    dmaengine: dw-edma: Don't rely on the deprecated "direction" member
> 
> 4. change pci-epf-test to use EDMA driver to transfer data.
>    PCI: endpoint: Add embedded DMA controller test
> 
> 5. Using imx8dxl to do test, but some EP functions still have not
> upstream yet. So below patch show how probe eDMA driver at EP
> controller driver.
> https://lore.kernel.org/linux-pci/20220309120149.GB134091@thinkpad/T/#m979eb506c73ab3cfca2e7a43635ecdaec18d8097

Applied to dmaengine-next, thanks
Serge Semin June 16, 2022, 1:54 p.m. UTC | #6
On Thu, Jun 16, 2022 at 06:51:55AM -0700, Vinod Koul wrote:
> On 24-05-22, 10:21, Frank Li wrote:
> > Default Designware EDMA just probe remotely at host side.
> > This patch allow EDMA driver can probe at EP side.
> > 
> > 1. Clean up patch
> >    dmaengine: dw-edma: Detach the private data and chip info structures
> >    dmaengine: dw-edma: Remove unused field irq in struct dw_edma_chip
> >    dmaengine: dw-edma: Change rg_region to reg_base in struct
> >    dmaengine: dw-edma: rename wr(rd)_ch_cnt to ll_wr(rd)_cnt in struct
> > 
> > 2. Enhance EDMA driver to allow prode eDMA at EP side
> >    dmaengine: dw-edma: Add support for chip specific flags
> >    dmaengine: dw-edma: Add DW_EDMA_CHIP_32BIT_DBI for chip specific
> > flags (this patch removed at v11 because dma tree already have fixed
> > patch)
> > 
> > 3. Bugs fix at EDMA driver when probe eDMA at EP side
> >    dmaengine: dw-edma: Fix programming the source & dest addresses for
> > ep
> >    dmaengine: dw-edma: Don't rely on the deprecated "direction" member
> > 
> > 4. change pci-epf-test to use EDMA driver to transfer data.
> >    PCI: endpoint: Add embedded DMA controller test
> > 
> > 5. Using imx8dxl to do test, but some EP functions still have not
> > upstream yet. So below patch show how probe eDMA driver at EP
> > controller driver.
> > https://lore.kernel.org/linux-pci/20220309120149.GB134091@thinkpad/T/#m979eb506c73ab3cfca2e7a43635ecdaec18d8097
> 

> Applied to dmaengine-next, thanks

Vinoud, this was supposed to be merged in through PCIe repo.( I asked
many times of that. Bjorn also agreed to merge it in. Could drop it
from yout repo?

-Sergey

> 
> -- 
> ~Vinod
Serge Semin June 16, 2022, 2:01 p.m. UTC | #7
On Thu, Jun 16, 2022 at 04:54:13PM +0300, Serge Semin wrote:
> On Thu, Jun 16, 2022 at 06:51:55AM -0700, Vinod Koul wrote:
> > On 24-05-22, 10:21, Frank Li wrote:
> > > Default Designware EDMA just probe remotely at host side.
> > > This patch allow EDMA driver can probe at EP side.
> > > 
> > > 1. Clean up patch
> > >    dmaengine: dw-edma: Detach the private data and chip info structures
> > >    dmaengine: dw-edma: Remove unused field irq in struct dw_edma_chip
> > >    dmaengine: dw-edma: Change rg_region to reg_base in struct
> > >    dmaengine: dw-edma: rename wr(rd)_ch_cnt to ll_wr(rd)_cnt in struct
> > > 
> > > 2. Enhance EDMA driver to allow prode eDMA at EP side
> > >    dmaengine: dw-edma: Add support for chip specific flags
> > >    dmaengine: dw-edma: Add DW_EDMA_CHIP_32BIT_DBI for chip specific
> > > flags (this patch removed at v11 because dma tree already have fixed
> > > patch)
> > > 
> > > 3. Bugs fix at EDMA driver when probe eDMA at EP side
> > >    dmaengine: dw-edma: Fix programming the source & dest addresses for
> > > ep
> > >    dmaengine: dw-edma: Don't rely on the deprecated "direction" member
> > > 
> > > 4. change pci-epf-test to use EDMA driver to transfer data.
> > >    PCI: endpoint: Add embedded DMA controller test
> > > 
> > > 5. Using imx8dxl to do test, but some EP functions still have not
> > > upstream yet. So below patch show how probe eDMA driver at EP
> > > controller driver.
> > > https://lore.kernel.org/linux-pci/20220309120149.GB134091@thinkpad/T/#m979eb506c73ab3cfca2e7a43635ecdaec18d8097
> > 
> 
> > Applied to dmaengine-next, thanks
> 

> Vinod, this was supposed to be merged in through PCIe repo.( I asked
> many times of that. Bjorn also agreed to merge it in. Could drop it
> from yout repo?

I asked it several time including in the framework of this thread:
https://lore.kernel.org/dmaengine/20220525092306.wuansog6fe2ika3b@mobilestation/
There are dependencies of my patchsets from this one. Please consider
dropping it from your dmaengine-next repo while it's still possible
since taking DW eDMA and PCie patches through the PCie repo would be
more natural.

-Sergey

> 
> -Sergey
> 
> > 
> > -- 
> > ~Vinod
Serge Semin June 16, 2022, 2:03 p.m. UTC | #8
On Thu, Jun 16, 2022 at 05:02:00PM +0300, Serge Semin wrote:
> On Thu, Jun 16, 2022 at 04:54:13PM +0300, Serge Semin wrote:
> > On Thu, Jun 16, 2022 at 06:51:55AM -0700, Vinod Koul wrote:
> > > On 24-05-22, 10:21, Frank Li wrote:
> > > > Default Designware EDMA just probe remotely at host side.
> > > > This patch allow EDMA driver can probe at EP side.
> > > > 
> > > > 1. Clean up patch
> > > >    dmaengine: dw-edma: Detach the private data and chip info structures
> > > >    dmaengine: dw-edma: Remove unused field irq in struct dw_edma_chip
> > > >    dmaengine: dw-edma: Change rg_region to reg_base in struct
> > > >    dmaengine: dw-edma: rename wr(rd)_ch_cnt to ll_wr(rd)_cnt in struct
> > > > 
> > > > 2. Enhance EDMA driver to allow prode eDMA at EP side
> > > >    dmaengine: dw-edma: Add support for chip specific flags
> > > >    dmaengine: dw-edma: Add DW_EDMA_CHIP_32BIT_DBI for chip specific
> > > > flags (this patch removed at v11 because dma tree already have fixed
> > > > patch)
> > > > 
> > > > 3. Bugs fix at EDMA driver when probe eDMA at EP side
> > > >    dmaengine: dw-edma: Fix programming the source & dest addresses for
> > > > ep
> > > >    dmaengine: dw-edma: Don't rely on the deprecated "direction" member
> > > > 
> > > > 4. change pci-epf-test to use EDMA driver to transfer data.
> > > >    PCI: endpoint: Add embedded DMA controller test
> > > > 
> > > > 5. Using imx8dxl to do test, but some EP functions still have not
> > > > upstream yet. So below patch show how probe eDMA driver at EP
> > > > controller driver.
> > > > https://lore.kernel.org/linux-pci/20220309120149.GB134091@thinkpad/T/#m979eb506c73ab3cfca2e7a43635ecdaec18d8097
> > > 
> > 
> > > Applied to dmaengine-next, thanks
> > 
> 
> > Vinod, this was supposed to be merged in through PCIe repo.( I asked
> > many times of that. Bjorn also agreed to merge it in. Could drop it
> > from yout repo?
> 

> I asked it several time including in the framework of this thread:
> https://lore.kernel.org/dmaengine/20220525092306.wuansog6fe2ika3b@mobilestation/
> There are dependencies of my patchsets from this one. Please consider
> dropping it from your dmaengine-next repo while it's still possible
> since taking DW eDMA and PCie patches through the PCie repo would be
> more natural.

The only thing we were waiting for was you ack tag...

-Sergey

> 
> -Sergey
> 
> > 
> > -Sergey
> > 
> > > 
> > > -- 
> > > ~Vinod
Vinod Koul June 16, 2022, 2:30 p.m. UTC | #9
On 16-06-22, 17:03, Serge Semin wrote:
> On Thu, Jun 16, 2022 at 05:02:00PM +0300, Serge Semin wrote:
> > On Thu, Jun 16, 2022 at 04:54:13PM +0300, Serge Semin wrote:
> > > On Thu, Jun 16, 2022 at 06:51:55AM -0700, Vinod Koul wrote:
> > > > On 24-05-22, 10:21, Frank Li wrote:
> > > > > Default Designware EDMA just probe remotely at host side.
> > > > > This patch allow EDMA driver can probe at EP side.
> > > > > 
> > > > > 1. Clean up patch
> > > > >    dmaengine: dw-edma: Detach the private data and chip info structures
> > > > >    dmaengine: dw-edma: Remove unused field irq in struct dw_edma_chip
> > > > >    dmaengine: dw-edma: Change rg_region to reg_base in struct
> > > > >    dmaengine: dw-edma: rename wr(rd)_ch_cnt to ll_wr(rd)_cnt in struct
> > > > > 
> > > > > 2. Enhance EDMA driver to allow prode eDMA at EP side
> > > > >    dmaengine: dw-edma: Add support for chip specific flags
> > > > >    dmaengine: dw-edma: Add DW_EDMA_CHIP_32BIT_DBI for chip specific
> > > > > flags (this patch removed at v11 because dma tree already have fixed
> > > > > patch)
> > > > > 
> > > > > 3. Bugs fix at EDMA driver when probe eDMA at EP side
> > > > >    dmaengine: dw-edma: Fix programming the source & dest addresses for
> > > > > ep
> > > > >    dmaengine: dw-edma: Don't rely on the deprecated "direction" member
> > > > > 
> > > > > 4. change pci-epf-test to use EDMA driver to transfer data.
> > > > >    PCI: endpoint: Add embedded DMA controller test
> > > > > 
> > > > > 5. Using imx8dxl to do test, but some EP functions still have not
> > > > > upstream yet. So below patch show how probe eDMA driver at EP
> > > > > controller driver.
> > > > > https://lore.kernel.org/linux-pci/20220309120149.GB134091@thinkpad/T/#m979eb506c73ab3cfca2e7a43635ecdaec18d8097
> > > > 
> > > 
> > > > Applied to dmaengine-next, thanks
> > > 
> > 
> > > Vinod, this was supposed to be merged in through PCIe repo.( I asked
> > > many times of that. Bjorn also agreed to merge it in. Could drop it
> > > from yout repo?
> > 
> 
> > I asked it several time including in the framework of this thread:
> > https://lore.kernel.org/dmaengine/20220525092306.wuansog6fe2ika3b@mobilestation/
> > There are dependencies of my patchsets from this one. Please consider
> > dropping it from your dmaengine-next repo while it's still possible
> > since taking DW eDMA and PCie patches through the PCie repo would be
> > more natural.
> 
> The only thing we were waiting for was you ack tag...

Is there any dependency, since this has many dmaengine patches and one
pcie patch which was acked by Kishon, so can go thru dmaengine tree...

I can drop if that suits all...
Serge Semin June 16, 2022, 3:20 p.m. UTC | #10
On Thu, Jun 16, 2022 at 07:30:23AM -0700, Vinod Koul wrote:
> On 16-06-22, 17:03, Serge Semin wrote:
> > On Thu, Jun 16, 2022 at 05:02:00PM +0300, Serge Semin wrote:
> > > On Thu, Jun 16, 2022 at 04:54:13PM +0300, Serge Semin wrote:
> > > > On Thu, Jun 16, 2022 at 06:51:55AM -0700, Vinod Koul wrote:
> > > > > On 24-05-22, 10:21, Frank Li wrote:
> > > > > > Default Designware EDMA just probe remotely at host side.
> > > > > > This patch allow EDMA driver can probe at EP side.
> > > > > > 
> > > > > > 1. Clean up patch
> > > > > >    dmaengine: dw-edma: Detach the private data and chip info structures
> > > > > >    dmaengine: dw-edma: Remove unused field irq in struct dw_edma_chip
> > > > > >    dmaengine: dw-edma: Change rg_region to reg_base in struct
> > > > > >    dmaengine: dw-edma: rename wr(rd)_ch_cnt to ll_wr(rd)_cnt in struct
> > > > > > 
> > > > > > 2. Enhance EDMA driver to allow prode eDMA at EP side
> > > > > >    dmaengine: dw-edma: Add support for chip specific flags
> > > > > >    dmaengine: dw-edma: Add DW_EDMA_CHIP_32BIT_DBI for chip specific
> > > > > > flags (this patch removed at v11 because dma tree already have fixed
> > > > > > patch)
> > > > > > 
> > > > > > 3. Bugs fix at EDMA driver when probe eDMA at EP side
> > > > > >    dmaengine: dw-edma: Fix programming the source & dest addresses for
> > > > > > ep
> > > > > >    dmaengine: dw-edma: Don't rely on the deprecated "direction" member
> > > > > > 
> > > > > > 4. change pci-epf-test to use EDMA driver to transfer data.
> > > > > >    PCI: endpoint: Add embedded DMA controller test
> > > > > > 
> > > > > > 5. Using imx8dxl to do test, but some EP functions still have not
> > > > > > upstream yet. So below patch show how probe eDMA driver at EP
> > > > > > controller driver.
> > > > > > https://lore.kernel.org/linux-pci/20220309120149.GB134091@thinkpad/T/#m979eb506c73ab3cfca2e7a43635ecdaec18d8097
> > > > > 
> > > > 
> > > > > Applied to dmaengine-next, thanks
> > > > 
> > > 
> > > > Vinod, this was supposed to be merged in through PCIe repo.( I asked
> > > > many times of that. Bjorn also agreed to merge it in. Could drop it
> > > > from yout repo?
> > > 
> > 
> > > I asked it several time including in the framework of this thread:
> > > https://lore.kernel.org/dmaengine/20220525092306.wuansog6fe2ika3b@mobilestation/
> > > There are dependencies of my patchsets from this one. Please consider
> > > dropping it from your dmaengine-next repo while it's still possible
> > > since taking DW eDMA and PCie patches through the PCie repo would be
> > > more natural.
> > 
> > The only thing we were waiting for was you ack tag...
> 

> Is there any dependency, since this has many dmaengine patches and one
> pcie patch which was acked by Kishon, so can go thru dmaengine tree...

Right. This one is fully suitable for the DMA-engine tree, but there
are dependencies of my work from this series. My patchsets in its turn
concern both PCIe and DMA-engine parts.

Here is the deal. My work consists of four patchsets:
[PATCH v4 00/18] PCI: dwc: Various fixes and cleanups
https://lore.kernel.org/linux-pci/20220610082535.12802-1-Sergey.Semin@baikalelectronics.ru/
[PATCH v3 00/15] PCI: dwc: Add hw version and dma-ranges support
https://lore.kernel.org/linux-pci/20220610084444.14549-1-Sergey.Semin@baikalelectronics.ru/
[PATCH v3 00/17] PCI: dwc: Add generic resources and Baikal-T1 support
https://lore.kernel.org/linux-pci/20220610085706.15741-1-Sergey.Semin@baikalelectronics.ru/
[PATCH v3 00/24] dmaengine: dw-edma: Add RP/EP local DMA controllers support
https://lore.kernel.org/dmaengine/20220610091459.17612-1-Sergey.Semin@baikalelectronics.ru/

The last patchset depends on the Frank series and my DW PCIe
patchsets listed above. To cut it shortly here is the
dependencies graph:

                PCIe RP/EP            |               DMA engine
                    ^                 |                   ^
                    |                 |                   |
1. Semin: [PATCH v4 00/18] "PCI: dwc: |                   |
   Various fixes and cleanups"        |                   |
                    ^                 |                   |
                    |                 |                   |
2. Semin: [PATCH v3 00/15] "PCI: dwc: |                   |
   Add hw version and dma-ranges      |                   |
   support"                           |                   |
                    ^                 |                   |
                    |                 |                   |
3. Semin: [PATCH v3 00/17] "PCI: dwc: | 4. Li: [PATCH v12 0/8] "Enable
   Add generic resources and Baikal-T1|    designware PCI EP EDMA locally"
   support"                           |                   ^
                    ^                                     |
                    |                                     |
                    +-----------------+-------------------+
                                      |
             5. Semin: [PATCH v3 00/24] "dmaengine: dw-edma:
                Add RP/EP local DMA controllers support"

As you can see my series (5) depends on the Frank' series (4). My series
in its turn depends on the PCI patchsets (3), (2) and (1). So if you get
to merge the Frank' patchset into your tree we'll need to merge the
rest of the patchsets through your repo too. Seeing the DW eDMA device
is implemented as either a separate PCIe device or embedded into the
DW PCIe RP/EP controller and there are many PCI-related patches in my
work, it would be more suitable to merge all the patches through the
PCIe tree. Bjorn already agreed to do that here:
https://lore.kernel.org/linux-pci/20220524155201.GA247821@bhelgaas/
We only waited for your ackes. BTW should you have some free time
please review my series (5) too since it mainly concerns the DW eDMA
driver (though Mani, in Cc, has already done it and even performed
the testing).

> 
> I can drop if that suits all...

Yes please. Please drop the Frank' series from your repo, give your
explicit ack if you are ok with it and let's merge it and the rest of
the work through the Bjorn' repo. Patchset (1) has been fully reviewed.
Series (2) and (3) need one more iteration to be finished. So I very
much hope they will be done in the next few weeks, before the next
merge window.

-Sergey

> 
> -- 
> ~Vinod
Vinod Koul June 16, 2022, 3:40 p.m. UTC | #11
On 16-06-22, 18:20, Serge Semin wrote:
> On Thu, Jun 16, 2022 at 07:30:23AM -0700, Vinod Koul wrote:
> > On 16-06-22, 17:03, Serge Semin wrote:
> > > On Thu, Jun 16, 2022 at 05:02:00PM +0300, Serge Semin wrote:
> > > > On Thu, Jun 16, 2022 at 04:54:13PM +0300, Serge Semin wrote:
> > > > > On Thu, Jun 16, 2022 at 06:51:55AM -0700, Vinod Koul wrote:
> > > > > > On 24-05-22, 10:21, Frank Li wrote:
> > > > > > > Default Designware EDMA just probe remotely at host side.
> > > > > > > This patch allow EDMA driver can probe at EP side.
> > > > > > > 
> > > > > > > 1. Clean up patch
> > > > > > >    dmaengine: dw-edma: Detach the private data and chip info structures
> > > > > > >    dmaengine: dw-edma: Remove unused field irq in struct dw_edma_chip
> > > > > > >    dmaengine: dw-edma: Change rg_region to reg_base in struct
> > > > > > >    dmaengine: dw-edma: rename wr(rd)_ch_cnt to ll_wr(rd)_cnt in struct
> > > > > > > 
> > > > > > > 2. Enhance EDMA driver to allow prode eDMA at EP side
> > > > > > >    dmaengine: dw-edma: Add support for chip specific flags
> > > > > > >    dmaengine: dw-edma: Add DW_EDMA_CHIP_32BIT_DBI for chip specific
> > > > > > > flags (this patch removed at v11 because dma tree already have fixed
> > > > > > > patch)
> > > > > > > 
> > > > > > > 3. Bugs fix at EDMA driver when probe eDMA at EP side
> > > > > > >    dmaengine: dw-edma: Fix programming the source & dest addresses for
> > > > > > > ep
> > > > > > >    dmaengine: dw-edma: Don't rely on the deprecated "direction" member
> > > > > > > 
> > > > > > > 4. change pci-epf-test to use EDMA driver to transfer data.
> > > > > > >    PCI: endpoint: Add embedded DMA controller test
> > > > > > > 
> > > > > > > 5. Using imx8dxl to do test, but some EP functions still have not
> > > > > > > upstream yet. So below patch show how probe eDMA driver at EP
> > > > > > > controller driver.
> > > > > > > https://lore.kernel.org/linux-pci/20220309120149.GB134091@thinkpad/T/#m979eb506c73ab3cfca2e7a43635ecdaec18d8097
> > > > > > 
> > > > > 
> > > > > > Applied to dmaengine-next, thanks
> > > > > 
> > > > 
> > > > > Vinod, this was supposed to be merged in through PCIe repo.( I asked
> > > > > many times of that. Bjorn also agreed to merge it in. Could drop it
> > > > > from yout repo?
> > > > 
> > > 
> > > > I asked it several time including in the framework of this thread:
> > > > https://lore.kernel.org/dmaengine/20220525092306.wuansog6fe2ika3b@mobilestation/
> > > > There are dependencies of my patchsets from this one. Please consider
> > > > dropping it from your dmaengine-next repo while it's still possible
> > > > since taking DW eDMA and PCie patches through the PCie repo would be
> > > > more natural.
> > > 
> > > The only thing we were waiting for was you ack tag...
> > 
> 
> > Is there any dependency, since this has many dmaengine patches and one
> > pcie patch which was acked by Kishon, so can go thru dmaengine tree...
> 
> Right. This one is fully suitable for the DMA-engine tree, but there
> are dependencies of my work from this series. My patchsets in its turn
> concern both PCIe and DMA-engine parts.
> 
> Here is the deal. My work consists of four patchsets:
> [PATCH v4 00/18] PCI: dwc: Various fixes and cleanups
> https://lore.kernel.org/linux-pci/20220610082535.12802-1-Sergey.Semin@baikalelectronics.ru/
> [PATCH v3 00/15] PCI: dwc: Add hw version and dma-ranges support
> https://lore.kernel.org/linux-pci/20220610084444.14549-1-Sergey.Semin@baikalelectronics.ru/
> [PATCH v3 00/17] PCI: dwc: Add generic resources and Baikal-T1 support
> https://lore.kernel.org/linux-pci/20220610085706.15741-1-Sergey.Semin@baikalelectronics.ru/
> [PATCH v3 00/24] dmaengine: dw-edma: Add RP/EP local DMA controllers support
> https://lore.kernel.org/dmaengine/20220610091459.17612-1-Sergey.Semin@baikalelectronics.ru/
> 
> The last patchset depends on the Frank series and my DW PCIe
> patchsets listed above. To cut it shortly here is the
> dependencies graph:
> 
>                 PCIe RP/EP            |               DMA engine
>                     ^                 |                   ^
>                     |                 |                   |
> 1. Semin: [PATCH v4 00/18] "PCI: dwc: |                   |
>    Various fixes and cleanups"        |                   |
>                     ^                 |                   |
>                     |                 |                   |
> 2. Semin: [PATCH v3 00/15] "PCI: dwc: |                   |
>    Add hw version and dma-ranges      |                   |
>    support"                           |                   |
>                     ^                 |                   |
>                     |                 |                   |
> 3. Semin: [PATCH v3 00/17] "PCI: dwc: | 4. Li: [PATCH v12 0/8] "Enable
>    Add generic resources and Baikal-T1|    designware PCI EP EDMA locally"
>    support"                           |                   ^
>                     ^                                     |
>                     |                                     |
>                     +-----------------+-------------------+
>                                       |
>              5. Semin: [PATCH v3 00/24] "dmaengine: dw-edma:
>                 Add RP/EP local DMA controllers support"
> 
> As you can see my series (5) depends on the Frank' series (4). My series
> in its turn depends on the PCI patchsets (3), (2) and (1). So if you get
> to merge the Frank' patchset into your tree we'll need to merge the
> rest of the patchsets through your repo too. Seeing the DW eDMA device
> is implemented as either a separate PCIe device or embedded into the
> DW PCIe RP/EP controller and there are many PCI-related patches in my
> work, it would be more suitable to merge all the patches through the
> PCIe tree. Bjorn already agreed to do that here:
> https://lore.kernel.org/linux-pci/20220524155201.GA247821@bhelgaas/
> We only waited for your ackes. BTW should you have some free time
> please review my series (5) too since it mainly concerns the DW eDMA
> driver (though Mani, in Cc, has already done it and even performed
> the testing).
> 
> > 
> > I can drop if that suits all...
> 
> Yes please. Please drop the Frank' series from your repo, give your
> explicit ack if you are ok with it and let's merge it and the rest of
> the work through the Bjorn' repo. Patchset (1) has been fully reviewed.
> Series (2) and (3) need one more iteration to be finished. So I very
> much hope they will be done in the next few weeks, before the next
> merge window.

Ok dropped now
Vinod Koul June 16, 2022, 3:41 p.m. UTC | #12
On 24-05-22, 10:21, Frank Li wrote:
> Default Designware EDMA just probe remotely at host side.
> This patch allow EDMA driver can probe at EP side.
> 
> 1. Clean up patch
>    dmaengine: dw-edma: Detach the private data and chip info structures
>    dmaengine: dw-edma: Remove unused field irq in struct dw_edma_chip
>    dmaengine: dw-edma: Change rg_region to reg_base in struct
>    dmaengine: dw-edma: rename wr(rd)_ch_cnt to ll_wr(rd)_cnt in struct
> 
> 2. Enhance EDMA driver to allow prode eDMA at EP side
>    dmaengine: dw-edma: Add support for chip specific flags
>    dmaengine: dw-edma: Add DW_EDMA_CHIP_32BIT_DBI for chip specific
> flags (this patch removed at v11 because dma tree already have fixed
> patch)
> 
> 3. Bugs fix at EDMA driver when probe eDMA at EP side
>    dmaengine: dw-edma: Fix programming the source & dest addresses for
> ep
>    dmaengine: dw-edma: Don't rely on the deprecated "direction" member
> 
> 4. change pci-epf-test to use EDMA driver to transfer data.
>    PCI: endpoint: Add embedded DMA controller test
> 
> 5. Using imx8dxl to do test, but some EP functions still have not
> upstream yet. So below patch show how probe eDMA driver at EP
> controller driver.
> https://lore.kernel.org/linux-pci/20220309120149.GB134091@thinkpad/T/#m979eb506c73ab3cfca2e7a43635ecdaec18d8097

Acked-By: Vinod Koul <vkoul@kernel.org>
Bjorn Helgaas June 16, 2022, 4:35 p.m. UTC | #13
On Tue, May 24, 2022 at 10:21:51AM -0500, Frank Li wrote:
> Default Designware EDMA just probe remotely at host side.
> This patch allow EDMA driver can probe at EP side.
> 
> 1. Clean up patch
>    dmaengine: dw-edma: Detach the private data and chip info structures
>    dmaengine: dw-edma: Remove unused field irq in struct dw_edma_chip
>    dmaengine: dw-edma: Change rg_region to reg_base in struct
>    dmaengine: dw-edma: rename wr(rd)_ch_cnt to ll_wr(rd)_cnt in struct
> 
> 2. Enhance EDMA driver to allow prode eDMA at EP side
>    dmaengine: dw-edma: Add support for chip specific flags
>    dmaengine: dw-edma: Add DW_EDMA_CHIP_32BIT_DBI for chip specific
> flags (this patch removed at v11 because dma tree already have fixed
> patch)
> 
> 3. Bugs fix at EDMA driver when probe eDMA at EP side
>    dmaengine: dw-edma: Fix programming the source & dest addresses for
> ep
>    dmaengine: dw-edma: Don't rely on the deprecated "direction" member
> 
> 4. change pci-epf-test to use EDMA driver to transfer data.
>    PCI: endpoint: Add embedded DMA controller test
> 
> 5. Using imx8dxl to do test, but some EP functions still have not
> upstream yet. So below patch show how probe eDMA driver at EP
> controller driver.
> https://lore.kernel.org/linux-pci/20220309120149.GB134091@thinkpad/T/#m979eb506c73ab3cfca2e7a43635ecdaec18d8097
> 
> Frank Li (6):
>   dmaengine: dw-edma: Remove unused field irq in struct dw_edma_chip
>   dmaengine: dw-edma: Detach the private data and chip info structures
>   dmaengine: dw-edma: Change rg_region to reg_base in struct
>     dw_edma_chip
>   dmaengine: dw-edma: Rename wr(rd)_ch_cnt to ll_wr(rd)_cnt in struct
>     dw_edma_chip
>   dmaengine: dw-edma: Add support for chip specific flags
>   PCI: endpoint: Enable DMA tests for endpoints with DMA capabilities
> 
> Serge Semin (2):
>   dmaengine: dw-edma: Drop dma_slave_config.direction field usage
>   dmaengine: dw-edma: Fix eDMA Rd/Wr-channels and DMA-direction
>     semantics
> 
>  drivers/dma/dw-edma/dw-edma-core.c            | 141 +++++++++++-------
>  drivers/dma/dw-edma/dw-edma-core.h            |  31 +---
>  drivers/dma/dw-edma/dw-edma-pcie.c            |  83 +++++------
>  drivers/dma/dw-edma/dw-edma-v0-core.c         |  41 ++---
>  drivers/dma/dw-edma/dw-edma-v0-core.h         |   4 +-
>  drivers/dma/dw-edma/dw-edma-v0-debugfs.c      |  18 +--
>  drivers/dma/dw-edma/dw-edma-v0-debugfs.h      |   8 +-
>  drivers/pci/endpoint/functions/pci-epf-test.c | 112 ++++++++++++--
>  include/linux/dma/edma.h                      |  59 +++++++-
>  9 files changed, 317 insertions(+), 180 deletions(-)

Applied with Vinod's ack to pci/edma for v5.20, thanks!

Check
https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/log/?h=pci/edma
(head 7871514c9cff ("PCI: endpoint: Enable DMA tests for endpoints
with DMA capabilities")).

If you post things that need to be applied on top of that branch,
please mention that in the cover letter.

I don't guarantee the immutability of the branch because sometimes I
fix typos or similar errors before the merge window.

Bjorn
Serge Semin June 16, 2022, 6:39 p.m. UTC | #14
On Thu, Jun 16, 2022 at 08:40:41AM -0700, Vinod Koul wrote:
> On 16-06-22, 18:20, Serge Semin wrote:
> > On Thu, Jun 16, 2022 at 07:30:23AM -0700, Vinod Koul wrote:
> > > On 16-06-22, 17:03, Serge Semin wrote:
> > > > On Thu, Jun 16, 2022 at 05:02:00PM +0300, Serge Semin wrote:
> > > > > On Thu, Jun 16, 2022 at 04:54:13PM +0300, Serge Semin wrote:
> > > > > > On Thu, Jun 16, 2022 at 06:51:55AM -0700, Vinod Koul wrote:
> > > > > > > On 24-05-22, 10:21, Frank Li wrote:
> > > > > > > > Default Designware EDMA just probe remotely at host side.
> > > > > > > > This patch allow EDMA driver can probe at EP side.
> > > > > > > > 
> > > > > > > > 1. Clean up patch
> > > > > > > >    dmaengine: dw-edma: Detach the private data and chip info structures
> > > > > > > >    dmaengine: dw-edma: Remove unused field irq in struct dw_edma_chip
> > > > > > > >    dmaengine: dw-edma: Change rg_region to reg_base in struct
> > > > > > > >    dmaengine: dw-edma: rename wr(rd)_ch_cnt to ll_wr(rd)_cnt in struct
> > > > > > > > 
> > > > > > > > 2. Enhance EDMA driver to allow prode eDMA at EP side
> > > > > > > >    dmaengine: dw-edma: Add support for chip specific flags
> > > > > > > >    dmaengine: dw-edma: Add DW_EDMA_CHIP_32BIT_DBI for chip specific
> > > > > > > > flags (this patch removed at v11 because dma tree already have fixed
> > > > > > > > patch)
> > > > > > > > 
> > > > > > > > 3. Bugs fix at EDMA driver when probe eDMA at EP side
> > > > > > > >    dmaengine: dw-edma: Fix programming the source & dest addresses for
> > > > > > > > ep
> > > > > > > >    dmaengine: dw-edma: Don't rely on the deprecated "direction" member
> > > > > > > > 
> > > > > > > > 4. change pci-epf-test to use EDMA driver to transfer data.
> > > > > > > >    PCI: endpoint: Add embedded DMA controller test
> > > > > > > > 
> > > > > > > > 5. Using imx8dxl to do test, but some EP functions still have not
> > > > > > > > upstream yet. So below patch show how probe eDMA driver at EP
> > > > > > > > controller driver.
> > > > > > > > https://lore.kernel.org/linux-pci/20220309120149.GB134091@thinkpad/T/#m979eb506c73ab3cfca2e7a43635ecdaec18d8097
> > > > > > > 
> > > > > > 
> > > > > > > Applied to dmaengine-next, thanks
> > > > > > 
> > > > > 
> > > > > > Vinod, this was supposed to be merged in through PCIe repo.( I asked
> > > > > > many times of that. Bjorn also agreed to merge it in. Could drop it
> > > > > > from yout repo?
> > > > > 
> > > > 
> > > > > I asked it several time including in the framework of this thread:
> > > > > https://lore.kernel.org/dmaengine/20220525092306.wuansog6fe2ika3b@mobilestation/
> > > > > There are dependencies of my patchsets from this one. Please consider
> > > > > dropping it from your dmaengine-next repo while it's still possible
> > > > > since taking DW eDMA and PCie patches through the PCie repo would be
> > > > > more natural.
> > > > 
> > > > The only thing we were waiting for was you ack tag...
> > > 
> > 
> > > Is there any dependency, since this has many dmaengine patches and one
> > > pcie patch which was acked by Kishon, so can go thru dmaengine tree...
> > 
> > Right. This one is fully suitable for the DMA-engine tree, but there
> > are dependencies of my work from this series. My patchsets in its turn
> > concern both PCIe and DMA-engine parts.
> > 
> > Here is the deal. My work consists of four patchsets:
> > [PATCH v4 00/18] PCI: dwc: Various fixes and cleanups
> > https://lore.kernel.org/linux-pci/20220610082535.12802-1-Sergey.Semin@baikalelectronics.ru/
> > [PATCH v3 00/15] PCI: dwc: Add hw version and dma-ranges support
> > https://lore.kernel.org/linux-pci/20220610084444.14549-1-Sergey.Semin@baikalelectronics.ru/
> > [PATCH v3 00/17] PCI: dwc: Add generic resources and Baikal-T1 support
> > https://lore.kernel.org/linux-pci/20220610085706.15741-1-Sergey.Semin@baikalelectronics.ru/
> > [PATCH v3 00/24] dmaengine: dw-edma: Add RP/EP local DMA controllers support
> > https://lore.kernel.org/dmaengine/20220610091459.17612-1-Sergey.Semin@baikalelectronics.ru/
> > 
> > The last patchset depends on the Frank series and my DW PCIe
> > patchsets listed above. To cut it shortly here is the
> > dependencies graph:
> > 
> >                 PCIe RP/EP            |               DMA engine
> >                     ^                 |                   ^
> >                     |                 |                   |
> > 1. Semin: [PATCH v4 00/18] "PCI: dwc: |                   |
> >    Various fixes and cleanups"        |                   |
> >                     ^                 |                   |
> >                     |                 |                   |
> > 2. Semin: [PATCH v3 00/15] "PCI: dwc: |                   |
> >    Add hw version and dma-ranges      |                   |
> >    support"                           |                   |
> >                     ^                 |                   |
> >                     |                 |                   |
> > 3. Semin: [PATCH v3 00/17] "PCI: dwc: | 4. Li: [PATCH v12 0/8] "Enable
> >    Add generic resources and Baikal-T1|    designware PCI EP EDMA locally"
> >    support"                           |                   ^
> >                     ^                                     |
> >                     |                                     |
> >                     +-----------------+-------------------+
> >                                       |
> >              5. Semin: [PATCH v3 00/24] "dmaengine: dw-edma:
> >                 Add RP/EP local DMA controllers support"
> > 
> > As you can see my series (5) depends on the Frank' series (4). My series
> > in its turn depends on the PCI patchsets (3), (2) and (1). So if you get
> > to merge the Frank' patchset into your tree we'll need to merge the
> > rest of the patchsets through your repo too. Seeing the DW eDMA device
> > is implemented as either a separate PCIe device or embedded into the
> > DW PCIe RP/EP controller and there are many PCI-related patches in my
> > work, it would be more suitable to merge all the patches through the
> > PCIe tree. Bjorn already agreed to do that here:
> > https://lore.kernel.org/linux-pci/20220524155201.GA247821@bhelgaas/
> > We only waited for your ackes. BTW should you have some free time
> > please review my series (5) too since it mainly concerns the DW eDMA
> > driver (though Mani, in Cc, has already done it and even performed
> > the testing).
> > 
> > > 
> > > I can drop if that suits all...
> > 
> > Yes please. Please drop the Frank' series from your repo, give your
> > explicit ack if you are ok with it and let's merge it and the rest of
> > the work through the Bjorn' repo. Patchset (1) has been fully reviewed.
> > Series (2) and (3) need one more iteration to be finished. So I very
> > much hope they will be done in the next few weeks, before the next
> > merge window.
> 

> Ok dropped now

Great! Thank you very much. Bjord has just merged in the series
through his repo.

-Sergey

> 
> -- 
> ~Vinod
Serge Semin June 16, 2022, 6:49 p.m. UTC | #15
On Thu, Jun 16, 2022 at 11:35:33AM -0500, Bjorn Helgaas wrote:
> On Tue, May 24, 2022 at 10:21:51AM -0500, Frank Li wrote:
> > Default Designware EDMA just probe remotely at host side.
> > This patch allow EDMA driver can probe at EP side.
> > 
> > 1. Clean up patch
> >    dmaengine: dw-edma: Detach the private data and chip info structures
> >    dmaengine: dw-edma: Remove unused field irq in struct dw_edma_chip
> >    dmaengine: dw-edma: Change rg_region to reg_base in struct
> >    dmaengine: dw-edma: rename wr(rd)_ch_cnt to ll_wr(rd)_cnt in struct
> > 
> > 2. Enhance EDMA driver to allow prode eDMA at EP side
> >    dmaengine: dw-edma: Add support for chip specific flags
> >    dmaengine: dw-edma: Add DW_EDMA_CHIP_32BIT_DBI for chip specific
> > flags (this patch removed at v11 because dma tree already have fixed
> > patch)
> > 
> > 3. Bugs fix at EDMA driver when probe eDMA at EP side
> >    dmaengine: dw-edma: Fix programming the source & dest addresses for
> > ep
> >    dmaengine: dw-edma: Don't rely on the deprecated "direction" member
> > 
> > 4. change pci-epf-test to use EDMA driver to transfer data.
> >    PCI: endpoint: Add embedded DMA controller test
> > 
> > 5. Using imx8dxl to do test, but some EP functions still have not
> > upstream yet. So below patch show how probe eDMA driver at EP
> > controller driver.
> > https://lore.kernel.org/linux-pci/20220309120149.GB134091@thinkpad/T/#m979eb506c73ab3cfca2e7a43635ecdaec18d8097
> > 
> > Frank Li (6):
> >   dmaengine: dw-edma: Remove unused field irq in struct dw_edma_chip
> >   dmaengine: dw-edma: Detach the private data and chip info structures
> >   dmaengine: dw-edma: Change rg_region to reg_base in struct
> >     dw_edma_chip
> >   dmaengine: dw-edma: Rename wr(rd)_ch_cnt to ll_wr(rd)_cnt in struct
> >     dw_edma_chip
> >   dmaengine: dw-edma: Add support for chip specific flags
> >   PCI: endpoint: Enable DMA tests for endpoints with DMA capabilities
> > 
> > Serge Semin (2):
> >   dmaengine: dw-edma: Drop dma_slave_config.direction field usage
> >   dmaengine: dw-edma: Fix eDMA Rd/Wr-channels and DMA-direction
> >     semantics
> > 
> >  drivers/dma/dw-edma/dw-edma-core.c            | 141 +++++++++++-------
> >  drivers/dma/dw-edma/dw-edma-core.h            |  31 +---
> >  drivers/dma/dw-edma/dw-edma-pcie.c            |  83 +++++------
> >  drivers/dma/dw-edma/dw-edma-v0-core.c         |  41 ++---
> >  drivers/dma/dw-edma/dw-edma-v0-core.h         |   4 +-
> >  drivers/dma/dw-edma/dw-edma-v0-debugfs.c      |  18 +--
> >  drivers/dma/dw-edma/dw-edma-v0-debugfs.h      |   8 +-
> >  drivers/pci/endpoint/functions/pci-epf-test.c | 112 ++++++++++++--
> >  include/linux/dma/edma.h                      |  59 +++++++-
> >  9 files changed, 317 insertions(+), 180 deletions(-)
> 

> Applied with Vinod's ack to pci/edma for v5.20, thanks!
> 
> Check
> https://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci.git/log/?h=pci/edma
> (head 7871514c9cff ("PCI: endpoint: Enable DMA tests for endpoints
> with DMA capabilities")).

Great! Just what we needed.

> 
> If you post things that need to be applied on top of that branch,
> please mention that in the cover letter.

Ok. I'll mention that in the cover letters of my patchsets.

I've already got several R-b/T-b tags in the series:
https://lore.kernel.org/linux-pci/20220610082535.12802-1-Sergey.Semin@baikalelectronics.ru/
Could you also have a look at it? If no objection we can either
merge it in right away into the pci/edma branch or wait for a little
while for a few more rc-cycles until I get to fix all the comments posted
for the dependant patchsets.

> 
> I don't guarantee the immutability of the branch because sometimes I
> fix typos or similar errors before the merge window.

Got it.

-Sergey

> 
> Bjorn