blob: e0c9f4790ae244a2542d78d45b2b661df0c1b521 [file] [log] [blame]
Ben Tyner0205f3b2020-02-24 10:24:47 -06001#pragma once
2
3namespace analyzer
4{
5
6/**
Zane Shelley097a71a2020-06-08 15:55:29 -05007 * @brief Queries the host hardware for all attentions reported by each active
8 * chip. Then it performs all approriate RAS actions based on the active
9 * attentions.
Ben Tyner0205f3b2020-02-24 10:24:47 -060010 *
Zane Shelley097a71a2020-06-08 15:55:29 -050011 * @return True if an active attenion was successfully analyzed, false
12 * otherwise.
13 * For system checkstop handling:
14 * If analysis fails, there likely is a defect in the design because
15 * an active attention is required to trigger the interrupt.
16 * For TI handling:
17 * It is possible that a recoverable attention could cause a TI,
18 * however, it is not required. Therefore, it is expected that
19 * analysis could fail to find an attention and it should not be
20 * treated as a defect.
Ben Tyner0205f3b2020-02-24 10:24:47 -060021 */
Zane Shelley9fb73932020-09-15 13:34:57 -050022bool analyzeHardware();
Ben Tyner0205f3b2020-02-24 10:24:47 -060023
Ben Tynereea45422021-04-15 10:54:14 -050024/**
25 * @brief Get error analyzer build information
26 *
27 * @return Pointer to build information
28 */
29const char* getBuildInfo();
30
Ben Tyner0205f3b2020-02-24 10:24:47 -060031} // namespace analyzer