[PATCH V2 0/3] dma: add Qualcomm Technologies HIDMA driver

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

 



The Qualcomm Technologies HIDMA device has been designed
to support virtualization technology. The driver has been
divided into two to follow the hardware design. The management
driver is executed in hypervisor context and is the main
management entity for all channels provided by the device.
The channel driver is executed in the hypervisor/guest OS
context.

Changes from V1: (https://lkml.org/lkml/2015/10/29/670)
* change DT device name/property to hidma_mgmt-1.0.
* remove owner.
* s/_/-/ in property names and compatible strings.
* rename max-read to max-read-burst-bytes.
* rename max-write to max-write-burst-bytes.
* rename max-wxactions to max-write-transactions
* rename max-rdactions to max-read-transactions
* get rid of the todo interrupt handling for now.
* remove memset-limit argument.
* clarify management driver vs. channel driver relationship.
* use module_platform_driver
* change weight and priority attributes to arrays


Changes from V1: (https://lkml.org/lkml/2015/10/29/669)
* Remove depends on VIRTUAL_CHANNELS. Old dependency.
* Changed the commit message to state slave interface
not supported
* Change object name in DT documentation.
* Remove bits in DT.
* Remove EXPORT_SYMBOL statements.
* Change DT driver name to hidma-1.0
* Make number of descriptors a required parameter
* Remove TRC_PM macro and remove HIDMA_RUNTIME_GET/SET
  functions.
* Remove MODULE_NAME and owner
* Change DTS parameter to 32bits.
* Remove test_result structure
* Remove some debugfs macros and dma_to_phys call
* Remove pointer references from prints.
* Remove DEBUG_FS preprocessor macros.
* Eliminate debug messages from probe.
* Remove unlikely statements
* Remove debugfs
* Get rid of wmbs
* Change return labels
* handle ERROR: "__udivdi3" undefined from 0 day
* use struct hidma_lldev* instead of void* for interface
* s/wake_up_interruptible/wake_up/
* s/wait_event_interruptible_timeout/wait_event_timeout/
* move selftest to its own file
* writel_relxed correction in hidma_ll_hw_start
* remove mdelay and mb from the code
* kernel command line override for event-channel to support
  virtualization.
* add deferred probing and use module_platform_driver

Sinan Kaya (3):
  dma: add Qualcomm Technologies HIDMA management driver
  dmaselftest: add memcpy selftest support functions
  dma: add Qualcomm Technologies HIDMA channel driver

 .../devicetree/bindings/dma/qcom_hidma.txt         |  18 +
 .../devicetree/bindings/dma/qcom_hidma_mgmt.txt    |  56 ++
 drivers/dma/Kconfig                                |  21 +
 drivers/dma/Makefile                               |   5 +
 drivers/dma/dmaengine.h                            |   2 +
 drivers/dma/dmaselftest.c                          | 669 ++++++++++++++
 drivers/dma/qcom_hidma.c                           | 803 +++++++++++++++++
 drivers/dma/qcom_hidma.h                           |  45 +
 drivers/dma/qcom_hidma_ll.c                        | 972 +++++++++++++++++++++
 drivers/dma/qcom_hidma_mgmt.c                      | 747 ++++++++++++++++
 10 files changed, 3338 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/dma/qcom_hidma.txt
 create mode 100644 Documentation/devicetree/bindings/dma/qcom_hidma_mgmt.txt
 create mode 100644 drivers/dma/dmaselftest.c
 create mode 100644 drivers/dma/qcom_hidma.c
 create mode 100644 drivers/dma/qcom_hidma.h
 create mode 100644 drivers/dma/qcom_hidma_ll.c
 create mode 100644 drivers/dma/qcom_hidma_mgmt.c

-- 
Qualcomm Technologies, Inc. on behalf of Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project

--
To unsubscribe from this list: send the line "unsubscribe dmaengine" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux PCI]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux