xref: /linux/drivers/gpu/drm/xe/compat-i915-headers/intel_pcode.h (revision 527a0f2bdcfe77fce22f006b97e42e4da3137c86)
1 /* SPDX-License-Identifier: MIT */
2 /*
3  * Copyright © 2023 Intel Corporation
4  */
5 
6 #ifndef __INTEL_PCODE_H__
7 #define __INTEL_PCODE_H__
8 
9 #include "intel_uncore.h"
10 #include "xe_pcode.h"
11 
12 static inline int
13 snb_pcode_write_timeout(struct intel_uncore *uncore, u32 mbox, u32 val,
14 			int fast_timeout_us, int slow_timeout_ms)
15 {
16 	return xe_pcode_write_timeout(__compat_uncore_to_tile(uncore), mbox, val,
17 				      slow_timeout_ms ?: 1);
18 }
19 
20 static inline int
21 snb_pcode_write(struct intel_uncore *uncore, u32 mbox, u32 val)
22 {
23 
24 	return xe_pcode_write(__compat_uncore_to_tile(uncore), mbox, val);
25 }
26 
27 static inline int
28 snb_pcode_read(struct intel_uncore *uncore, u32 mbox, u32 *val, u32 *val1)
29 {
30 	return xe_pcode_read(__compat_uncore_to_tile(uncore), mbox, val, val1);
31 }
32 
33 static inline int
34 skl_pcode_request(struct intel_uncore *uncore, u32 mbox,
35 		  u32 request, u32 reply_mask, u32 reply,
36 		  int timeout_base_ms)
37 {
38 	return xe_pcode_request(__compat_uncore_to_tile(uncore), mbox, request, reply_mask, reply,
39 				timeout_base_ms);
40 }
41 
42 #endif /* __INTEL_PCODE_H__ */
43