-
Notifications
You must be signed in to change notification settings - Fork 140
ASoC: SOF: ipc4-topology: set dmic dai index from copier #4114
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
|
needs to be synced with thesofproject/sof#6877. for windows compatibility |
|
the reason for this: thesofproject/sof#6872 |
|
SOFCI TEST |
|
@libinyang can you test this and the related fw revert with your wov pipeline? you are probably currently the only one with that setup and this will affect you, thanks! |
sound/soc/sof/ipc4-topology.c
Outdated
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.
Do you have a fixes tag with SHA?
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.
ok let me add
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.
@ujfalusi added fixes tag
a8354a9 to
2b9a617
Compare
abonislawski
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.
This is good but if you prefer you can stay with SOF_IPC4_NODE_INDEX_INTEL_DMIC, just bit calculations must be correct.
typedef union _DmicDmaNodeIdVindex
{
//! Raw 8-bit value of virtual index
uint8_t b;
//! Bit fields
struct /*Bits*/
{
//! Index of the input queue within the DMIC instance.
uint8_t dmic_interface_queue_id : 3;
//! Index of the time slot group within the queue.
uint8_t time_slot_group_index : 2;
//! Index of DMIC instance.
uint8_t instance : 3;
} f; //!< Bits
} DmicDmaNodeIdVindex;
we need to set dmic_interface_queue_id instead of instance in current code
time_slot_group_index and instance are always 0
Dmic dai index was set incorrectly to bits 5-7, when it is actually using just the lowest 3. Fix the macro for setting the bits. Fixes: aa84ffb ("ASoC: SOF: ipc4-topology: Add support for SSP/DMIC DAI's") Signed-off-by: Jaska Uimonen <jaska.uimonen@linux.intel.com>
2b9a617 to
c805e78
Compare
|
updated v2. Perhaps we do it as @abonislawski suggested. Never know if we need to use the other bits in the future, and the change is even simpler/smaller. |
Dmic dai index was set incorrectly to bits 5-7, when it is actually using just all lowest 8 bits. As the dmic index can only be 0 or 1, just OR copier dai index directly to node_id and remove the macro for fiddling the dmic index.
Signed-off-by: Jaska Uimonen jaska.uimonen@linux.intel.com