50 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			C
		
	
	
	
			
		
		
	
	
			50 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			C
		
	
	
	
| /* Copyright 2014 Freescale Semiconductor Inc.
 | |
|  *
 | |
|  * SPDX-License-Identifier:	GPL-2.0+
 | |
|  */
 | |
| #ifndef __FSL_DPMNG_CMD_H
 | |
| #define __FSL_DPMNG_CMD_H
 | |
| 
 | |
| /* Command IDs */
 | |
| #define DPMNG_CMDID_GET_VERSION			0x831
 | |
| #define DPMNG_CMDID_RESET_AIOP			0x832
 | |
| #define DPMNG_CMDID_LOAD_AIOP			0x833
 | |
| #define DPMNG_CMDID_RUN_AIOP			0x834
 | |
| #define DPMNG_CMDID_RESET_MC_PORTAL		0x835
 | |
| 
 | |
| /*                cmd, param, offset, width, type, arg_name */
 | |
| #define DPMNG_RSP_GET_VERSION(cmd, mc_ver_info) \
 | |
| do { \
 | |
| 	MC_RSP_OP(cmd, 0, 0,  32, uint32_t, mc_ver_info->revision); \
 | |
| 	MC_RSP_OP(cmd, 0, 32, 32, uint32_t, mc_ver_info->major); \
 | |
| 	MC_RSP_OP(cmd, 1, 0,  32, uint32_t, mc_ver_info->minor); \
 | |
| } while (0)
 | |
| 
 | |
| /*                cmd, param, offset, width, type, arg_name */
 | |
| #define DPMNG_CMD_RESET_AIOP(cmd, container_id, aiop_tile_id) \
 | |
| do { \
 | |
| 	MC_CMD_OP(cmd, 0, 0,  32, int,      aiop_tile_id); \
 | |
| 	MC_CMD_OP(cmd, 0, 32, 32, int,      container_id); \
 | |
| } while (0)
 | |
| 
 | |
| /*                cmd, param, offset, width, type, arg_name */
 | |
| #define DPMNG_CMD_LOAD_AIOP(cmd, container_id, aiop_tile_id, img_size, \
 | |
| 			    img_iova) \
 | |
| do { \
 | |
| 	MC_CMD_OP(cmd, 0, 0,  32, int,      aiop_tile_id); \
 | |
| 	MC_CMD_OP(cmd, 0, 32, 32, int,      container_id); \
 | |
| 	MC_CMD_OP(cmd, 1, 0,  32, uint32_t, img_size); \
 | |
| 	MC_CMD_OP(cmd, 2, 0,  64, uint64_t, img_iova); \
 | |
| } while (0)
 | |
| 
 | |
| /*                cmd, param, offset, width, type, arg_name */
 | |
| #define DPMNG_CMD_RUN_AIOP(cmd, container_id, aiop_tile_id, cfg) \
 | |
| do { \
 | |
| 	MC_CMD_OP(cmd, 0, 0,  32, int,	    aiop_tile_id); \
 | |
| 	MC_CMD_OP(cmd, 0, 32, 32, int,      container_id); \
 | |
| 	MC_CMD_OP(cmd, 1, 0,  32, uint32_t, cfg->cores_mask); \
 | |
| 	MC_CMD_OP(cmd, 2, 0,  64, uint64_t, cfg->options); \
 | |
| } while (0)
 | |
| 
 | |
| #endif /* __FSL_DPMNG_CMD_H */
 |