xref: /linux/include/uapi/linux/fsl_mc.h (revision d0034a7a4ac7fae708146ac0059b9c47a1543f0d)
1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 /*
3  * Management Complex (MC) userspace public interface
4  *
5  * Copyright 2021 NXP
6  *
7  */
8 #ifndef _UAPI_FSL_MC_H_
9 #define _UAPI_FSL_MC_H_
10 
11 #include <linux/types.h>
12 
13 #define MC_CMD_NUM_OF_PARAMS	7
14 
15 /**
16  * struct fsl_mc_command - Management Complex (MC) command structure
17  * @header: MC command header
18  * @params: MC command parameters
19  *
20  * Used by FSL_MC_SEND_MC_COMMAND
21  */
22 struct fsl_mc_command {
23 	__le64 header;
24 	__le64 params[MC_CMD_NUM_OF_PARAMS];
25 };
26 
27 #define FSL_MC_SEND_CMD_IOCTL_TYPE	'R'
28 #define FSL_MC_SEND_CMD_IOCTL_SEQ	0xE0
29 
30 #define FSL_MC_SEND_MC_COMMAND \
31 	_IOWR(FSL_MC_SEND_CMD_IOCTL_TYPE, FSL_MC_SEND_CMD_IOCTL_SEQ, \
32 	struct fsl_mc_command)
33 
34 #endif /* _UAPI_FSL_MC_H_ */
35