OSDN Git Service

ASoC: SOF: add a field to store the current D0 substate of DSP
authorKeyon Jie <yang.jie@linux.intel.com>
Fri, 25 Oct 2019 22:40:57 +0000 (17:40 -0500)
committerMark Brown <broonie@kernel.org>
Mon, 28 Oct 2019 14:39:34 +0000 (14:39 +0000)
Add field d0_substate to struct snd_sof_dev to store the current DSP
D0 sub-state(only meaningful when DSP in D0), which could be D0I0 or
D0I3.

Signed-off-by: Keyon Jie <yang.jie@linux.intel.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20191025224122.7718-2-pierre-louis.bossart@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sof/sof-priv.h

index 2d40de5..481dfe4 100644 (file)
@@ -68,6 +68,12 @@ extern int sof_core_debug;
 
 #define DMA_CHAN_INVALID       0xFFFFFFFF
 
+/* DSP D0ix sub-state */
+enum sof_d0_substate {
+       SOF_DSP_D0I0 = 0,       /* DSP default D0 substate */
+       SOF_DSP_D0I3,           /* DSP D0i3(low power) substate*/
+};
+
 struct snd_sof_dev;
 struct snd_sof_ipc_msg;
 struct snd_sof_ipc;
@@ -387,6 +393,9 @@ struct snd_sof_dev {
         */
        struct snd_soc_component_driver plat_drv;
 
+       /* power states related */
+       enum sof_d0_substate d0_substate;
+
        /* DSP firmware boot */
        wait_queue_head_t boot_wait;
        u32 boot_complete;