MCPcopy Create free account
hub / github.com/coreboot/coreboot / intel_me_status

Function intel_me_status

util/intelmetool/src/me_status.c:129–192  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

127};
128
129void intel_me_status(uint32_t hfs, uint32_t gmes)
130{
131 /* Check Current States */
132 printf("ME: FW Partition Table : %s\n",
133 ((hfs & 0x20) >> 5) ? "BAD" : "OK");
134 printf("ME: Bringup Loader Failure : %s\n",
135 ((hfs & 0x400) >> 10) ? "YES" : "NO");
136 printf("ME: Firmware Init Complete : %s\n",
137 ((hfs & 0x200) >> 9) ? "YES" : "NO");
138 printf("ME: Manufacturing Mode : %s\n",
139 ((hfs & 0x10) >> 4) ? "YES" : "NO");
140 printf("ME: Boot Options Present : %s\n",
141 ((hfs & 0x1000000) >> 24) ? "YES" : "NO");
142 printf("ME: Update In Progress : %s\n",
143 ((hfs & 0x800) >> 11) ? "YES" : "NO");
144 printf("ME: Current Working State : %s\n",
145 me_cws_values[hfs & 0xf]);
146 printf("ME: Current Operation State : %s\n",
147 me_opstate_values[(hfs & 0x1c0) >> 6]);
148 printf("ME: Current Operation Mode : %s\n",
149 me_opmode_values[(hfs & 0xf0000) >> 16]);
150 printf("ME: Error Code : %s\n",
151 me_error_values[(hfs & 0xf000) >> 12]);
152 printf("ME: Progress Phase : %s\n",
153 me_progress_values[(gmes & 0xf0000000) >> 28]);
154 printf("ME: Power Management Event : %s\n",
155 me_pmevent_values[(gmes & 0xf000000) >> 24]);
156
157 printf("ME: Progress Phase State : ");
158 switch ((gmes & 0xf0000000) >> 28) {
159 case ME_GMES_PHASE_ROM: /* ROM Phase */
160 printf("%s", me_progress_rom_values[(gmes & 0xff0000) >> 16]);
161 break;
162
163 case ME_GMES_PHASE_BUP: /* Bringup Phase */
164 if ((gmes & 0xff0000) >> 16 < ARRAY_SIZE(me_progress_bup_values)
165 && me_progress_bup_values[(gmes & 0xff0000) >> 16])
166 printf("%s",
167 me_progress_bup_values[(gmes & 0xff0000) >> 16]);
168 else
169 printf("0x%02x", (gmes & 0xff0000) >> 16);
170 break;
171
172 case ME_GMES_PHASE_POLICY: /* Policy Module Phase */
173 if ((gmes & 0xff0000) >> 16 < ARRAY_SIZE(me_progress_policy_values)
174 && me_progress_policy_values[(gmes & 0xff0000) >> 16])
175 printf("%s",
176 me_progress_policy_values[(gmes & 0xff0000) >> 16]);
177 else
178 printf("0x%02x", (gmes & 0xff0000) >> 16);
179 break;
180
181 case ME_GMES_PHASE_HOST: /* Host Communication Phase */
182 if (!((gmes & 0xff0000) >> 16))
183 printf("Host communication established");
184 else
185 printf("0x%02x", (gmes & 0xff0000) >> 16);
186 break;

Callers 1

dump_me_infoFunction · 0.70

Calls 1

printfFunction · 0.85

Tested by

no test coverage detected