7 #include <soc/pci_devs.h>
11 #define ARRAY_TO_ELEMENT(__array__, __index__, __default__) \
12 (((__index__) < ARRAY_SIZE((__array__))) ? \
13 (__array__)[(__index__)] : \
19 memcpy(ptr, &dword,
sizeof(dword));
34 [10] =
"Unknown (10)",
35 [11] =
"Unknown (11)",
36 [12] =
"Unknown (12)",
37 [13] =
"Unknown (13)",
38 [14] =
"Unknown (14)",
39 [15] =
"Unknown (15)",
83 "Clean Moff->Mx wake",
85 "Moff->Mx wake after an error",
89 "Global reset after an error",
91 "Clean Intel ME reset",
93 "Intel ME reset due to exception",
95 "Pseudo-global reset",
101 "Non-power cycle reset",
103 "Power cycle reset through M3",
105 "Power cycle reset through Moff",
119 "Initialization starts",
121 "Disable the host wake event",
123 "Flow determination start process",
125 "Error reading/matching the VSCC table in the descriptor",
127 "Check to see if straps say ME DISABLED",
129 "Timeout waiting for PWROK",
131 "Possibly handle BUP manufacturing override strap",
137 "Flow detection error",
139 "M3 clock switching error",
141 "Host error - CPU reset timeout, DID timeout, memory missing",
145 "T34 missing - cannot program ICC",
147 "Waiting for DID BIOS message",
149 "Waiting for DID BIOS message failure",
151 "DID reported no error",
155 "Enabling UMA error",
157 "Sending DID Ack to BIOS",
159 "Sending DID Ack to BIOS error",
161 "Switching clocks in M0",
163 "Switching clocks in M0 error",
165 "ME in temp disable",
183 "VSCC Data not found for flash device",
185 "VSCC Table is not valid",
187 "Flash Partition Boundary is outside address space",
189 "ME cannot access the chipset descriptor region",
191 "Required VSCC values for flash parts do not match",
196 if (CONFIG_DEFAULT_CONSOLE_LOGLEVEL <
BIOS_DEBUG)
199 struct me_hfs _hfs, *hfs = &_hfs;
200 struct me_hfs2 _hfs2, *hfs2 = &_hfs2;
void * memcpy(void *dest, const void *src, size_t n)
#define printk(level,...)
static __always_inline void pci_write_config32(const struct device *dev, u16 reg, u32 val)
static __always_inline u32 pci_read_config32(const struct device *dev, u16 reg)
static uint8_t checksum(uint8_t *data, int offset)
#define BIOS_DEBUG
BIOS_DEBUG - Verbose output.
#define BIOS_ERR
BIOS_ERR - System in incomplete state.
#define ME_HFS2_PMEVENT_PWR_CYCLE_RESET_MOFF
#define ME_HFS2_STATE_POLICY_VSCC_INVALID
#define ME_HFS2_PHASE_BUP
#define ME_HFS2_STATE_BUP_M0_CLK
#define ME_HFS2_PHASE_HOST_COMM
#define ME_HFS_ERROR_IMAGE
#define ME_HFS2_STATE_BUP_MANUF_OVRD_STRAP
#define ME_HFS2_STATE_BUP_WAIT_DID
#define ME_HFS2_STATE_BUP_CHECK_STRAP
#define ME_HFS2_STATE_BUP_M3_CLK_ERR
#define ME_HFS2_PMEVENT_SXMX_SXMOFF
#define ME_HFS_ERROR_UNCAT
#define ME_HFS2_PHASE_MODULE_LOAD
#define ME_HFS_MODE_NORMAL
#define ME_HFS2_STATE_BUP_ENABLE_UMA_ERR
#define ME_HFS2_STATE_POLICY_VSCC_NOT_FOUND
#define ME_HFS2_STATE_BUP_M3
#define ME_HFS_ERROR_DEBUG
#define ME_HFS2_PMEVENT_NON_PWR_CYCLE_RESET
#define ME_HFS2_PMEVENT_PWR_CYCLE_RESET_M3
#define ME_HFS2_PHASE_UKERNEL
#define ME_HFS2_STATE_BUP_INIT
#define ME_HFS2_STATE_BUP_DID_NO_FAIL
#define ME_HSIO_CMD_GETHSIOVER
#define ME_HFS2_STATE_POLICY_DESCRIPTOR_ERR
#define ME_HFS2_PHASE_POLICY
#define ME_HFS2_PHASE_ROM
#define ME_HFS2_PHASE_UNKNOWN
#define ME_HFS2_STATE_POLICY_RCVD_UPD
#define ME_HFS2_STATE_BUP_T32_MISSING
#define ME_HFS2_PMEVENT_PSEUDO_ME_RESET
#define ME_HFS2_STATE_BUP_TEMP_DIS
#define ME_HFS2_STATE_BUP_M0_KERN_LOAD
#define ME_HFS2_STATE_BUP_PWR_OK_TIMEOUT
#define ME_HFS2_PMEVENT_CLEAN_ME_RESET
#define ME_HFS_STATE_M0_UMA
#define ME_HFS2_PMEVENT_S0MO_SXM3
#define ME_HFS2_PMEVENT_SXM3_S0M0
#define ME_HFS_MODE_OVER_MEI
#define ME_HFS2_STATE_POLICY_RCVD_AC_DC
#define ME_HFS2_STATE_POLICY_RCVD_NPCR
#define ME_HFS2_STATE_BUP_CPU_RESET_DID_TIMEOUT_MEM_MISSING
#define ME_HFS2_STATE_BUP_DIS_HOST_WAKE
#define ME_HFS2_STATE_POLICY_RCVD_PCR
#define ME_HFS2_STATE_BUP_M3_KERN_LOAD
#define ME_HFS_CWS_NORMAL
#define ME_HFS_STATE_PREBOOT
#define ME_HFS2_PMEVENT_MOFF_MX_WAKE_ERROR
#define ME_HFS2_STATE_POLICY_FPB_ERR
#define ME_HFS2_PMEVENT_ME_RESET_EXCEPTION
#define ME_HFS2_STATE_POLICY_VSCC_NO_MATCH
#define ME_HFS2_STATE_BUP_SEND_DID_ACK_ERR
#define ME_HFS2_PMEVENT_CLEAN_GLOBAL_RESET_ERROR
#define ME_HFS_MODE_OVER_JMPR
#define ME_HFS2_STATE_BUP_VSCC_ERR
#define ME_HFS2_STATE_BUP_WAIT_DID_FAIL
#define ME_HFS2_STATE_POLICY_RCVD_S4
#define ME_HFS2_STATE_BUP_ENABLE_UMA
#define ME_HFS2_STATE_ROM_DISABLE
#define ME_HFS2_STATE_POLICY_ENTRY
#define ME_HFS2_STATE_ROM_BEGIN
#define ME_HFS2_STATE_POLICY_RCVD_S5
#define ME_HFS2_PMEVENT_CLEAN_MOFF_MX_WAKE
#define ME_HFS2_STATE_POLICY_RCVD_S3
#define ME_HFS2_STATE_BUP_M0_CLK_ERR
#define ME_HFS_STATE_BRINGUP
#define ME_HFS2_STATE_BUP_FLOW_DET_ERR
#define ME_HFS_MODE_DEBUG
#define ME_HFS_CWS_INVALID
#define ME_HFS_ERROR_NONE
#define ME_HFS2_STATE_BUP_SEND_DID_ACK
#define ME_HFS2_PMEVENT_CLEAN_GLOBAL_RESET
#define ME_HFS2_STATE_POLICY_RCVD_HOST_WAKE
#define ME_HFS2_STATE_POLICY_RCVD_DID
#define ME_HFS2_STATE_BUP_FLOW_DET
#define ME_HFS_STATE_ERROR
#define ME_HFS2_STATE_BUP_M0
static const char * me_progress_bup_values[]
static void me_read_dword_ptr(void *ptr, int offset)
void intel_me_status(void)
static const char * me_opstate_values[]
void intel_me_hsio_version(uint16_t *version, uint16_t *checksum)
static const char * me_cws_values[]
#define ARRAY_TO_ELEMENT(__array__, __index__, __default__)
static const char * me_pmevent_values[]
static const char * me_progress_rom_values[]
static const char * me_progress_values[]
static const char * me_error_values[]
static const char * me_progress_policy_values[]
static const char * me_opmode_values[]