Skip to content

Commit

Permalink
topology2: sdw-amp-generic: Add 6 and 8 channel feedback
Browse files Browse the repository at this point in the history
Add support for 6 channel and 8 channel amp feedback.

The host-copier defaults provide 2 channel stereo and 4 channel 3.1.
Use the value of AMP_FEEDBACK_CH to set special case input and output
formats for 6 channels and 8 channels.

The alh-copier also needs special cases for 6 and 8 channels.

Signed-off-by: Richard Fitzgerald <rf@opensource.cirrus.com>
  • Loading branch information
rfvirgil committed Oct 29, 2024
1 parent d9c5d19 commit 4444f31
Showing 1 changed file with 91 additions and 0 deletions.
91 changes: 91 additions & 0 deletions tools/topology/topology2/platform/intel/sdw-amp-generic.conf
Original file line number Diff line number Diff line change
Expand Up @@ -371,6 +371,81 @@ IncludeByKey.SDW_AMP_FEEDBACK {
Object.Widget.host-copier.1 {
stream_name "amp feedback"
pcm_id 3

IncludeByKey.AMP_FEEDBACK_CH {
"6" {
num_input_audio_formats 1
num_output_audio_formats 3
Object.Base.input_audio_format [
{
in_channels 6
in_bit_depth 32
in_valid_bit_depth 32
in_ch_cfg $CHANNEL_CONFIG_5_POINT_1
in_ch_map $CHANNEL_MAP_5_POINT_1
}
]
Object.Base.output_audio_format [
{
out_channels 6
out_bit_depth 32
out_valid_bit_depth 24
out_ch_cfg $CHANNEL_CONFIG_5_POINT_1
out_ch_map $CHANNEL_MAP_5_POINT_1
}
{
out_channels 6
out_bit_depth 32
out_valid_bit_depth 32
out_ch_cfg $CHANNEL_CONFIG_5_POINT_1
out_ch_map $CHANNEL_MAP_5_POINT_1
}
{
out_channels 6
out_bit_depth 16
out_valid_bit_depth 16
out_ch_cfg $CHANNEL_CONFIG_5_POINT_1
out_ch_map $CHANNEL_MAP_5_POINT_1
}
]
}
"8" {
num_input_audio_formats 1
num_output_audio_formats 3
Object.Base.input_audio_format [
{
in_channels 8
in_bit_depth 32
in_valid_bit_depth 32
in_ch_cfg $CHANNEL_CONFIG_7_POINT_1
in_ch_map $CHANNEL_MAP_7_POINT_1
}
]
Object.Base.output_audio_format [
{
out_channels 8
out_bit_depth 32
out_valid_bit_depth 24
out_ch_cfg $CHANNEL_CONFIG_7_POINT_1
out_ch_map $CHANNEL_MAP_7_POINT_1
}
{
out_channels 8
out_bit_depth 32
out_valid_bit_depth 32
out_ch_cfg $CHANNEL_CONFIG_7_POINT_1
out_ch_map $CHANNEL_MAP_7_POINT_1
}
{
out_channels 8
out_bit_depth 16
out_valid_bit_depth 16
out_ch_cfg $CHANNEL_CONFIG_7_POINT_1
out_ch_map $CHANNEL_MAP_7_POINT_1
}
]
}
}
}
}
]
Expand Down Expand Up @@ -403,6 +478,14 @@ IncludeByKey.SDW_AMP_FEEDBACK {
in_ch_cfg $CHANNEL_CONFIG_3_POINT_1
in_ch_map $CHANNEL_MAP_3_POINT_1
}
"6" {
in_ch_cfg $CHANNEL_CONFIG_5_POINT_1
in_ch_map $CHANNEL_MAP_5_POINT_1
}
"8" {
in_ch_cfg $CHANNEL_CONFIG_7_POINT_1
in_ch_map $CHANNEL_MAP_7_POINT_1
}
}

in_sample_type $SAMPLE_TYPE_MSB_INTEGER
Expand All @@ -424,6 +507,14 @@ IncludeByKey.SDW_AMP_FEEDBACK {
out_ch_cfg $CHANNEL_CONFIG_3_POINT_1
out_ch_map $CHANNEL_MAP_3_POINT_1
}
"6" {
out_ch_cfg $CHANNEL_CONFIG_5_POINT_1
out_ch_map $CHANNEL_MAP_5_POINT_1
}
"8" {
out_ch_cfg $CHANNEL_CONFIG_7_POINT_1
out_ch_map $CHANNEL_MAP_7_POINT_1
}
}
}
]
Expand Down

0 comments on commit 4444f31

Please sign in to comment.