1/* SPDX-License-Identifier: MIT */
2/*
3 * Copyright �� 2014-2018 Intel Corporation
4 */
5
6#ifndef __INTEL_WORKAROUNDS_TYPES_H__
7#define __INTEL_WORKAROUNDS_TYPES_H__
8
9#include <linux/types.h>
10
11#include "i915_reg_defs.h"
12
13struct intel_gt;
14
15struct i915_wa {
16	union {
17		i915_reg_t	reg;
18		i915_mcr_reg_t	mcr_reg;
19	};
20	u32		clr;
21	u32		set;
22	u32		read;
23
24	u32		masked_reg:1;
25	u32		is_mcr:1;
26};
27
28struct i915_wa_list {
29	struct intel_gt	*gt;
30	const char	*name;
31	const char	*engine_name;
32	struct i915_wa	*list;
33	unsigned int	count;
34	unsigned int	wa_count;
35};
36
37#endif /* __INTEL_WORKAROUNDS_TYPES_H__ */
38