Skip to content

Commit fd725eb

Browse files
committed
Revert "ASoC: SOF: ipc4-topology: Always validate the input audio format on fmt init"
This reverts commit 9c9d463. This breaks branched capture topologies alone, let's revert it. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
1 parent 31869e9 commit fd725eb

1 file changed

Lines changed: 13 additions & 7 deletions

File tree

sound/soc/sof/ipc4-topology.c

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1577,6 +1577,7 @@ static int sof_ipc4_init_input_audio_fmt(struct snd_sof_dev *sdev,
15771577
u32 channels;
15781578
u32 rate;
15791579
u32 type;
1580+
bool single_format;
15801581
int sample_valid_bits;
15811582
int sample_type;
15821583
int i = 0;
@@ -1586,6 +1587,10 @@ static int sof_ipc4_init_input_audio_fmt(struct snd_sof_dev *sdev,
15861587
return -EINVAL;
15871588
}
15881589

1590+
single_format = sof_ipc4_is_single_format(sdev, pin_fmts, pin_fmts_size);
1591+
if (single_format)
1592+
goto in_fmt;
1593+
15891594
sample_valid_bits = sof_ipc4_get_valid_bits(sdev, params);
15901595
if (sample_valid_bits < 0)
15911596
return sample_valid_bits;
@@ -1610,15 +1615,16 @@ static int sof_ipc4_init_input_audio_fmt(struct snd_sof_dev *sdev,
16101615
type = sof_ipc4_fmt_cfg_to_type(fmt->fmt_cfg);
16111616
if (params_rate(params) == rate && params_channels(params) == channels &&
16121617
sample_valid_bits == valid_bits && sample_type == type)
1613-
goto in_fmt;
1618+
break;
16141619
}
16151620

1616-
dev_err(sdev->dev,
1617-
"%s: Unsupported audio format: %uHz, %ubit, %u channels, type: %d\n",
1618-
__func__, params_rate(params), sample_valid_bits,
1619-
params_channels(params), sample_type);
1620-
1621-
return -EINVAL;
1621+
if (i == pin_fmts_size) {
1622+
dev_err(sdev->dev,
1623+
"%s: Unsupported audio format: %uHz, %ubit, %u channels, type: %d\n",
1624+
__func__, params_rate(params), sample_valid_bits,
1625+
params_channels(params), sample_type);
1626+
return -EINVAL;
1627+
}
16221628

16231629
in_fmt:
16241630
/* copy input format */

0 commit comments

Comments
 (0)