LCOV - code coverage report
Current view: top level - arch/x86/include/asm - mach_traps.h (source / functions) Hit Total Coverage
Test: combined.info Lines: 0 2 0.0 %
Date: 2022-04-01 14:35:51 Functions: 0 1 0.0 %
Branches: 0 0 -

           Branch data     Line data    Source code
       1                 :            : /* SPDX-License-Identifier: GPL-2.0 */
       2                 :            : /*
       3                 :            :  *  Machine specific NMI handling for generic.
       4                 :            :  *  Split out from traps.c by Osamu Tomita <tomita@cinet.co.jp>
       5                 :            :  */
       6                 :            : #ifndef _ASM_X86_MACH_DEFAULT_MACH_TRAPS_H
       7                 :            : #define _ASM_X86_MACH_DEFAULT_MACH_TRAPS_H
       8                 :            : 
       9                 :            : #include <asm/mc146818rtc.h>
      10                 :            : 
      11                 :            : #define NMI_REASON_PORT         0x61
      12                 :            : 
      13                 :            : #define NMI_REASON_SERR         0x80
      14                 :            : #define NMI_REASON_IOCHK        0x40
      15                 :            : #define NMI_REASON_MASK         (NMI_REASON_SERR | NMI_REASON_IOCHK)
      16                 :            : 
      17                 :            : #define NMI_REASON_CLEAR_SERR   0x04
      18                 :            : #define NMI_REASON_CLEAR_IOCHK  0x08
      19                 :            : #define NMI_REASON_CLEAR_MASK   0x0f
      20                 :            : 
      21                 :          0 : static inline unsigned char default_get_nmi_reason(void)
      22                 :            : {
      23                 :          0 :         return inb(NMI_REASON_PORT);
      24                 :            : }
      25                 :            : 
      26                 :            : static inline void reassert_nmi(void)
      27                 :            : {
      28                 :            :         int old_reg = -1;
      29                 :            : 
      30                 :            :         if (do_i_have_lock_cmos())
      31                 :            :                 old_reg = current_lock_cmos_reg();
      32                 :            :         else
      33                 :            :                 lock_cmos(0); /* register doesn't matter here */
      34                 :            :         outb(0x8f, 0x70);
      35                 :            :         inb(0x71);              /* dummy */
      36                 :            :         outb(0x0f, 0x70);
      37                 :            :         inb(0x71);              /* dummy */
      38                 :            :         if (old_reg >= 0)
      39                 :            :                 outb(old_reg, 0x70);
      40                 :            :         else
      41                 :            :                 unlock_cmos();
      42                 :            : }
      43                 :            : 
      44                 :            : #endif /* _ASM_X86_MACH_DEFAULT_MACH_TRAPS_H */

Generated by: LCOV version 1.14