[Sound-open-firmware] [PATCH] pipeline: move static scheduling params to static_pipeline.c
Liam Girdwood
liam.r.girdwood at linux.intel.com
Thu Aug 10 17:56:45 CEST 2017
Move all the static scheduling params out of the platform headers and into
the static pipeline source as they are no longer used by dynamic pipeline
code.
Signed-off-by: Liam Girdwood <liam.r.girdwood at linux.intel.com>
---
src/audio/dai.c | 2 +-
src/audio/pipeline.c | 6 +++---
src/audio/pipeline_static.c | 13 +++++++++++++
src/include/reef/audio/pipeline.h | 3 +--
src/platform/baytrail/include/platform/platform.h | 13 -------------
5 files changed, 18 insertions(+), 19 deletions(-)
diff --git a/src/audio/dai.c b/src/audio/dai.c
index 8c2f0f5..518836a 100644
--- a/src/audio/dai.c
+++ b/src/audio/dai.c
@@ -146,7 +146,7 @@ static void dai_dma_cb(void *data, uint32_t type, struct dma_sg_elem *next)
}
/* notify pipeline that DAI needs it's buffer processed */
- pipeline_schedule_copy(dev->pipeline, dev, PLAT_DAI_SCHED, TASK_PRI_HIGH);
+ pipeline_schedule_copy(dev->pipeline, dev);
next_copy:
diff --git a/src/audio/pipeline.c b/src/audio/pipeline.c
index e3fdff6..5674877 100644
--- a/src/audio/pipeline.c
+++ b/src/audio/pipeline.c
@@ -703,10 +703,10 @@ static int pipeline_copy_to_downstream(struct comp_dev *start,
}
/* notify pipeline that this component requires buffers emptied/filled */
-void pipeline_schedule_copy(struct pipeline *p, struct comp_dev *dev,
- uint32_t deadline, uint32_t priority)
+void pipeline_schedule_copy(struct pipeline *p, struct comp_dev *dev)
{
- schedule_task(&p->pipe_task, deadline, priority, dev);
+ schedule_task(&p->pipe_task, p->ipc_pipe.deadline,
+ p->ipc_pipe.priority, dev);
schedule();
}
diff --git a/src/audio/pipeline_static.c b/src/audio/pipeline_static.c
index d08bb98..9723718 100644
--- a/src/audio/pipeline_static.c
+++ b/src/audio/pipeline_static.c
@@ -53,6 +53,19 @@
/* 2 * 24 (32) bit*/
#define PLATFORM_DAI_FRAME_SIZE 8
+/* Platform Host DMA buffer config - these should align with DMA engine */
+#define PLAT_HOST_PERIOD_FRAMES 48 /* must be multiple of DMA burst size */
+#define PLAT_HOST_PERIODS 2 /* give enough latency for DMA refill */
+
+/* Platform Dev DMA buffer config - these should align with DMA engine */
+#define PLAT_DAI_PERIOD_FRAMES 48 /* must be multiple of DMA+DEV burst size */
+#define PLAT_DAI_PERIODS 2 /* give enough latency for DMA refill */
+#define PLAT_DAI_SCHED 1000 /* scheduling time in usecs */
+
+/* Platform internal buffer config - these should align with DMA engine */
+#define PLAT_INT_PERIOD_FRAMES 48 /* must be multiple of DMA+DEV burst size */
+#define PLAT_INT_PERIODS 2 /* give enough latency for DMA refill */
+
/*
* Static Buffer Convenience Constructors.
*/
diff --git a/src/include/reef/audio/pipeline.h b/src/include/reef/audio/pipeline.h
index 37af714..8e029d8 100644
--- a/src/include/reef/audio/pipeline.h
+++ b/src/include/reef/audio/pipeline.h
@@ -108,8 +108,7 @@ int init_static_pipeline(struct ipc *ipc);
/* pipeline creation */
int init_pipeline(void);
-void pipeline_schedule_copy(struct pipeline *p, struct comp_dev *dev,
- uint32_t deadline, uint32_t priority);
+void pipeline_schedule_copy(struct pipeline *p, struct comp_dev *dev);
void pipeline_schedule(void *arg);
diff --git a/src/platform/baytrail/include/platform/platform.h b/src/platform/baytrail/include/platform/platform.h
index 222ffd2..7eadb8b 100644
--- a/src/platform/baytrail/include/platform/platform.h
+++ b/src/platform/baytrail/include/platform/platform.h
@@ -67,19 +67,6 @@ struct reef;
#define PLATFORM_MAX_CHANNELS 4
#define PLATFORM_MAX_STREAMS 5
-/* Platform Host DMA buffer config - these should align with DMA engine */
-#define PLAT_HOST_PERIOD_FRAMES 48 /* must be multiple of DMA burst size */
-#define PLAT_HOST_PERIODS 2 /* give enough latency for DMA refill */
-
-/* Platform Dev DMA buffer config - these should align with DMA engine */
-#define PLAT_DAI_PERIOD_FRAMES 48 /* must be multiple of DMA+DEV burst size */
-#define PLAT_DAI_PERIODS 2 /* give enough latency for DMA refill */
-#define PLAT_DAI_SCHED 1000 /* scheduling time in usecs */
-
-/* Platform internal buffer config - these should align with DMA engine */
-#define PLAT_INT_PERIOD_FRAMES 48 /* must be multiple of DMA+DEV burst size */
-#define PLAT_INT_PERIODS 2 /* give enough latency for DMA refill */
-
#define PLATFORM_SCHED_CLOCK CLK_SSP
#define PLATFORM_NUM_MMAP_POSN 10
--
2.11.0
More information about the Sound-open-firmware
mailing list