57 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			57 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /* SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) */
 | |
| /*
 | |
|  * This file is provided under a dual BSD/GPLv2 license.  When using or
 | |
|  * redistributing this file, you may do so under either license.
 | |
|  *
 | |
|  * Copyright(c) 2018 Intel Corporation
 | |
|  */
 | |
| 
 | |
| #ifndef __INCLUDE_SOUND_SOF_PM_H__
 | |
| #define __INCLUDE_SOUND_SOF_PM_H__
 | |
| 
 | |
| #include <sound/sof/header.h>
 | |
| 
 | |
| /*
 | |
|  * PM
 | |
|  */
 | |
| 
 | |
| /* PM context element */
 | |
| struct sof_ipc_pm_ctx_elem {
 | |
| 	struct sof_ipc_hdr hdr;
 | |
| 	uint32_t type;
 | |
| 	uint32_t size;
 | |
| 	uint64_t addr;
 | |
| }  __packed;
 | |
| 
 | |
| /*
 | |
|  * PM context - SOF_IPC_PM_CTX_SAVE, SOF_IPC_PM_CTX_RESTORE,
 | |
|  * SOF_IPC_PM_CTX_SIZE
 | |
|  */
 | |
| struct sof_ipc_pm_ctx {
 | |
| 	struct sof_ipc_cmd_hdr hdr;
 | |
| 	struct sof_ipc_host_buffer buffer;
 | |
| 	uint32_t num_elems;
 | |
| 	uint32_t size;
 | |
| 
 | |
| 	/* reserved for future use */
 | |
| 	uint32_t reserved[8];
 | |
| 
 | |
| 	struct sof_ipc_pm_ctx_elem elems[];
 | |
| } __packed;
 | |
| 
 | |
| /* enable or disable cores - SOF_IPC_PM_CORE_ENABLE */
 | |
| struct sof_ipc_pm_core_config {
 | |
| 	struct sof_ipc_cmd_hdr hdr;
 | |
| 	uint32_t enable_mask;
 | |
| } __packed;
 | |
| 
 | |
| struct sof_ipc_pm_gate {
 | |
| 	struct sof_ipc_cmd_hdr hdr;
 | |
| 	uint32_t flags;	/* platform specific */
 | |
| 
 | |
| 	/* reserved for future use */
 | |
| 	uint32_t reserved[5];
 | |
| } __packed;
 | |
| 
 | |
| #endif
 |