Skip to content

[RFC] Topology change for multi dai - #1804

Closed
bardliao wants to merge 3 commits into
thesofproject:topic/sof-devfrom
bardliao:topology-multi-dai
Closed

bardliao wants to merge 3 commits into
thesofproject:topic/sof-devfrom
bardliao:topology-multi-dai

Conversation

@bardliao

Copy link
Copy Markdown
Collaborator

@plbossart @slawblauciak This is a RFC to explain my idea how multi dai work on kernel side. I verified that sdw_params_stream() will be invoked probably. The only issue I met is that sdw stream didn't support multi cpu yet. ( I haven't tried #1802 yet )

Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Use type and index to map subdais and tied them together on FW side.

Signed-off-by: Bard Liao <yung-chuan.liao@linux.intel.com>
@bardliao

Copy link
Copy Markdown
Collaborator Author

@plbossart I just tested it with #1802. Only rt1308-1 is enabled. I will check what's going on.

@bardliao

Copy link
Copy Markdown
Collaborator Author

@plbossart I just tested it with #1802. Only rt1308-1 is enabled. I will check what's going on.

Sorry, I forget to update my machine driver. After updating my machine driver, both ALH0x102 and ALH0x202 are enabled. But I will see inconsistent state error on sdw_eneble_stream() with or without #1802. I will look into it. We may still miss something on kernel side.

Comment thread include/sound/sof/dai.h
SOF_DAI_MULTIDAI = 0xFFFF /**< config with multiple elements of the same dai type */
};

struct sof_ipc_dai_multi_params {

@slawblauciak slawblauciak Feb 19, 2020 •

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Needs a stream map. Also, DAI configurations for the children, unless those are supposed to be passes separately.

@bardliao

Copy link
Copy Markdown
Collaborator Author

Now I can play with multi cpu without error with some hacks. My test branch is https://github.com/bardliao/linux/commits/multi-dai-test

dapm_on.txt is the list of dapm widgets which state is On. We can see that two rt1308 amplifiers are on and ALH0x102.OUT is on. I can hear left channel, but not right channel. @slawblauciak Is it possible to copy the data from BUF3 to ALH0x202.OUT? ie. Copy the data from sdw link 1 to sdw link 2.
I tried connecting ALH0x202 to the same PCM as ALH0x102 on topology. But I met DSP Panic if I do so.
After today's experiment, I think we may not need multi dai on FW side. I believe that I can get the same result without multi dai.

@ranj063

ranj063 commented Feb 20, 2020

Copy link
Copy Markdown
Collaborator

@bardliao the PR looks fine. What topology file did you use for your test?

@plbossart

Copy link
Copy Markdown
Member

@bardliao I think the discussion for today is that we will go with the multi-cpu DAI, add a demux and check later if we need further changes for pause_push/pause_release cases.
In short we don't need the multi-dai changes for now, so you probably want to close this PR?

@bardliao

Copy link
Copy Markdown
Collaborator Author

Yes, we don't need multi dai :)

@bardliao bardliao closed this Feb 21, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants