On 3/5/2018 21:48, Liam Girdwood wrote:
On Mon, 2018-03-05 at 14:16 +0800, Pan, Xiuli wrote:
* read back function.
*/
+#if 0 /* read back full message */ snd_sof_dsp_mailbox_read(sdev, sdev->dsp_box.offset, &posn, sizeof(posn)); @@ -260,33 +265,56 @@ static void ipc_period_elapsed(struct snd_sof_dev *sdev, u32 msg_id) posn.host_posn, posn.dai_posn, posn.wallclock); spcm = snd_sof_find_spcm_comp(sdev, posn.comp_id, &direction); +#endif
- spcm = snd_sof_find_spcm_comp(sdev, SOF_IPC_MESSAGE_ID(msg_id),
&direction);
why can't this be dynamic, if mbox is supported use it else send an IPC to get the info.
That sounds a good idea. Let's discuss with Liam about this new design.
- Liam
Could we just try to check different memory window to get position info.
No hard coding as this breaks the single kernel binary..... please do runtime checking for stuff like this.
Will refine these cods with dynamic check.
Thanks Xiuli
Liam