diff --git a/arch/sim/src/sim/posix/sim_alsa.c b/arch/sim/src/sim/posix/sim_alsa.c index 9d54ea353fa..bf6fc06e752 100644 --- a/arch/sim/src/sim/posix/sim_alsa.c +++ b/arch/sim/src/sim/posix/sim_alsa.c @@ -340,6 +340,17 @@ static int sim_audio_getcaps(struct audio_lowerhalf_s *dev, int type, caps->ac_controls.b[0] = AUDIO_SUBFMT_PCM_MP3; caps->ac_controls.b[1] = AUDIO_SUBFMT_END; break; + case AUDIO_FMT_PCM: + if (priv->offload) + { + caps->ac_controls.b[0] = AUDIO_SUBFMT_END; + } + else + { + caps->ac_controls.b[0] = AUDIO_SUBFMT_PCM_S16_LE; + caps->ac_controls.b[1] = AUDIO_SUBFMT_END; + } + break; default: caps->ac_controls.b[0] = AUDIO_SUBFMT_END; break;