mirror of https://github.com/thesofproject/sof.git
topology: pipeline: Add flag to selcect either timer or IRQ scheduling
Add a flag to specify whether the pipeline processing work can be scheduled via a timer or an IRQ source. IRQ scheduling will primarily be used by pipelines that include a DAI. Signed-off-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
This commit is contained in:
parent
2b41652007
commit
30d3d92928
|
@ -370,7 +370,7 @@ define(`NPIPELINE_BUFFER', `BUF'$1`.'$2)
|
||||||
dnl Pipeline name)
|
dnl Pipeline name)
|
||||||
define(`N_PIPELINE', `PIPELINE.'PIPELINE_ID`.'$1)
|
define(`N_PIPELINE', `PIPELINE.'PIPELINE_ID`.'$1)
|
||||||
|
|
||||||
dnl W_PIPELINE(stream, deadline, priority, frames, core, platform)
|
dnl W_PIPELINE(stream, deadline, priority, frames, core, timer, platform)
|
||||||
define(`W_PIPELINE',
|
define(`W_PIPELINE',
|
||||||
`SectionVendorTuples."'N_PIPELINE($1)`_tuples" {'
|
`SectionVendorTuples."'N_PIPELINE($1)`_tuples" {'
|
||||||
` tokens "sof_sched_tokens"'
|
` tokens "sof_sched_tokens"'
|
||||||
|
@ -379,6 +379,7 @@ define(`W_PIPELINE',
|
||||||
` SOF_TKN_SCHED_PRIORITY' STR($3)
|
` SOF_TKN_SCHED_PRIORITY' STR($3)
|
||||||
` SOF_TKN_SCHED_CORE' STR($5)
|
` SOF_TKN_SCHED_CORE' STR($5)
|
||||||
` SOF_TKN_SCHED_FRAMES' STR($4)
|
` SOF_TKN_SCHED_FRAMES' STR($4)
|
||||||
|
` SOF_TKN_SCHED_TIMER' STR($6)
|
||||||
` }'
|
` }'
|
||||||
`}'
|
`}'
|
||||||
`SectionData."'N_PIPELINE($1)`_data" {'
|
`SectionData."'N_PIPELINE($1)`_data" {'
|
||||||
|
@ -391,7 +392,7 @@ define(`W_PIPELINE',
|
||||||
` stream_name "'$1`"'
|
` stream_name "'$1`"'
|
||||||
` data ['
|
` data ['
|
||||||
` "'N_PIPELINE($1)`_data"'
|
` "'N_PIPELINE($1)`_data"'
|
||||||
` "'$6`"'
|
` "'$7`"'
|
||||||
` ]'
|
` ]'
|
||||||
`}')
|
`}')
|
||||||
|
|
||||||
|
|
|
@ -11,7 +11,7 @@ W_DAI_IN(DAI_SNAME, DAI_TYPE, DAI_INDEX, DAI_FORMAT, 2, 0, 0, dai0c_plat_conf)
|
||||||
#
|
#
|
||||||
# DAI pipeline - always use 0 for DAIs
|
# DAI pipeline - always use 0 for DAIs
|
||||||
#
|
#
|
||||||
W_PIPELINE(N_DAI_IN, SCHEDULE_DEADLINE, SCHEDULE_PRIORITY, SCHEDULE_FRAMES, SCHEDULE_CORE, pipe_dai_schedule_plat)
|
W_PIPELINE(N_DAI_IN, SCHEDULE_DEADLINE, SCHEDULE_PRIORITY, SCHEDULE_FRAMES, SCHEDULE_CORE, 0, pipe_dai_schedule_plat)
|
||||||
|
|
||||||
#
|
#
|
||||||
# Graph connections to pipelines
|
# Graph connections to pipelines
|
||||||
|
|
|
@ -11,7 +11,7 @@ W_DAI_OUT(DAI_SNAME, DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, 2, 2, dai0p_plat_conf)
|
||||||
#
|
#
|
||||||
# DAI pipeline - always use 0 for DAIs
|
# DAI pipeline - always use 0 for DAIs
|
||||||
#
|
#
|
||||||
W_PIPELINE(N_DAI_OUT, SCHEDULE_DEADLINE, SCHEDULE_PRIORITY, SCHEDULE_FRAMES, SCHEDULE_CORE, pipe_dai_schedule_plat)
|
W_PIPELINE(N_DAI_OUT, SCHEDULE_DEADLINE, SCHEDULE_PRIORITY, SCHEDULE_FRAMES, SCHEDULE_CORE, 0, pipe_dai_schedule_plat)
|
||||||
|
|
||||||
#
|
#
|
||||||
# Graph connections to pipelines
|
# Graph connections to pipelines
|
||||||
|
|
|
@ -81,7 +81,7 @@ indir(`define', concat(`PIPELINE_SINK_', PIPELINE_ID), N_BUFFER(0))
|
||||||
# Pipeline Configuration.
|
# Pipeline Configuration.
|
||||||
#
|
#
|
||||||
|
|
||||||
W_PIPELINE(N_PGA(0), SCHEDULE_DEADLINE, SCHEDULE_PRIORITY, SCHEDULE_FRAMES, SCHEDULE_CORE, pipe_ll_schedule_plat)
|
#W_PIPELINE(N_PGA(0), SCHEDULE_DEADLINE, SCHEDULE_PRIORITY, SCHEDULE_FRAMES, SCHEDULE_CORE, pipe_ll_schedule_plat)
|
||||||
|
|
||||||
#
|
#
|
||||||
# PCM Configuration
|
# PCM Configuration
|
||||||
|
|
|
@ -146,7 +146,7 @@ indir(`define', concat(`PIPELINE_MIXER_', PIPELINE_ID), N_MIXER(0))
|
||||||
# Pipeline Configuration.
|
# Pipeline Configuration.
|
||||||
#
|
#
|
||||||
|
|
||||||
W_PIPELINE(N_PGA(1), SCHEDULE_DEADLINE, SCHEDULE_PRIORITY, SCHEDULE_FRAMES, SCHEDULE_CORE, pipe_ll_schedule_plat)
|
#W_PIPELINE(N_PGA(1), SCHEDULE_DEADLINE, SCHEDULE_PRIORITY, SCHEDULE_FRAMES, SCHEDULE_CORE, pipe_ll_schedule_plat)
|
||||||
|
|
||||||
#
|
#
|
||||||
# PCM Configuration
|
# PCM Configuration
|
||||||
|
|
|
@ -28,7 +28,7 @@ W_DAI_OUT(DAI_SNAME, DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, 2, 2, dai0p_plat_conf)
|
||||||
#
|
#
|
||||||
# DAI pipeline - always use 0 for DAIs
|
# DAI pipeline - always use 0 for DAIs
|
||||||
#
|
#
|
||||||
W_PIPELINE(N_DAI_OUT, SCHEDULE_DEADLINE, SCHEDULE_PRIORITY, SCHEDULE_FRAMES, SCHEDULE_CORE, pipe_dai_schedule_plat)
|
W_PIPELINE(N_DAI_OUT, SCHEDULE_DEADLINE, SCHEDULE_PRIORITY, SCHEDULE_FRAMES, SCHEDULE_CORE, 0, pipe_dai_schedule_plat)
|
||||||
|
|
||||||
#
|
#
|
||||||
# Pipeline Graph
|
# Pipeline Graph
|
||||||
|
|
|
@ -65,7 +65,7 @@ W_DAI_OUT(DAI_SNAME, DAI_TYPE, DAI_INDEX, DAI_FORMAT, 0, DAI_PERIODS,
|
||||||
# DAI pipeline - always use 0 for DAIs
|
# DAI pipeline - always use 0 for DAIs
|
||||||
#
|
#
|
||||||
W_PIPELINE(N_DAI_OUT, SCHEDULE_DEADLINE, SCHEDULE_PRIORITY, SCHEDULE_FRAMES,
|
W_PIPELINE(N_DAI_OUT, SCHEDULE_DEADLINE, SCHEDULE_PRIORITY, SCHEDULE_FRAMES,
|
||||||
SCHEDULE_CORE, pipe_dai_schedule_plat)
|
SCHEDULE_CORE, 0, pipe_dai_schedule_plat)
|
||||||
|
|
||||||
#
|
#
|
||||||
# Pipeline Graph
|
# Pipeline Graph
|
||||||
|
|
|
@ -111,7 +111,7 @@ indir(`define', concat(`PIPELINE_SOURCE_', PIPELINE_ID), N_BUFFER(2))
|
||||||
# Pipeline Configuration.
|
# Pipeline Configuration.
|
||||||
#
|
#
|
||||||
|
|
||||||
W_PIPELINE(N_SRC(0), SCHEDULE_DEADLINE, SCHEDULE_PRIORITY, SCHEDULE_FRAMES, SCHEDULE_CORE, pipe_media_schedule_plat)
|
W_PIPELINE(N_SRC(0), SCHEDULE_DEADLINE, SCHEDULE_PRIORITY, SCHEDULE_FRAMES, SCHEDULE_CORE, 1, pipe_media_schedule_plat)
|
||||||
|
|
||||||
#
|
#
|
||||||
# PCM Configuration
|
# PCM Configuration
|
||||||
|
|
|
@ -84,4 +84,4 @@ indir(`define', concat(`PIPELINE_SOURCE_', PIPELINE_ID), N_BUFFER(1))
|
||||||
# Pipeline Configuration.
|
# Pipeline Configuration.
|
||||||
#
|
#
|
||||||
|
|
||||||
W_PIPELINE(N_TONE(0), SCHEDULE_DEADLINE, SCHEDULE_PRIORITY, SCHEDULE_FRAMES, SCHEDULE_CORE, pipe_tone_schedule_plat)
|
W_PIPELINE(N_TONE(0), SCHEDULE_DEADLINE, SCHEDULE_PRIORITY, SCHEDULE_FRAMES, SCHEDULE_CORE, 1, pipe_tone_schedule_plat)
|
||||||
|
|
|
@ -28,6 +28,7 @@ SectionVendorTokens."sof_sched_tokens" {
|
||||||
SOF_TKN_SCHED_MIPS "202"
|
SOF_TKN_SCHED_MIPS "202"
|
||||||
SOF_TKN_SCHED_CORE "203"
|
SOF_TKN_SCHED_CORE "203"
|
||||||
SOF_TKN_SCHED_FRAMES "204"
|
SOF_TKN_SCHED_FRAMES "204"
|
||||||
|
SOF_TKN_SCHED_TIMER "205"
|
||||||
}
|
}
|
||||||
|
|
||||||
SectionVendorTokens."sof_volume_tokens" {
|
SectionVendorTokens."sof_volume_tokens" {
|
||||||
|
|
Loading…
Reference in New Issue