forked from torvalds/linux
-
Notifications
You must be signed in to change notification settings - Fork 140
Closed
Labels
MTLApplies to Meteor Lake platform.Applies to Meteor Lake platform.P2Critical bugs or normal featuresCritical bugs or normal features
Description
IPC4 interface allows to specify two variants of 24bit sample encoding, SOF_IPC4_MSB_INTEGER and SOF_IPC4_LSB_INTEGER.
Currently driver does not set this field explicitly, so it is set as 0 (MSB_INTEGER). This is however not correct as
- valid_bits=24, bit_depth=32, MSB_INTEGER -> SNDRV_PCM_FMTBIT_S32_LE (msbits=24)
- valid_bits=24 ,bit_depth=32, LSB_INTEGER -> SNDRV_PCM_FMTBIT_S24_LE
For reference, the third variant in ALSA for 24bti sampoles - valid_bits=24, bit_depth=24, SNDRV_PCM_FMTBIT_S24_3LE
The documentation is also wrong in kernel header.h
This has not been noticed as currnet SOF FW for IPC4 behaves as SOF IPC3 used to behave (like LSB_INTEGER=1), but this needs to be fixed.
Metadata
Metadata
Assignees
Labels
MTLApplies to Meteor Lake platform.Applies to Meteor Lake platform.P2Critical bugs or normal featuresCritical bugs or normal features