/openbmc/openpower-hw-diags/attn/ |
H A D | Attention_Handler.md | 1 # Attention Handler 5 An attention is a hardware, firmware or software alert mechanism used to request 6 service from an Attention Handler via an attention signal (e.g. a GPIO). An 7 attention handler is, in this case, a stateless service that handles attention 8 requests. The attention handler in combination with a hardware analyzer 12 attention handler or attention handler service. When operating in application 15 of the attention handler service, per attention signal. 19 The main role of the attention handler is a long running process monitoring the 20 attention interrupt signal and delegating tasks to external components to aid in 21 handling attention requests. The attention handler is loaded into memory when [all …]
|
H A D | attention.hpp | 12 /** @brief attention handler configuration flags */ 16 * @brief These objects contain information about an active attention. 18 * An Attention object is created for each active attention. These objects 20 * the attention handler function to call for handling the attention. Each 21 * Attention object also carries a priority value. This priority is used 22 * to determine which attention event(s) to handle when there are more than 25 class Attention class 37 Attention() = delete; 40 Attention(AttentionType i_type, int (*i_handler)(Attention*), 44 ~Attention() = default; [all …]
|
H A D | attn_handler.cpp | 14 #include <attn/attention.hpp> 37 * @brief Handle checkstop attention 39 * @param i_attention Attention object 40 * @return 0 indicates that the checkstop attention was successfully handled 41 * 1 indicates that the checkstop attention was NOT successfully 44 int handleCheckstop(Attention* i_attention); 47 * @brief Handle special attention 49 * @param i_attention Attention object 50 * @return 0 indicates that the special attention was successfully handled 51 * 1 indicates that the special attention was NOT successfully handled [all …]
|
H A D | attn_handler.hpp | 9 /** @brief Attention global status bits */ 17 * @brief Clear attention interrupts 19 * The attention interrupts are sticky and may still be set (MPIPL) even if 20 * there are no active attentions. If there is an active attention then 26 * @brief The main attention handler logic 29 * System Checkstop (checkstop) and Special Attention (special) and handle 34 * special: Determine if the special attention is a Breakpoint (BP), 36 * special attention type, do the following: 42 * @param i_config pointer to attention handler configuration object 47 * @brief Determine if attention is active and not masked [all …]
|
H A D | attention.cpp | 1 #include <attn/attention.hpp> 8 Attention::Attention(AttentionType i_type, int (*i_handler)(Attention*), in Attention() function in attn::Attention 15 /** @brief Get attention priority */ 16 int Attention::getPriority() const in getPriority() 22 Config* Attention::getConfig() const in getConfig() 27 /* @brief Call attention handler function */ 28 int Attention::handle() in handle() 33 /* @brief Get attention handler target */ 34 pdbg_target* Attention::getTarget() const in getTarget() 40 bool Attention::operator<(const Attention& right) const in operator <()
|
H A D | vital_handler.cpp | 1 #include <attn/attention.hpp> 23 // attempt sbe hreset and attention interrupt clear in attemptSbeRecovery() 31 // try to clear attention interrupts in attemptSbeRecovery() 34 // loop through processors checking attention interrupts in attemptSbeRecovery() 50 // get attention interrupts on processor in attemptSbeRecovery() 55 trace::err("sbe attention did not clear"); in attemptSbeRecovery() 71 trace::inf("sbe attention cleared"); in attemptSbeRecovery() 78 * @brief Check for active checkstop attention 98 // check for active checkstop attention in checkstopActive() 122 * @brief Handle SBE vital attention [all …]
|
H A D | vital_handler.hpp | 7 * @brief Handle SBE vital attention 9 * @param i_attention Attention object 10 * @return 0 indicates that the vital attention was successfully handled 11 * 1 indicates that the vital attention was NOT successfully handled 13 int handleVital(Attention* i_attention);
|
H A D | attn_main.hpp | 9 * @brief Load the attention handler as a gpio monitor 11 * Request the attention gpio for monitoring and attach the attention handler 14 * @param i_config pointer to attention handler configuration object
|
H A D | meson.build | 21 # attention handler default config override 24 # install attention handler unit file 33 # install attention handler config file 44 'attention.cpp',
|
H A D | attn_main.cpp | 7 * @brief Attention handler application main() 19 "attention", GPIOD_LINE_REQUEST_EVENT_FALLING_EDGE, 0}; in attnDaemon() 21 // get handle to attention GPIO line in attnDaemon()
|
H A D | attn_common.hpp | 11 /** @brief Attention handler return codes */ 33 /** @brief Attention handler error reason codes */ 46 * When we receive a Checkstop or special Attention Term Immediate,
|
H A D | attn_monitor.hpp | 13 * @brief Responsible for monitoring attention GPIO state change 29 * @param i_attnConfig poiner to attention handler configuration object 61 /** @brief attention handler configuration object pointer */
|
/openbmc/openpower-hw-diags/test/ |
H A D | test-end2end.cpp | 3 #include <attn/attention.hpp> 14 int handleSpecial(Attention* i_attention); 15 int handleCheckstop(Attention* i_attention); 16 int handleVital(Attention* i_attention); 19 /** @brief Attention handler test application */ 27 // create attention handler config object in main() 33 // exercise attention gpio event path in main() 48 // Exercise special, checkstop and vital attention handler paths in main() 52 std::vector<attn::Attention> attentions; in main() 54 attentions.emplace_back(attn::Attention::AttentionType::Special, in main() [all …]
|
H A D | test-attention.cpp | 1 #include <attn/attention.hpp> 13 int handleSpecial(Attention* i_attention); 20 int handleAttention(Attention* attention) in handleAttention() argument 23 if (attention != nullptr) in handleAttention() 34 // Attention type 35 Attention::AttentionType gType = Attention::AttentionType::Special; 37 int (*gHandler)(Attention*) = &(handleSpecial); 62 pAttn = std::make_unique<Attention>( in SetUp() 63 Attention(gType, gHandler, target, config)); in SetUp() 71 std::unique_ptr<Attention> pAttn; [all …]
|
/openbmc/openpower-hw-diags/ |
H A D | main.cpp | 9 * @brief Attention handler application main() 12 * application will either be loaded as a daemon for monitoring the attention 18 * --start: Start the attention handler 19 * --stop: Stop the attention handler 20 * --all <on|off>: All attention handling 21 * --vital <on|off>: Vital attention handling 22 * --checkstop <on|off>: Checkstop attention handling 23 * --terminate <on|off>: Terminate Immiediately attention handling 24 * --breakpoints <on|off>: Breakpoint attention handling 41 printf(" --start: Start the attention handler\n"); in main() [all …]
|
H A D | main_nl.cpp | 4 #include <attn/attention.hpp> 15 * @brief Attention handler application main() 18 * application can be loaded as a daemon for monitoring the attention 24 * --daemon: Start the attention handler daemon 47 // they are initialized for the attention handler, invocation of in main() 48 // the analyzer via attention handler and direct invocation of in main()
|
H A D | listener.cpp | 18 * @brief Start a thread to monitor the attention GPIO 20 * @param i_config Attention handler configuration object 24 // Configure and start attention monitor in threadGpioMon() 30 /** @brief Start a thread to listen for attention handler messages */ 48 // only once. All other communtication with the attention handler will in threadListener() 91 // stop attention handler daemon? in threadListener() 101 // start attention handler daemon? in threadListener()
|
/openbmc/linux/drivers/target/ |
H A D | target_core_ua.c | 5 * This file contains logic for SPC-3 Unit Attention emulation 51 * From sam4r14, section 5.14 Unit attention condition: in target_scsi3_ua_check() 55 * report nor clear any unit attention condition; in target_scsi3_ua_check() 58 * report any unit attention condition; in target_scsi3_ua_check() 60 * a unit attention condition exists for the SCSI initiator port in target_scsi3_ua_check() 95 * Do not report the same UNIT ATTENTION twice.. in core_scsi3_ua_allocate() 103 * Attach the highest priority Unit Attention to in core_scsi3_ua_allocate() 105 * Section 5.14 Unit Attention Condition: in core_scsi3_ua_allocate() 131 * Family 2AHh ASCQ codes for Unit Attention condition. in core_scsi3_ua_allocate() 149 pr_debug("Allocated UNIT ATTENTION, mapped LUN: %llu, ASC:" in core_scsi3_ua_allocate() [all …]
|
/openbmc/linux/sound/soc/tegra/ |
H A D | tegra20_spdif.h | 75 /* Interrupt when RX user FIFO attention level is reached */ 78 /* Interrupt when TX user FIFO attention level is reached */ 81 /* Interrupt when RX data FIFO attention level is reached */ 84 /* Interrupt when TX data FIFO attention level is reached */ 184 * 1=attention level reached, 0=attention level not reached. 190 * 1=attention level reached, 0=attention level not reached. 196 * 1=attention level reached, 0=attention level not reached. 202 * 1=attention level reached, 0=attention level not reached. 242 /* RU FIFO attention level */ 262 /* TU FIFO attention level */ [all …]
|
/openbmc/linux/drivers/pci/hotplug/ |
H A D | acpiphp_core.c | 70 * acpiphp_register_attention - set attention LED callback 74 * driver that manipulates the attention LED. All the fields in 92 * acpiphp_unregister_attention - unset attention LED callback 96 * driver that manipulates the attention LED. The pointer to the 147 * set_attention_status - set attention LED 148 * @hotplug_slot: slot to set attention LED on 149 * @status: value to set attention LED to (0 or 1) 151 * attention status LED, so we use a callback that 192 * get_attention_status - get attention LED status 194 * @value: returns with value of attention LED [all …]
|
/openbmc/docs/designs/ |
H A D | power-systems-memory-preserving-reboot.md | 54 - **Attention**: The signal generated by the hardware or the firmware for a 96 - The hypervisor should send a special attention to BMC to notify about a severe 99 - BMC should receive special TI attention from hypervisor 129 When there is a fault, the hypervisor generates attention. The attention 130 listener on the BMC detects the attention. In the case of OpenPOWER based Linux 136 The attention listener on the BMC calls a chip-op to analyze the reason for the 137 attention. 141 Attention on the BMC sets the Diagnostic target for reboot to initiate a memory 232 - Add support to openpower-hw-diags to catch special attention and initiate 235 - SBE needs to support a new operation to analyze the attention received from
|
/openbmc/qemu/include/scsi/ |
H A D | utils.h | 104 /* Unit attention, Capacity data has changed */ 106 /* Unit attention, SCSI bus reset */ 110 /* Unit attention, Power on, reset or bus device reset occurred */ 112 /* Unit attention, Medium may have changed*/ 114 /* Unit attention, Reported LUNs data has changed */ 116 /* Unit attention, Device internal reset */
|
/openbmc/openpower-hw-diags/analyzer/ |
H A D | analyzer_main.cpp | 67 trace::err("Unsupported attention type: %u", i_type); in __attn() 128 // Filter for root cause attention. in analyzeHardware() 143 // If a root cause attention was found, or if this was a system checkstop, in analyzeHardware() 149 trace::inf("Root cause attention: %s 0x%0" PRIx32 " %s", in analyzeHardware() 155 // This is bad. Analysis should have found a root cause attention in analyzeHardware() 159 trace::err("System checkstop with no root cause attention"); in analyzeHardware() 174 // Resolve the root cause attention. in analyzeHardware() 220 // the command line, that there will not be an active attention. In in analyzeHardware()
|
/openbmc/linux/drivers/net/ethernet/qlogic/qed/ |
H A D | qed_int.c | 76 /* Callback to call if attention will be triggered */ 89 /* Specific HW attention callbacks */ 362 DP_INFO(p_hwfn, "General attention 35!\n"); in qed_general_attention_35() 486 DP_NOTICE(p_hwfn->cdev, "DORQ attention. int_sts was %x\n", int_sts); in qed_dorq_attn_int_sts() 534 DP_INFO(p_hwfn, "DORQ fatal attention\n"); in qed_dorq_attn_int_sts() 555 /* Call DORQ callback if the attention was missed */ in qed_dorq_attn_handler() 612 {"General Attention %d", 619 {"General Attention 32", ATTENTION_SINGLE | 622 {"General Attention %d", 625 {"General Attention 35", ATTENTION_SINGLE | [all …]
|
/openbmc/linux/drivers/staging/pi433/Documentation/ |
H A D | pi433.txt | 128 Attention: While possible to generate sync without preamble, the 135 Attention: For telegram length over 255 bytes, this option can't be used 136 Attention: should be used in combination with sync, only 143 Attention: should be used in combination with sync, only 233 Attention: should be used in combination with sync, only 241 Attention: Sync option must be enabled in order to use this feature 248 Attention: This option is only operational if sync on and fixed length 252 Attention: This setting must meet the setting of the transmitter,
|