diff --git a/tools/topology/topology2/cavs-nocodec.conf b/tools/topology/topology2/cavs-nocodec.conf index c017252201ac..a5cd83d06c0b 100644 --- a/tools/topology/topology2/cavs-nocodec.conf +++ b/tools/topology/topology2/cavs-nocodec.conf @@ -916,6 +916,7 @@ Object.PCM.pcm [ name "$SSP0_PCM_NAME" id $SSP0_PCM_ID direction "duplex" + playback_pause_supported "true" Object.Base.fe_dai.1 { name "$SSP0_PCM_NAME" } @@ -981,6 +982,7 @@ IncludeByKey.PASSTHROUGH { name "$SSP2_PCM_NAME" id 2 direction "duplex" + playback_pause_supported "true" Object.Base.fe_dai.1 { name "$SSP2_PCM_NAME" } @@ -1012,6 +1014,7 @@ IncludeByKey.PASSTHROUGH { name "$SSP2_PCM_NAME" id 2 direction "duplex" + playback_pause_supported "true" Object.Base.fe_dai.1 { name "$SSP2_PCM_NAME" } @@ -1374,6 +1377,7 @@ IncludeByKey.SSP1_ENABLED { name "$SSP1_PCM_NAME" id 1 direction "duplex" + playback_pause_supported "true" Object.Base.fe_dai.1 { name "$SSP1_PCM_NAME" } diff --git a/tools/topology/topology2/include/common/pcm.conf b/tools/topology/topology2/include/common/pcm.conf index 1ba79ff852b2..fced626646b8 100644 --- a/tools/topology/topology2/include/common/pcm.conf +++ b/tools/topology/topology2/include/common/pcm.conf @@ -44,6 +44,11 @@ Class.PCM."pcm" { token_ref "stream.bool" } + DefineAttribute."playback_pause_supported" { + # Token reference and type + token_ref "stream.bool" + } + attributes { !constructor [ "name" @@ -60,4 +65,5 @@ Class.PCM."pcm" { # Default values for PCM attributes compress "false" + playback_pause_supported "false" } diff --git a/tools/topology/topology2/include/common/tokens.conf b/tools/topology/topology2/include/common/tokens.conf index d52934128c81..737cb1fac90b 100644 --- a/tools/topology/topology2/include/common/tokens.conf +++ b/tools/topology/topology2/include/common/tokens.conf @@ -129,8 +129,9 @@ Object.Base.VendorToken { "13" { name "stream" - playback_compatible_d0i3 "1200" - capture_compatible_d0i3 "1201" + playback_compatible_d0i3 1200 + capture_compatible_d0i3 1201 + playback_pause_supported 1202 } "14" {