Re: [PATCH 00/15] dmaengine: dw-edma: HDMA support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 15-12-20, 18:30, Gustavo Pimentel wrote:
> This patch series adds the HDMA support, as long the IP design has set
> the compatible register map parameter, which allows compatibility at
> some degree for the existing Synopsys DesignWare eDMA driver that is
> already available on the Kernel.
> 
> The HDMA "Hyper-DMA" IP is an enhancement of the eDMA "embedded-DMA" IP.
> 
> This new improvement comes with a PCI DVSEC that allows to the driver
> recognize and switch behavior if it's an eDMA or an HDMA, becoming
> retrocompatible, in the absence of this DVSEC, the driver will assume
> that is an eDMA IP.
> 
> It also adds the interleaved support, since it will be similar to the
> current scatter-gather implementation.
> 
> As well fixes/improves some abnormal behaviors not detected before, such as:
>  - crash on loading/unloading driver
>  - memory space definition for the data area and for the linked list space
>  - scatter-gather address calculation on 32 bits platforms
>  - minor comment and variable reordering
> 
> Cc: Vinod Koul <vkoul@xxxxxxxxxx>
> Cc: Dan Williams <dan.j.williams@xxxxxxxxx>
> Cc: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
> Cc: dmaengine@xxxxxxxxxxxxxxx
> Cc: linux-kernel@xxxxxxxxxxxxxxx
> Cc: linux-pci@xxxxxxxxxxxxxxx
> 
> Gustavo Pimentel (15):
>   dmaengine: dw-edma: Add writeq() and readq() for 64 bits architectures
>   dmaengine: dw-edma: Fix comments offset characters' alignment
>   dmaengine: dw-edma: Add support for the HDMA feature
>   PCI: Add pci_find_vsec_capability() to find a specific VSEC

Had this been picked up.. I see we have dependency on pci patch for this
series..

>   dmaengine: dw-edma: Add PCIe VSEC data retrieval support
>   dmaengine: dw-edma: Add device_prep_interleave_dma() support
>   dmaengine: dw-edma: Improve number of channels check
>   dmaengine: dw-edma: Reorder variables to keep consistency
>   dmaengine: dw-edma: Improve the linked list and data blocks definition
>   dmaengine: dw-edma: Change linked list and data blocks offset and
>     sizes
>   dmaengine: dw-edma: Move struct dentry variable from static definition
>     into dw_edma struct
>   dmaengine: dw-edma: Fix crash on loading/unloading driver
>   dmaengine: dw-edma: Change DMA abreviation from lower into upper case
>   dmaengine: dw-edma: Revert fix scatter-gather address calculation
>   dmaengine: dw-edma: Add pcim_iomap_table return checker
> 
>  drivers/dma/dw-edma/dw-edma-core.c       | 178 +++++++++++-------
>  drivers/dma/dw-edma/dw-edma-core.h       |  37 ++--
>  drivers/dma/dw-edma/dw-edma-pcie.c       | 275 +++++++++++++++++++++-------
>  drivers/dma/dw-edma/dw-edma-v0-core.c    | 300 ++++++++++++++++++++++++-------
>  drivers/dma/dw-edma/dw-edma-v0-core.h    |   2 +-
>  drivers/dma/dw-edma/dw-edma-v0-debugfs.c |  77 ++++----
>  drivers/dma/dw-edma/dw-edma-v0-debugfs.h |   4 +-
>  drivers/dma/dw-edma/dw-edma-v0-regs.h    | 291 +++++++++++++++++++-----------
>  drivers/pci/pci.c                        |  29 +++
>  include/linux/pci.h                      |   1 +
>  include/uapi/linux/pci_regs.h            |   5 +
>  11 files changed, 844 insertions(+), 355 deletions(-)
> 
> -- 
> 2.7.4

-- 
~Vinod



[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux