-
Notifications
You must be signed in to change notification settings - Fork 349
Support DMIC mute LED and volume mute function on IPC4 firmware/topology #8740
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
0a1b426
662f600
5373ce7
7c73b9a
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -152,6 +152,41 @@ Class.Widget."gain" { | |
| } | ||
| } | ||
| } | ||
|
|
||
| # mute switch control | ||
| mixer."2" { | ||
kv2019i marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| Object.Base.channel.1 { | ||
| name "flw" | ||
| reg 2 | ||
| shift 0 | ||
| } | ||
| Object.Base.channel.2 { | ||
| name "fl" | ||
| reg 2 | ||
| shift 1 | ||
| } | ||
| Object.Base.channel.3 { | ||
| name "fr" | ||
| reg 2 | ||
| shift 2 | ||
| } | ||
| Object.Base.channel.4 { | ||
| name "frw" | ||
| reg 2 | ||
| shift 3 | ||
| } | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I also have no understanding of what this is. Are you trying to enable a per-channel mute? IIRC the mute button and the LED applies to all channels, no?
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. It's from the SWITCH_CHANNEL_MAP defined in tools/topology/topology1/platform/intel/intel-generic-dmic-m4 but I believe SOF Linux driver do not use the reg/shift values to control the switch. You could also find same definitions in tools/topology/topology2/include/components/volume.conf but I'm told that IPC4 does not use this conf file. I guess the writer just translate the definitions from topology1 to topology2. In IPC3, mute is per channel but in UCM it should applies to all channels. |
||
|
|
||
| Object.Base.ops.1 { | ||
| name "ctl" | ||
| info "volsw" | ||
| ## get = 259 binds the mixer control to switch get/put handlers | ||
| get 259 | ||
| put 259 | ||
| } | ||
|
|
||
| #max 1 indicates switch type control | ||
| max 1 | ||
| } | ||
| } | ||
|
|
||
| # Default attribute values for gain widget | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -140,7 +140,13 @@ IncludeByKey.PASSTHROUGH { | |
| } | ||
| ] | ||
| Object.Control.mixer.1 { | ||
| name '$DMIC0_PCM_NAME Capture Volume' | ||
| name 'Dmic0 Capture Volume' | ||
|
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. So this is for sure correct for the hda-generic case and the SDW tplgs we have shipped in SOF2.8 did not have dmic so that is good as well. So this leaves the Chrome sof-mtl-max98357a-rt5682*tplg .that have DMICs and are using this definition. FYI @yongzhi1 @jairaj-arava , this will change the ALSA mixer control name for dmic volume control. This aligns the change to existing UCM files in https://github.com/alsa-project/alsa-ucm-conf/blob/master/ucm2/Intel/sof-hda-dsp/HiFi.conf |
||
| } | ||
| Object.Control.mixer.2 { | ||
| name 'Dmic0 Capture Switch' | ||
|
|
||
| mute_led_use 1 | ||
| mute_led_direction 1 | ||
| } | ||
plbossart marked this conversation as resolved.
Show resolved
Hide resolved
|
||
| } | ||
|
|
||
|
|
||
Uh oh!
There was an error while loading. Please reload this page.