Skip to content

[BUG] Peak Meter reports wrong value in case of 24/32 and 16/16 bit formats #7659

@iganakov

Description

@iganakov

Describe the bug
In current implementation Peak Meter reports wrong volume. For example:
In 24/32 format case max volume reported is 0x007FFFFF instead of 0x7FFFFF00
In 16/16 format case max volume reported is 0x00007FFF instead of 0x7FFF7FFF

Reported value in Peak Meter register is much lower then expected

To Reproduce
Use firmware-automated-testing.fat framework and run test below:
test_10_gain_peak_vol_api.TestGainPeakVolApi.test_01_10_peakvol_read_volume

Reproduction Rate
100%

Expected behavior
In case of 24/32 and 16/16 bit formats Peak Meter register value has to be normalized
to represent volume in range 0x00000000 - 0x7FFFFFFF.

Impact
Showstopper

Environment
SOF: main
Platform: MTL

Screenshots or console output
Below screenshots are from the test output mentioned above

max_volume_16_16

max_volume_24_32

Metadata

Metadata

Assignees

Labels

MTLApplies to Meteor Lake platformP2Critical bugs or normal featuresbugSomething isn't working as expected

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions