524 lines
14 KiB
Text
524 lines
14 KiB
Text
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
SectionVendorTokens."audioreach_tokens" {
|
|
AR_TKN_U32_SUB_GRAPH_INSTANCE_ID "1"
|
|
AR_TKN_U32_SUB_GRAPH_PERF_MODE "2"
|
|
AR_TKN_U32_SUB_GRAPH_DIRECTION "3"
|
|
AR_TKN_U32_SUB_GRAPH_SCENARIO_ID "4"
|
|
AR_TKN_U32_CONAINER_INSTANCE_ID "5"
|
|
AR_TKN_U32_CONAINER_CAPABILITY_ID "6"
|
|
AR_TKN_U32_CONAINER_STACK_SIZE "7"
|
|
AR_TKN_U32_CONAINER_GRAPH_POS "8"
|
|
AR_TKN_U32_CONAINER_PROC_DOMAIN "9"
|
|
AR_TKN_U32_MODULE_ID "10"
|
|
AR_TKN_U32_MODULE_INSTANCE_ID "11"
|
|
AR_TKN_U32_MODULE_MAX_IP_PORTS "12"
|
|
AR_TKN_U32_MODULE_MAX_OP_PORTS "13"
|
|
AR_TKN_U32_MODULE_IN_PORTS "14"
|
|
AR_TKN_U32_MODULE_OUT_PORTS "15"
|
|
AR_TKN_U32_MODULE_SRC_OP_PORT_ID "16"
|
|
AR_TKN_U32_MODULE_DST_IN_PORT_ID "17"
|
|
AR_TKN_U32_MODULE_HW_IF_IDX "18"
|
|
AR_TKN_U32_MODULE_HW_IF_TYPE "19"
|
|
AR_TKN_U32_MODULE_FMT_INTERLEAVE "20"
|
|
AR_TKN_U32_MODULE_FMT_DATA "21"
|
|
AR_TKN_U32_MODULE_FMT_FREQ "22"
|
|
AR_TKN_U32_MODULE_FMT_BIT_DEPTH "23"
|
|
AR_TKN_U32_MODULE_SD_LINE_IDX "24"
|
|
AR_TKN_U32_MODULE_WS_SRC "25"
|
|
AR_TKN_U32_MODULE_FRAME_SZ_FACTOR "26"
|
|
AR_TKN_U32_MODULE_LOG_CODE "27"
|
|
AR_TKN_U32_MODULE_LOG_TAP_POINT_ID "28"
|
|
AR_TKN_U32_MODULE_LOG_MODE "29"
|
|
AR_TKN_DAI_INDEX "30"
|
|
}
|
|
#
|
|
# Stream SubGraph for PCM Playback
|
|
#
|
|
# _____________________________________________________
|
|
# | Sub Graph 1 |
|
|
# | [WR_SH] -> [PCM DEC] -> [PCM CONV] -> [VOL]->[LOG] |- Kcontrol
|
|
# |_____________________________________________________|
|
|
#
|
|
#
|
|
|
|
SectionTLV."master_playback_vol_ctrl_tlv" {
|
|
scale {
|
|
min "0"
|
|
step "100"
|
|
mute "0"
|
|
}
|
|
}
|
|
SectionControlMixer."Master Playback Volume" {
|
|
Comment "Stream Global volume"
|
|
|
|
# control belongs to this index group
|
|
index "1"
|
|
|
|
# Channel register and shift for Front Left/Right
|
|
channel."FL" {
|
|
reg "0"
|
|
shift "0"
|
|
}
|
|
channel."FR" {
|
|
reg "0"
|
|
shift "0"
|
|
}
|
|
|
|
# max control value and whether value is inverted
|
|
max "65535"
|
|
invert "false"
|
|
|
|
# control uses bespoke driver get/put/info ID 0
|
|
ops."ctl" {
|
|
info "volsw"
|
|
get "257"
|
|
put "257"
|
|
}
|
|
tlv "master_playback_vol_ctrl_tlv"
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# SubGraph for PCM Playback
|
|
#
|
|
# ______________________________________________________
|
|
# | Sub Graph 1 |
|
|
# | [WR_SH] -> [PCM DEC] -> [PCM CONV] -> [VOL]-> [LOG] |---KCONTROL--
|
|
# |______________________________________________________|
|
|
#
|
|
|
|
|
|
|
|
SectionPCMCapabilities."MultiMedia1 Playback" {
|
|
formats "S16_LE"
|
|
rate_min "48000"
|
|
rate_max "48000"
|
|
channels_min "2"
|
|
channels_max "2"
|
|
}
|
|
|
|
SectionPCM."MultiMedia1 Playback" {
|
|
|
|
index "1"
|
|
|
|
# used for binding to the PCM
|
|
id "1"
|
|
|
|
dai."MultiMedia1 Playback" {
|
|
id "1"
|
|
}
|
|
|
|
pcm."playback" {
|
|
capabilities "MultiMedia1 Playback"
|
|
}
|
|
}
|
|
|
|
|
|
SectionVendorTuples."stream.sub_graph1_tuples" {
|
|
tokens "audioreach_tokens"
|
|
tuples."word.u32_data" {
|
|
AR_TKN_U32_SUB_GRAPH_INSTANCE_ID "0x00004001"
|
|
AR_TKN_DAI_INDEX "1"
|
|
AR_TKN_U32_SUB_GRAPH_PERF_MODE "0x2"
|
|
AR_TKN_U32_SUB_GRAPH_DIRECTION "0x2"
|
|
AR_TKN_U32_SUB_GRAPH_SCENARIO_ID "0x1"
|
|
}
|
|
}
|
|
|
|
SectionData."stream.sub_graph1_data" {
|
|
tuples "stream.sub_graph1_tuples"
|
|
}
|
|
|
|
|
|
SectionVendorTuples."stream.container1_tuples" {
|
|
tokens "audioreach_tokens"
|
|
tuples."word.u32_data" {
|
|
AR_TKN_U32_CONAINER_INSTANCE_ID "0x00004001"
|
|
AR_TKN_U32_CONAINER_CAPABILITY_ID "0x2"
|
|
AR_TKN_U32_CONAINER_STACK_SIZE "8192"
|
|
AR_TKN_U32_CONAINER_GRAPH_POS "0x1"
|
|
AR_TKN_U32_CONAINER_PROC_DOMAIN "0x2"
|
|
}
|
|
}
|
|
|
|
SectionData."stream.container1_data" {
|
|
tuples "stream.container1_tuples"
|
|
}
|
|
|
|
|
|
SectionVendorTuples."stream.wrsh_ep1_tuples" {
|
|
tokens "audioreach_tokens"
|
|
tuples."word.u32_data" {
|
|
AR_TKN_U32_MODULE_INSTANCE_ID "0x00006001"
|
|
AR_TKN_U32_MODULE_ID "0x07001000"
|
|
AR_TKN_U32_MODULE_MAX_IP_PORTS "0"
|
|
AR_TKN_U32_MODULE_MAX_OP_PORTS "1"
|
|
AR_TKN_U32_MODULE_IN_PORTS "0"
|
|
AR_TKN_U32_MODULE_OUT_PORTS "0"
|
|
AR_TKN_U32_MODULE_SRC_OP_PORT_ID "0"
|
|
AR_TKN_U32_MODULE_DST_IN_PORT_ID "2"
|
|
}
|
|
}
|
|
|
|
SectionData."stream.wrsh_ep1_data" {
|
|
tuples "stream.wrsh_ep1_tuples"
|
|
}
|
|
|
|
SectionWidget."stream.wrsh_ep1" {
|
|
index "1"
|
|
type "aif_in"
|
|
no_pm "true"
|
|
stream_name "MultiMedia1 Playback"
|
|
event_type "1"
|
|
event_flags "15"
|
|
subseq "10"
|
|
data [
|
|
"stream.sub_graph1_data"
|
|
"stream.container1_data"
|
|
"stream.wrsh_ep1_data"
|
|
]
|
|
}
|
|
|
|
SectionVendorTuples."stream.pcm_decoder1_tuples" {
|
|
tokens "audioreach_tokens"
|
|
|
|
tuples."word.u32_data" {
|
|
AR_TKN_U32_MODULE_INSTANCE_ID "24578"
|
|
AR_TKN_U32_MODULE_ID "0x07001005"
|
|
AR_TKN_U32_MODULE_MAX_IP_PORTS "1"
|
|
AR_TKN_U32_MODULE_MAX_OP_PORTS "1"
|
|
AR_TKN_U32_MODULE_IN_PORTS "2"
|
|
AR_TKN_U32_MODULE_OUT_PORTS "1"
|
|
AR_TKN_U32_MODULE_SRC_OP_PORT_ID "1"
|
|
AR_TKN_U32_MODULE_DST_IN_PORT_ID "2"
|
|
AR_TKN_U32_MODULE_FMT_INTERLEAVE "1"
|
|
}
|
|
}
|
|
|
|
SectionData."stream.pcm_decoder1_data" {
|
|
tuples "stream.pcm_decoder1_tuples"
|
|
}
|
|
|
|
SectionWidget."stream.pcm_decoder1" {
|
|
index "1"
|
|
type "decoder"
|
|
no_pm "true"
|
|
event_type "1"
|
|
event_flags "15"
|
|
subseq "10"
|
|
data [
|
|
"stream.sub_graph1_data"
|
|
"stream.container1_data"
|
|
"stream.pcm_decoder1_data"
|
|
]
|
|
}
|
|
|
|
SectionVendorTuples."stream.pcm_converter1_tuples" {
|
|
tokens "audioreach_tokens"
|
|
|
|
tuples."word.u32_data" {
|
|
AR_TKN_U32_MODULE_INSTANCE_ID "24579"
|
|
AR_TKN_U32_MODULE_ID "0x07001003"
|
|
AR_TKN_U32_MODULE_MAX_IP_PORTS "1"
|
|
AR_TKN_U32_MODULE_MAX_OP_PORTS "1"
|
|
AR_TKN_U32_MODULE_IN_PORTS "2"
|
|
AR_TKN_U32_MODULE_OUT_PORTS "1"
|
|
AR_TKN_U32_MODULE_SRC_OP_PORT_ID "1"
|
|
AR_TKN_U32_MODULE_DST_IN_PORT_ID "2"
|
|
AR_TKN_U32_MODULE_FMT_INTERLEAVE "3"
|
|
}
|
|
}
|
|
|
|
SectionData."stream.pcm_converter1_data" {
|
|
tuples "stream.pcm_converter1_tuples"
|
|
}
|
|
|
|
SectionWidget."stream.pcm_converter1" {
|
|
index "1"
|
|
type "src"
|
|
no_pm "true"
|
|
event_type "1"
|
|
event_flags "15"
|
|
subseq "10"
|
|
data [
|
|
"stream.sub_graph1_data"
|
|
"stream.container1_data"
|
|
"stream.pcm_converter1_data"
|
|
]
|
|
}
|
|
SectionVendorTuples."stream.vol_ctrl1_tuples" {
|
|
tokens "audioreach_tokens"
|
|
|
|
tuples."word.u32_data" {
|
|
AR_TKN_U32_MODULE_INSTANCE_ID "24580"
|
|
AR_TKN_U32_MODULE_ID "0x0700101B"
|
|
AR_TKN_U32_MODULE_MAX_IP_PORTS "1"
|
|
AR_TKN_U32_MODULE_MAX_OP_PORTS "1"
|
|
AR_TKN_U32_MODULE_IN_PORTS "2"
|
|
AR_TKN_U32_MODULE_OUT_PORTS "1"
|
|
AR_TKN_U32_MODULE_SRC_OP_PORT_ID "1"
|
|
AR_TKN_U32_MODULE_DST_IN_PORT_ID "2"
|
|
}
|
|
}
|
|
|
|
SectionData."stream.vol_ctrl1_data" {
|
|
tuples "stream.vol_ctrl1_tuples"
|
|
}
|
|
|
|
SectionWidget."stream.vol_ctrl1" {
|
|
index "1"
|
|
type "pga"
|
|
no_pm "true"
|
|
event_type "1"
|
|
event_flags "15"
|
|
subseq "10"
|
|
data [
|
|
"stream.sub_graph1_data"
|
|
"stream.container1_data"
|
|
"stream.vol_ctrl1_data"
|
|
]
|
|
mixer [
|
|
"Master Playback Volume"
|
|
]
|
|
}
|
|
|
|
SectionVendorTuples."stream.logger1_tuples" {
|
|
tokens "audioreach_tokens"
|
|
|
|
tuples."word.u32_data" {
|
|
AR_TKN_U32_MODULE_INSTANCE_ID "24581"
|
|
AR_TKN_U32_MODULE_ID "0x0700101A"
|
|
AR_TKN_U32_MODULE_MAX_IP_PORTS "1"
|
|
AR_TKN_U32_MODULE_MAX_OP_PORTS "1"
|
|
AR_TKN_U32_MODULE_IN_PORTS "2"
|
|
AR_TKN_U32_MODULE_OUT_PORTS "1"
|
|
AR_TKN_U32_MODULE_SRC_OP_PORT_ID "1"
|
|
AR_TKN_U32_MODULE_DST_IN_PORT_ID "2"
|
|
AR_TKN_U32_MODULE_LOG_CODE "0x000019af"
|
|
AR_TKN_U32_MODULE_LOG_TAP_POINT_ID "1"
|
|
AR_TKN_U32_MODULE_LOG_MODE "0"
|
|
}
|
|
}
|
|
|
|
SectionData."stream.logger1_data" {
|
|
tuples "stream.logger1_tuples"
|
|
}
|
|
|
|
SectionWidget."stream.logger1" {
|
|
index "1"
|
|
type "buffer"
|
|
no_pm "true"
|
|
event_type "1"
|
|
event_flags "15"
|
|
subseq "10"
|
|
data [
|
|
"stream.sub_graph1_data"
|
|
"stream.container1_data"
|
|
"stream.logger1_data"
|
|
]
|
|
}
|
|
|
|
SectionControlMixer."PCM1" {
|
|
reg "-1"
|
|
index "1"
|
|
max "1"
|
|
invert "false"
|
|
|
|
channel."fl" {
|
|
reg "-1"
|
|
max "1"
|
|
}
|
|
|
|
ops."ctl" {
|
|
get "256"
|
|
put "256"
|
|
info "1"
|
|
}
|
|
|
|
data [
|
|
"stream.sub_graph1_data"
|
|
]
|
|
}
|
|
|
|
SectionGraph."stream.1 Graph" {
|
|
index "1"
|
|
lines [
|
|
"stream.pcm_decoder1, , stream.wrsh_ep1"
|
|
"stream.pcm_converter1, , stream.pcm_decoder1"
|
|
"stream.vol_ctrl1, , stream.pcm_converter1"
|
|
"stream.logger1, , stream.vol_ctrl1"
|
|
]
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#
|
|
# SubGraph for Device Backend
|
|
#
|
|
# ______________________
|
|
# | Sub Graph |
|
|
# | [LOG] -> [DEVICE EP] |
|
|
# |______________________|
|
|
|
|
|
|
|
|
|
|
|
|
SectionVendorTuples."device.sub_graph3_tuples" {
|
|
tokens "audioreach_tokens"
|
|
tuples."word.u32_data" {
|
|
AR_TKN_U32_SUB_GRAPH_INSTANCE_ID "0x00004003"
|
|
AR_TKN_DAI_INDEX "105"
|
|
AR_TKN_U32_SUB_GRAPH_PERF_MODE "0x2"
|
|
AR_TKN_U32_SUB_GRAPH_DIRECTION "0x1"
|
|
AR_TKN_U32_SUB_GRAPH_SCENARIO_ID "0x1"
|
|
}
|
|
}
|
|
|
|
SectionData."device.sub_graph3_data" {
|
|
tuples "device.sub_graph3_tuples"
|
|
}
|
|
|
|
SectionVendorTuples."device.container3_tuples" {
|
|
tokens "audioreach_tokens"
|
|
tuples."word.u32_data" {
|
|
AR_TKN_U32_CONAINER_INSTANCE_ID "0x00004003"
|
|
AR_TKN_U32_CONAINER_CAPABILITY_ID "0x3"
|
|
AR_TKN_U32_CONAINER_STACK_SIZE "8192"
|
|
AR_TKN_U32_CONAINER_GRAPH_POS "0x1"
|
|
AR_TKN_U32_CONAINER_PROC_DOMAIN "0x2"
|
|
}
|
|
}
|
|
|
|
SectionData."device.container3_data" {
|
|
tuples "device.container3_tuples"
|
|
}
|
|
|
|
SectionVendorTuples."device.logger3_tuples" {
|
|
tokens "audioreach_tokens"
|
|
|
|
tuples."word.u32_data" {
|
|
AR_TKN_U32_MODULE_INSTANCE_ID "0x00006030"
|
|
AR_TKN_U32_MODULE_ID "0x0700101A"
|
|
AR_TKN_U32_MODULE_MAX_IP_PORTS "1"
|
|
AR_TKN_U32_MODULE_MAX_OP_PORTS "1"
|
|
AR_TKN_U32_MODULE_IN_PORTS "2"
|
|
AR_TKN_U32_MODULE_OUT_PORTS "1"
|
|
AR_TKN_U32_MODULE_SRC_OP_PORT_ID "1"
|
|
AR_TKN_U32_MODULE_DST_IN_PORT_ID "2"
|
|
AR_TKN_U32_MODULE_LOG_CODE "0x000019ab"
|
|
AR_TKN_U32_MODULE_LOG_TAP_POINT_ID "1"
|
|
AR_TKN_U32_MODULE_LOG_MODE "0"
|
|
}
|
|
}
|
|
|
|
SectionData."device.logger3_data" {
|
|
tuples "device.logger3_tuples"
|
|
}
|
|
|
|
SectionWidget."device.logger3" {
|
|
index "3"
|
|
type "buffer"
|
|
no_pm "true"
|
|
event_type "1"
|
|
event_flags "15"
|
|
subseq "10"
|
|
data [
|
|
"device.sub_graph3_data"
|
|
"device.container3_data"
|
|
"device.logger3_data"
|
|
]
|
|
}
|
|
|
|
SectionVendorTuples."device.codec_dma_rx3_tuples" {
|
|
tokens "audioreach_tokens"
|
|
|
|
tuples."word.u32_data" {
|
|
AR_TKN_U32_MODULE_INSTANCE_ID "24625"
|
|
AR_TKN_U32_MODULE_ID "0x07001023"
|
|
AR_TKN_U32_MODULE_MAX_IP_PORTS "1"
|
|
AR_TKN_U32_MODULE_MAX_OP_PORTS "0"
|
|
AR_TKN_U32_MODULE_IN_PORTS "2"
|
|
AR_TKN_U32_MODULE_OUT_PORTS "0"
|
|
AR_TKN_U32_MODULE_SRC_OP_PORT_ID "1"
|
|
AR_TKN_U32_MODULE_DST_IN_PORT_ID "0"
|
|
AR_TKN_U32_MODULE_HW_IF_TYPE "2"
|
|
AR_TKN_U32_MODULE_HW_IF_IDX "1"
|
|
AR_TKN_U32_MODULE_FMT_DATA "1"
|
|
}
|
|
}
|
|
|
|
SectionData."device.codec_dma_rx3_data" {
|
|
tuples "device.codec_dma_rx3_tuples"
|
|
}
|
|
|
|
SectionWidget."WSA_CODEC_DMA_RX_0" {
|
|
index "3"
|
|
type "aif_in"
|
|
stream_name "WSA_CODEC_DMA_RX_0 Playback"
|
|
no_pm "true"
|
|
event_type "1"
|
|
event_flags "15"
|
|
subseq "10"
|
|
data [
|
|
"device.sub_graph3_data"
|
|
"device.container3_data"
|
|
"device.codec_dma_rx3_data"
|
|
]
|
|
}
|
|
|
|
SectionGraph."device.3 WSA_CODEC_DMA_RX_0 Graph" {
|
|
index "3"
|
|
lines [
|
|
"device.logger3, , WSA_CODEC_DMA_RX_0 Audio Mixer"
|
|
"WSA_CODEC_DMA_RX_0, , device.logger3"
|
|
]
|
|
}
|
|
|
|
|
|
|
|
|
|
SectionWidget."WSA_CODEC_DMA_RX_0 Audio Mixer" {
|
|
reg "-1"
|
|
index "3"
|
|
type "mixer"
|
|
|
|
mixer [
|
|
|
|
PCM1
|
|
]
|
|
|
|
data [
|
|
"device.sub_graph3_data"
|
|
]
|
|
}
|
|
|
|
|
|
SectionGraph."WSA_CODEC_DMA_RX_0 Audio Mixer Graph" {
|
|
index "3"
|
|
lines [
|
|
|
|
"WSA_CODEC_DMA_RX_0 Audio Mixer, PCM1, stream.logger1"
|
|
]
|
|
}
|
|
|