xref: /linux/include/uapi/linux/fsl_mc.h (revision d0034a7a4ac7fae708146ac0059b9c47a1543f0d)
18544717cSIoana Ciornei /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
28544717cSIoana Ciornei /*
38544717cSIoana Ciornei  * Management Complex (MC) userspace public interface
48544717cSIoana Ciornei  *
58544717cSIoana Ciornei  * Copyright 2021 NXP
68544717cSIoana Ciornei  *
78544717cSIoana Ciornei  */
88544717cSIoana Ciornei #ifndef _UAPI_FSL_MC_H_
98544717cSIoana Ciornei #define _UAPI_FSL_MC_H_
108544717cSIoana Ciornei 
118544717cSIoana Ciornei #include <linux/types.h>
128544717cSIoana Ciornei 
138544717cSIoana Ciornei #define MC_CMD_NUM_OF_PARAMS	7
148544717cSIoana Ciornei 
158544717cSIoana Ciornei /**
168544717cSIoana Ciornei  * struct fsl_mc_command - Management Complex (MC) command structure
178544717cSIoana Ciornei  * @header: MC command header
188544717cSIoana Ciornei  * @params: MC command parameters
19*2cf1e703SIoana Ciornei  *
20*2cf1e703SIoana Ciornei  * Used by FSL_MC_SEND_MC_COMMAND
218544717cSIoana Ciornei  */
228544717cSIoana Ciornei struct fsl_mc_command {
238544717cSIoana Ciornei 	__le64 header;
248544717cSIoana Ciornei 	__le64 params[MC_CMD_NUM_OF_PARAMS];
258544717cSIoana Ciornei };
268544717cSIoana Ciornei 
27*2cf1e703SIoana Ciornei #define FSL_MC_SEND_CMD_IOCTL_TYPE	'R'
28*2cf1e703SIoana Ciornei #define FSL_MC_SEND_CMD_IOCTL_SEQ	0xE0
29*2cf1e703SIoana Ciornei 
30*2cf1e703SIoana Ciornei #define FSL_MC_SEND_MC_COMMAND \
31*2cf1e703SIoana Ciornei 	_IOWR(FSL_MC_SEND_CMD_IOCTL_TYPE, FSL_MC_SEND_CMD_IOCTL_SEQ, \
32*2cf1e703SIoana Ciornei 	struct fsl_mc_command)
33*2cf1e703SIoana Ciornei 
348544717cSIoana Ciornei #endif /* _UAPI_FSL_MC_H_ */
35