1 #pragma once
2 
3 #include <attn/attn_config.hpp>
4 
5 namespace attn
6 {
7 
8 /**
9  * @brief The main attention handler logic
10  *
11  * Check each processor for active attentions of type SBE Vital (vital),
12  * System Checkstop (checkstop) and Special Attention (special) and handle
13  * each as follows:
14  *
15  * checkstop: Call hardware error analyzer
16  * vital:     TBD
17  * special:   Determine if the special attention is a Breakpoint (BP),
18  *            Terminate Immediately (TI) or CoreCodeToSp (corecode). For each
19  *            special attention type, do the following:
20  *
21  *            BP:          Notify Cronus
22  *            TI:          Start host diagnostics mode systemd unit
23  *            Corecode:    TBD
24  *
25  * @param i_config pointer to attention handler configuration object
26  */
27 void attnHandler(Config* i_config);
28 
29 } // namespace attn
30