Ben Tyner | 0205f3b | 2020-02-24 10:24:47 -0600 | [diff] [blame] | 1 | #pragma once |
| 2 | |
Ben Tyner | 7029e52 | 2021-08-09 19:18:24 -0500 | [diff] [blame] | 3 | #include <attn/attn_dump.hpp> |
| 4 | |
Ben Tyner | 0205f3b | 2020-02-24 10:24:47 -0600 | [diff] [blame] | 5 | namespace analyzer |
| 6 | { |
| 7 | |
| 8 | /** |
Zane Shelley | 097a71a | 2020-06-08 15:55:29 -0500 | [diff] [blame] | 9 | * @brief Queries the host hardware for all attentions reported by each active |
| 10 | * chip. Then it performs all approriate RAS actions based on the active |
| 11 | * attentions. |
Ben Tyner | 0205f3b | 2020-02-24 10:24:47 -0600 | [diff] [blame] | 12 | * |
Ben Tyner | 7029e52 | 2021-08-09 19:18:24 -0500 | [diff] [blame] | 13 | * @param[out] o_dumpParameters Dump request parameters |
Zane Shelley | 097a71a | 2020-06-08 15:55:29 -0500 | [diff] [blame] | 14 | * @return True if an active attenion was successfully analyzed, false |
| 15 | * otherwise. |
| 16 | * For system checkstop handling: |
| 17 | * If analysis fails, there likely is a defect in the design because |
| 18 | * an active attention is required to trigger the interrupt. |
| 19 | * For TI handling: |
| 20 | * It is possible that a recoverable attention could cause a TI, |
| 21 | * however, it is not required. Therefore, it is expected that |
| 22 | * analysis could fail to find an attention and it should not be |
| 23 | * treated as a defect. |
Ben Tyner | 0205f3b | 2020-02-24 10:24:47 -0600 | [diff] [blame] | 24 | */ |
Ben Tyner | 7029e52 | 2021-08-09 19:18:24 -0500 | [diff] [blame] | 25 | bool analyzeHardware(attn::DumpParameters& o_dumpParameters); |
Ben Tyner | 0205f3b | 2020-02-24 10:24:47 -0600 | [diff] [blame] | 26 | |
Ben Tyner | eea4542 | 2021-04-15 10:54:14 -0500 | [diff] [blame] | 27 | /** |
| 28 | * @brief Get error analyzer build information |
| 29 | * |
| 30 | * @return Pointer to build information |
| 31 | */ |
| 32 | const char* getBuildInfo(); |
| 33 | |
Ben Tyner | 0205f3b | 2020-02-24 10:24:47 -0600 | [diff] [blame] | 34 | } // namespace analyzer |