-
Notifications
You must be signed in to change notification settings - Fork 140
IPC4: TGL: Add multicore support #3711
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
Dsp converts pcm rate to the one defined by dai. When SRC is used, the pcm runtime rate is different with dai rate and we need to fix it up for BE components. Signed-off-by: Rander Wang <rander.wang@intel.com>
Src module only needs two parameters : base module config and sink rate. This PR add prepare and setup for src widgets. Signed-off-by: Rander Wang <rander.wang@intel.com>
Currently the domain bit in ipc msg for module initialization is set to lp mode for pipeline. This is not correct since it is for module domain type: ll domain or dp domain which are for scheduler in fw. The domain bit depends on dp domain setting. Signed-off-by: Rander Wang <rander.wang@intel.com>
Add support for parsing core token. Signed-off-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Add core_get/core_put to support core power up/down for IPC4. Signed-off-by: Fred Oh <fred.oh@linux.intel.com>
| msg.data_ptr = &dx_info; | ||
| msg.data_size = sizeof(dx_info); | ||
|
|
||
| /* now send the iPC */ |
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.
IPC
| msg.data_ptr = &dx_info; | ||
| msg.data_size = sizeof(dx_info); | ||
|
|
||
| /* now send the iPC */ |
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.
IPC
sound/soc/sof/ipc4-topology.h
Outdated
| struct sof_ipc4_available_audio_format available_fmt; | ||
| struct sof_ipc4_msg msg; | ||
| }; | ||
|
|
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.
spurious change.
| */ | ||
| struct sof_ipc4_dx_info { | ||
| u32 core_mask; | ||
| u32 dx_mask; |
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 is very confusing, please describe more.
is core_mask the active cores, the managed cores? Why do we need a new definition?
Likewise Dx means 1 for D0 and 0 for D3? What about D0ix for core0?
|
Will merge this to #3679 |
Currently this is based on Rander's SRC PR, #3692. Last two are additional changes for IPC4 TGL multicore support.
The topology I tested is also based on Rander's PR, thesofproject/sof#5913. And I set core_id 1 on SRC module. Topology graph is like this.