-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathsof-apl-nocodec-ssp5-tone.m4
More file actions
105 lines (82 loc) · 2.59 KB
/
sof-apl-nocodec-ssp5-tone.m4
File metadata and controls
105 lines (82 loc) · 2.59 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
#
# Topology for generic Apollolake board with no codec and digital mic array.
#
# APL Host GW DMAC support max 6 playback and max 6 capture channels so some
# pipelines/PCMs/DAIs are commented out to keep within HW bounds. If these
# are needed then they can be used provided other PCMs/pipelines/SSPs are
# commented out in their place.
# Include topology builder
include(`utils.m4')
include(`dai.m4')
include(`ssp.m4')
include(`pipeline.m4')
# Include TLV library
include(`common/tlv.m4')
# Include Token library
include(`sof/tokens.m4')
# Include Apollolake DSP configuration
include(`platform/intel/bxt.m4')
include(`platform/intel/dmic.m4')
DEBUG_START
#
# Define the pipelines
#
# PCM0 ----> volume ----------------+
# |
# |
# +--low latency mixer ----> volume ----> SSP5 (testpoints)
# |
# |
# TONE --------------> volume ------+
#
# Low Latency playback pipeline 1 on PCM 0 using max 2 channels of s32le.
# Set 1000us deadline on core 0 with priority 0
PIPELINE_PCM_DAI_ADD(sof/pipe-low-latency-playback.m4,
1, 0, 2, s32le,
1000, 0, 0, SSP, 5, s32le, 2,
48000, 48000, 48000)
dnl PIPELINE_ADD(pipeline,
dnl pipe id, max channels, format,
dnl period, priority, core,
dnl sched_comp, time_domain,
dnl pcm_min_rate, pcm_max_rate, pipeline_rate)
# Tone Playback pipeline 5 using max 2 channels of s32le.
PIPELINE_ADD(sof/pipe-tone.m4,
5, 2, s32le,
1000, 0, 0,
PIPELINE_SCHED_COMP_8,
SCHEDULE_TIME_DOMAIN_TIMER,
48000, 48000, 48000)
#
# DAIs configuration
#
dnl DAI_ADD(pipeline,
dnl pipe id, dai type, dai_index, dai_be,
dnl buffer, periods, format,
dnl deadline, priority, core, time_domain)
# playback DAI is SSP5 using 2 periods
# Buffers use s32le format, 1000us deadline on core 0 with priority 0
DAI_ADD(sof/pipe-dai-playback.m4,
1, SSP, 5, NoCodec-5,
PIPELINE_SOURCE_1, 2, s32le,
1000, 0, 0, SCHEDULE_TIME_DOMAIN_TIMER)
# Connect pipelines together
SectionGraph."pipe-apl-nocodec" {
index "0"
lines [
#tone
dapm(PIPELINE_MIXER_1, PIPELINE_SOURCE_5)
]
}
PCM_PLAYBACK_ADD(Port5, 0, PIPELINE_PCM_1)
#
# BE configurations - overrides config in ACPI if present
#
dnl DAI_CONFIG(type, dai_index, link_id, name, ssp_config/dmic_config)
DAI_CONFIG(SSP, 5, 5, NoCodec-5,
SSP_CONFIG(DSP_B, SSP_CLOCK(mclk, 24576000, codec_mclk_in),
SSP_CLOCK(bclk, 12288000, codec_slave),
SSP_CLOCK(fsync, 48000, codec_slave),
SSP_TDM(2, 32, 15, 15),
SSP_CONFIG_DATA(SSP, 5, 32)))
DEBUG_END