diff options
author | Peter Ujfalusi <peter.ujfalusi@linux.intel.com> | 2022-06-10 11:35:47 +0300 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2022-06-10 13:31:41 +0100 |
commit | bd3df9ff25b32b66630c283bb2e065e8bb822e72 (patch) | |
tree | 5c8641c29719cdb9d2038a99a8684fb11cf69eb1 /include/sound/sof | |
parent | 0a047dafefafbccc931fab2d187ce75c302088d5 (diff) | |
download | linux-bd3df9ff25b32b66630c283bb2e065e8bb822e72.tar.gz |
ASoC: SOF: ipc4: Add set_core_state pm_ops implementation
IPC4 uses the SET_DX message to enable/disable cores managed by the DSP.
The dx_state.core_mask indicates which core is going to change state,
the dx_state.dx_mask is to power on (1) or off (0) the core.
In the dx_mask only those bits (cores) checked which bit is set in the
core_mask, other bits (cores) ignored.
Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Reviewed-by: Bard Liao <yung-chuan.liao@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20220610083549.16773-5-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'include/sound/sof')
-rw-r--r-- | include/sound/sof/ipc4/header.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/include/sound/sof/ipc4/header.h b/include/sound/sof/ipc4/header.h index b8b8e5b5e3e1..a795deacc2ea 100644 --- a/include/sound/sof/ipc4/header.h +++ b/include/sound/sof/ipc4/header.h @@ -385,6 +385,14 @@ struct sof_ipc4_fw_version { uint16_t build; } __packed; +/* Payload data for SOF_IPC4_MOD_SET_DX */ +struct sof_ipc4_dx_state_info { + /* core(s) to apply the change */ + uint32_t core_mask; + /* core state: 0: put core_id to D3; 1: put core_id to D0 */ + uint32_t dx_mask; +} __packed __aligned(4); + /* Reply messages */ /* |