ASoC: SOF: ipc: introduce no_stream_position in sof_ipc_stream_params struct
authorMarcin Rajwa <marcin.rajwa@linux.intel.com>
Fri, 27 Sep 2019 20:05:33 +0000 (15:05 -0500)
committerMark Brown <broonie@kernel.org>
Tue, 1 Oct 2019 17:35:09 +0000 (18:35 +0100)
The host period bytes value needs to be passed to firmware.
However current implementation uses this field for different
purpose - to indicate whether FW should send stream position
to the host. Therefore this patch introduces another field
"no_stream_position", a boolean value aimed to store information
about position tracking. This way host_period_bytes preserves its
original value.

Signed-off-by: Marcin Rajwa <marcin.rajwa@linux.intel.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20190927200538.660-9-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
include/sound/sof/stream.h

index 0b71b38..7facefb 100644 (file)
@@ -83,10 +83,10 @@ struct sof_ipc_stream_params {
        uint16_t sample_valid_bytes;
        uint16_t sample_container_bytes;
 
-       /* for notifying host period has completed - 0 means no period IRQ */
        uint32_t host_period_bytes;
+       uint16_t no_stream_position; /**< 1 means don't send stream position */
 
-       uint32_t reserved[2];
+       uint16_t reserved[3];
        uint16_t chmap[SOF_IPC_MAX_CHANNELS];   /**< channel map - SOF_CHMAP_ */
 } __packed;