-
Notifications
You must be signed in to change notification settings - Fork 349
mic_privacy: initial implementation #9788
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
Conversation
| return mic_privacy_api->get_dma_data_zeroing_link_select(); | ||
| } | ||
| //hardcoded for FW_MANAGED | ||
| return 0xFFFFFFFF; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
~0
lgirdwood
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@mbukowsk can you confirm a high level overview of how it works when FW managed. i.e. I assume FW will send an IPC to SW when the mute is enabled/disabled ? What about Mic state at FW boot ?
| #include <ipc4/base-config.h> | ||
| #include "../audio/copier/copier_gain.h" | ||
|
|
||
| #define ADSP_RTC_FREQUENCY 32768 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should be in Zephyr as its HW specific.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No bugs from me (the others already found the serious stuff), but couple of suggestions more.
70c6211 to
37336ba
Compare
|
@mbukowsk can you check CI, several failures. Thanks ! |
ujfalusi
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@mbukowsk, the privacy_capabilities is configured to the wrong struct, that is going to case the host quite a bit of issues as it will not find it in hw_config and there will be two entries with the same ID in fw_config.
@ujfalusi ok that's a blocker for kernel. Can you reply with what this should look like for kernel so @mbukowsk can copy. |
No, this is a blocker for this PR. The firmware places the IPC4_PRIVACY_CAPS_HW_CFG (as is a hardware configuration tuple with ID 11) into the FW_CFG (as is firmware configuration). The ID 11 is IPC4_MAX_ASTATE_COUNT_FW_CFG in firmware config. These are different configurations, one is queried with SOF_IPC4_FW_PARAM_FW_CONFIG (basefw param 6), the other is SOF_IPC4_FW_PARAM_HW_CONFIG_GET (basefw param 7). The IPC4_PRIVACY_CAPS_HW_CFG must be placed to the hardware config data in The corresponding kernel patch is thesofproject/linux@7f00cf9 |
37f0e45 to
764f2d8
Compare
764f2d8 to
2e166ee
Compare
|
@abonislawski, we still have the crash on dmic start.. |
524af57 to
abe0df8
Compare
|
SOFCI TEST |
abe0df8 to
799a0a1
Compare
|
I've made this DNM until @abonislawski is ready with Zephyr patches merged. |
3843767 to
52c9e0d
Compare
|
@abonislawski Zephyr PRs now merged, do you want to update to this PR? |
52c9e0d to
6a1fefa
Compare
Change type of arguments for gain params setting functions. DAI data struct is replaced by gain_params. Components other than DAI can also use copier gain feature (eg. microphone privacy) Signed-off-by: Michal Bukowski <michal.bukowski@intel.com>
Audio privacy feature allows end user to directly control if user space applications receive actual data from input devices (microphones). The control is bypassing application level settings or operating system controls (like audio endpoint volume). Signed-off-by: Michal Bukowski <michal.bukowski@intel.com>
Added empty implementation which always returns success Signed-off-by: Michal Bukowski <michal.bukowski@intel.com>
…ANGE SW sends this IPC when microphone privacy state is changed for HW_MANAGED mode and SNDW interface. Signed-off-by: Michal Bukowski <michal.bukowski@intel.com>
6a1fefa to
d3d665a
Compare
Audio privacy feature allows end user to directly
control if user space applications receive actual
data from input devices (microphones). The control
is bypassing application level settings or operating
system controls (like audio endpoint volume).