[Sound-open-firmware] [RFC PATCH v2 0/8] Introducing a new API for DMA_get()
Ranjani Sridharan
ranjani.sridharan at linux.intel.com
Thu Jun 7 01:08:57 CEST 2018
This set of patches proposes a new API for dma_get() that
procures a DMAC based on the requested copy capability
and flags indicating shared/exclusive access. It also updates the
existing user of dma_get() to use the new API based on the specific
usage. The platform DMAC definitions have also been updated to
include information about copy capabilities supported.
This has only been tested on the BYT platform with a Minnowboard
Turbot board and a RT5651 codec where it has passed the sanity check
test.
Further testing is required on other platforms to ensure there are no
regressions. This patch is still RFC/RFT and needs testing on CNL/HSW.
The corresponding DMAC/DMAC channel definitions from topology/kernel driver
need to be removed. This is still work in progress.
v2 changes:
1. dma_get() consolidated for all platforms
2. dmac definitions include copy capability
3. Added some helper api's to retreive platform DMAC info
Ranjani Sridharan (8):
platform: dma: move dmac initialization
dma: define platform DMAC capabilities
dma: ops: introduce num_channels_busy to get number of busy channels
in DMAC
dma: add API's to retrieve platform DMAC information
dma: introduce new API for requesting DMAC
dma: use newly defined API for request DMAC
dma: remove dmac id argument from dma_copy_context()
trace: remove trace dmac id definition
src/arch/xtensa/Makefile.am | 1 +
src/audio/dai.c | 3 +-
src/audio/host.c | 20 +++--
src/drivers/dw-dma.c | 9 ++
src/drivers/hda-dma.c | 9 ++
src/host/common_test.c | 2 +-
src/include/sof/dma.h | 26 +++++-
src/ipc/apl-ipc.c | 4 +-
src/ipc/byt-ipc.c | 4 +-
src/ipc/cnl-ipc.c | 4 +-
src/ipc/dma-copy.c | 5 +-
src/ipc/hsw-ipc.c | 4 +-
src/lib/Makefile.am | 11 +++
src/lib/dma-trace.c | 2 +-
src/lib/dma.c | 84 +++++++++++++++++++
src/platform/apollolake/dma.c | 30 +++++--
.../apollolake/include/platform/platform.h | 3 -
src/platform/apollolake/platform.c | 21 +----
src/platform/baytrail/dma.c | 23 +++--
.../baytrail/include/platform/platform.h | 3 -
src/platform/baytrail/platform.c | 22 +----
src/platform/cannonlake/dma.c | 29 +++++--
.../cannonlake/include/platform/platform.h | 3 -
src/platform/cannonlake/platform.c | 21 +----
src/platform/haswell/dma.c | 35 ++++++--
.../haswell/include/platform/platform.h | 3 -
src/platform/haswell/platform.c | 20 +----
27 files changed, 262 insertions(+), 139 deletions(-)
create mode 100644 src/lib/dma.c
--
2.17.1
More information about the Sound-open-firmware
mailing list