Uh oh!
There was an error while loading. Please reload this page.
selector: convert selector module to use base config extension - #7058
Conversation
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
lgirdwood
commented
Feb 13, 2023
@ujfalusi good now ? |
aiChaoSONG
commented
Feb 14, 2023
Let's hold on merge until Libin help to verify the patch, the rimage patch is needed for the verification: thesofproject/rimage#134 |
libinyang
commented
Feb 14, 2023
After enabling the base config extension, WoV doesn't work. But it is not this PR's issue. Selector is initialized successfully after enabling base config extension. |
aiChaoSONG
commented
Feb 16, 2023
I am able to test wov feature with this PR + thesofproject/linux#4185 + thesofproject/rimage#135 + #7106 without any hack. |
ujfalusi
left a comment
There was a problem hiding this comment.
@aiChaoSONG, looks good to my eyes, thank you.
kv2019i
left a comment
There was a problem hiding this comment.
Looks good, no need to update for the whitespace issue if tests pass and other reviews are ok.
Uh oh!
There was an error while loading. Please reload this page.
ranj063
commented
Feb 17, 2023
@aiChaoSONG the internal CI tests are failing. Can you please check? |
aiChaoSONG
commented
Feb 17, 2023
@ranj063 Looks like the quickbuild CI issue, let me retrigger |
aiChaoSONG
commented
Feb 17, 2023
SOFCI TEST |
aiChaoSONG
commented
Feb 17, 2023
@wszypelt Internal CI trigger Python IPC4 smoke test failed, could you please help to take a look. |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
aiChaoSONG
commented
Feb 18, 2023
Update: rebased on the latest main |
kv2019i
commented
Feb 20, 2023
test_003_01_kd_topology_host_gw test is failing. @aiChaoSONG@wszypelt is this related to PR or unrelated failure? |
aiChaoSONG
commented
Feb 20, 2023
@kv2019i@wszypelt selector module is use in the wov topology, this patch changed the payload for selector, I am afraid the test case needs to be modified accordingly. |
wszypelt
commented
Feb 21, 2023
@aiChaoSONG@kv2019i I'll take a look at it, but recently the KD tests have been changed to meet the new requirements |
lgirdwood
commented
Feb 21, 2023
SOFCI TEST |
lgirdwood
commented
Feb 21, 2023
@aiChaoSONG pls check internal CI if failure persists. |
lgirdwood
commented
Feb 22, 2023
@aiChaoSONG ok, failed again, can you check internal CI. |
@wszypelt I have changed the payload for selector in this patch, but quickbuild python tests still construct selector payload in the old way, so I think we need to modify the test case accordingly. Could you or someone please help to do this? Below is the payload format for set_large_config: |
pblaszko
left a comment
There was a problem hiding this comment.
This change is breaking compatibility to present IPC4 protocol.
Current MicSelect InitInstance structure is:
{
ipc4_base_module_cfg base_cfg;
ipc4_audio_format out_format;
}
aiChaoSONG
commented
Mar 1, 2023
@ujfalusi@ranj063@pblaszko After synced with Poland team, the payload base + output format still need to be supported, because Windows use it, and if we convert it directly to use base + base_ext, we will break the compatibility with windows. Howerver, if we don't do the conversion, the selector can not work on linux side, so does wov feature. |
lgirdwood
commented
Mar 2, 2023
@pblaszko@aiChaoSONG are you guys aligned now - do we need to make further changes ? |
aiChaoSONG
commented
Mar 3, 2023
I made a patch for the selector to support both base_config+output_format and base_config+base_config_extension initialization payload, aiChaoSONG@2e123b5, I'd like to see if Peter and Ranjani are good with this. |
lgirdwood
commented
Mar 3, 2023
Ok, we also need to see @pblaszko approval too. |
pblaszko
commented
Mar 3, 2023
I'm OK with this approach. I wait for bringing changes to this PR. |
This patch extend the selector module to use base config extension for module init, which ensures only base_cfg and base_cfg_ext is received in module init on linux side and align the init blob format with other modules. However, on Windows side, the payload base config with output format style payload is still used, this payload should be supported before Windows doing the payload format migration. Signed-off-by: Chao Song <chao.song@linux.intel.com>
This patch converts the selector module to use base config extension for module init, which ensures only base_cfg and base_cfg_ext is received in module init, and align the init blob format with other modules.
Signed-off-by: Chao Song chao.song@linux.intel.com
The selector module is using the module adapter interface, and it has one input and one output, the input format(base_cfg) is already handled with module adapter, we only need to handle the output format.
@ranj063 I suppose that the nb_input_pins/nb_output_pins in base_cfg_ext could be zero, this help us to save some memory. If it is not the case, please let me know, I will also add the input pin format in comp_data (through the input format will never be used in the fw).