xref: /aosp_15_r20/external/coreboot/src/soc/intel/common/block/include/intelblocks/me_12.h (revision b9411a12aaaa7e1e6a6fb7c5e057f44ee179a49c)
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 
3 #ifndef _SOC_INTEL_COMMON_ME_SPEC_12_H_
4 #define _SOC_INTEL_COMMON_ME_SPEC_12_H_
5 
6 /* ME Host Firmware Status register 1 */
7 union me_hfsts1 {
8 	uint32_t data;
9 	struct {
10 		uint32_t working_state		: 4;
11 		uint32_t mfg_mode		: 1;
12 		uint32_t fpt_bad		: 1;
13 		uint32_t operation_state	: 3;
14 		uint32_t fw_init_complete	: 1;
15 		uint32_t ft_bup_ld_flr		: 1;
16 		uint32_t update_in_progress	: 1;
17 		uint32_t error_code		: 4;
18 		uint32_t operation_mode		: 4;
19 		uint32_t reserved_0		: 4;
20 		uint32_t boot_options_present	: 1;
21 		uint32_t reserved_1		: 6;
22 		uint32_t d0i3_support_valid	: 1;
23 	} __packed fields;
24 };
25 
26 /* Host Firmware Status Register 2 */
27 union me_hfsts2 {
28 	uint32_t data;
29 	struct {
30 		uint32_t reserved_0		: 4;
31 		uint32_t cpu_replaced		: 1;
32 		uint32_t reserved_1		: 3;
33 		uint32_t cpu_replaced_valid	: 1;
34 		uint32_t low_power_state	: 1;
35 		uint32_t reserved_2		: 22;
36 	} __packed fields;
37 };
38 
39 /* ME Host Firmware Status Register 3 */
40 union me_hfsts3 {
41 	uint32_t data;
42 	struct {
43 		uint32_t reserved_0		: 4;
44 		uint32_t fw_sku			: 3;
45 		uint32_t reserved_1		: 25;
46 	} __packed fields;
47 };
48 
49 /* Host Firmware Status Register 4 */
50 union me_hfsts4 {
51 	uint32_t data;
52 	struct {
53 		uint32_t reserved_0;
54 	} __packed fields;
55 };
56 
57 /* Host Firmware Status Register 5 */
58 union me_hfsts5 {
59 	uint32_t data;
60 	struct {
61 		uint32_t reserved_0;
62 	} __packed fields;
63 };
64 
65 /* Host Firmware Status Register 6 */
66 union me_hfsts6 {
67 	uint32_t data;
68 	struct {
69 		uint32_t reserved_0		: 1;
70 		uint32_t cpu_debug_disable	: 1;
71 		uint32_t reserved_1		: 29;
72 		uint32_t txt_support		: 1;
73 	} __packed fields;
74 };
75 
76 #endif /* _SOC_INTEL_COMMON_ME_SPEC_12_H_ */
77