xref: /linux/drivers/gpu/drm/xe/xe_sysctrl_mailbox.h (revision 26ae421f7f49f8a6a32d15b1d21a782b46a1bad5)
1 /* SPDX-License-Identifier: MIT */
2 /*
3  * Copyright © 2026 Intel Corporation
4  */
5 
6 #ifndef _XE_SYSCTRL_MAILBOX_H_
7 #define _XE_SYSCTRL_MAILBOX_H_
8 
9 #include <linux/bitfield.h>
10 #include <linux/types.h>
11 
12 #include "abi/xe_sysctrl_abi.h"
13 
14 struct xe_sysctrl;
15 struct xe_sysctrl_mailbox_command;
16 
17 #define XE_SYSCTRL_APP_HDR_GROUP_ID(hdr) \
18 	FIELD_GET(APP_HDR_GROUP_ID_MASK, (hdr)->data)
19 
20 #define XE_SYSCTRL_APP_HDR_COMMAND(hdr) \
21 	FIELD_GET(APP_HDR_COMMAND_MASK, (hdr)->data)
22 
23 #define XE_SYSCTRL_APP_HDR_VERSION(hdr) \
24 	FIELD_GET(APP_HDR_VERSION_MASK, (hdr)->data)
25 
26 void xe_sysctrl_mailbox_init(struct xe_sysctrl *sc);
27 int xe_sysctrl_send_command(struct xe_sysctrl *sc,
28 			    struct xe_sysctrl_mailbox_command *cmd,
29 			    size_t *rdata_len);
30 
31 #endif
32