OpenBIC
OpenSource Bridge-IC
plat_isr.c File Reference
#include <sys/util.h>
#include <logging/log.h>
#include "plat_isr.h"
#include "libipmi.h"
#include "kcs.h"
#include "power_status.h"
#include "sensor.h"
#include "snoop.h"
#include "plat_gpio.h"
#include "plat_ipmi.h"
#include "plat_sensor_table.h"
#include "oem_1s_handler.h"
#include "hal_gpio.h"
#include "util_sys.h"
#include "plat_class.h"
#include "plat_i2c.h"
#include "util_worker.h"
Include dependency graph for plat_isr.c:

Macros

#define SMI_START_DELAY_MSECOND   90000
 
#define DC_ON_15_SECOND   15
 
#define DC_OFF_10_SECOND   10
 
#define PROC_FAIL_START_DELAY_SECOND   10
 
#define CATERR_START_DELAY_SECOND   2
 

Enumerations

enum  GET_SET_M2_OPTION {
  DEVICE_SET_POWER_OFF = 0x00 , DEVICE_SET_POWER_ON = 0x01 , DEVICE_GET_POWER_STATUS = 0x03 , DEVICE_SET_POWER_OFF = 0x00 ,
  DEVICE_SET_POWER_ON = 0x01 , DEVICE_GET_POWER_STATUS = 0x03 , DEVICE_SET_POWER_OFF = 0x00 , DEVICE_SET_POWER_ON = 0x01 ,
  DEVICE_GET_POWER_STATUS = 0x03
}
 

Functions

 LOG_MODULE_REGISTER (plat_isr)
 
 K_QUEUE_DEFINE (smi_timer_reset_queue)
 
 K_THREAD_STACK_DEFINE (smi_thread, SMI_STACK_SIZE)
 
void send_gpio_interrupt (uint8_t gpio_num)
 
 K_WORK_DELAYABLE_DEFINE (SLP3_work, SLP3_handler)
 
void ISR_SLP3 ()
 
void ISR_POST_COMPLETE ()
 
 K_WORK_DELAYABLE_DEFINE (set_DC_on_15s_work, set_DC_on_delayed_status)
 
 K_WORK_DELAYABLE_DEFINE (set_DC_off_10s_work, set_DC_off_delayed_status)
 
void ISR_DC_ON ()
 
void ISR_BMC_PRDY ()
 
 K_WORK_DELAYABLE_DEFINE (PROC_FAIL_work, PROC_FAIL_handler)
 
void ISR_PWRGD_CPU ()
 
 K_WORK_DELAYABLE_DEFINE (CAT_ERR_work, CAT_ERR_handler)
 
void ISR_CATERR ()
 
void ISR_PLTRST ()
 
void ISR_DBP_PRSNT ()
 
void ISR_HSC_THROTTLE ()
 
void ISR_SYS_THROTTLE ()
 
void ISR_SOC_THMALTRIP ()
 
void ISR_PCH_THMALTRIP ()
 
void ISR_HSC_OC ()
 
void ISR_CPU_MEMHOT ()
 
void ISR_CPUVR_HOT ()
 
void ISR_PVCCIO_VR_HOT ()
 
void ISR_DIMM_ABC_VR_HOT ()
 
void ISR_DIMM_DEF_VR_HOT ()
 
void ISR_NMI ()
 
void ISR_FIVR ()
 
void ISR_UV_DETECT ()
 
void smi_handler ()
 
void init_smi_thread ()
 
void abort_smi_thread ()
 
void ISR_SMI ()
 
void ISR_CPU_VPP_INT ()
 

Variables

struct k_thread smi_thread_handler
 
k_tid_t smi_tid
 

Macro Definition Documentation

◆ CATERR_START_DELAY_SECOND

#define CATERR_START_DELAY_SECOND   2

◆ DC_OFF_10_SECOND

#define DC_OFF_10_SECOND   10

◆ DC_ON_15_SECOND

#define DC_ON_15_SECOND   15

◆ PROC_FAIL_START_DELAY_SECOND

#define PROC_FAIL_START_DELAY_SECOND   10

◆ SMI_START_DELAY_MSECOND

#define SMI_START_DELAY_MSECOND   90000

Enumeration Type Documentation

◆ GET_SET_M2_OPTION

Enumerator
DEVICE_SET_POWER_OFF 
DEVICE_SET_POWER_ON 
DEVICE_GET_POWER_STATUS 
DEVICE_SET_POWER_OFF 
DEVICE_SET_POWER_ON 
DEVICE_GET_POWER_STATUS 
DEVICE_SET_POWER_OFF 
DEVICE_SET_POWER_ON 
DEVICE_GET_POWER_STATUS 

Function Documentation

◆ abort_smi_thread()

void abort_smi_thread ( )

◆ init_smi_thread()

void init_smi_thread ( )
Here is the call graph for this function:

◆ ISR_BMC_PRDY()

void ISR_BMC_PRDY ( )
Here is the call graph for this function:

◆ ISR_CATERR()

void ISR_CATERR ( )
Here is the call graph for this function:

◆ ISR_CPU_MEMHOT()

void ISR_CPU_MEMHOT ( )
Here is the call graph for this function:

◆ ISR_CPU_VPP_INT()

void ISR_CPU_VPP_INT ( )
Here is the call graph for this function:

◆ ISR_CPUVR_HOT()

void ISR_CPUVR_HOT ( )
Here is the call graph for this function:

◆ ISR_DBP_PRSNT()

void ISR_DBP_PRSNT ( )
Here is the call graph for this function:

◆ ISR_DC_ON()

void ISR_DC_ON ( )
Here is the call graph for this function:

◆ ISR_DIMM_ABC_VR_HOT()

void ISR_DIMM_ABC_VR_HOT ( )
Here is the call graph for this function:

◆ ISR_DIMM_DEF_VR_HOT()

void ISR_DIMM_DEF_VR_HOT ( )
Here is the call graph for this function:

◆ ISR_FIVR()

void ISR_FIVR ( )
Here is the call graph for this function:

◆ ISR_HSC_OC()

void ISR_HSC_OC ( )
Here is the call graph for this function:

◆ ISR_HSC_THROTTLE()

void ISR_HSC_THROTTLE ( )
Here is the call graph for this function:

◆ ISR_NMI()

void ISR_NMI ( )
Here is the call graph for this function:

◆ ISR_PCH_THMALTRIP()

void ISR_PCH_THMALTRIP ( )
Here is the call graph for this function:

◆ ISR_PLTRST()

void ISR_PLTRST ( )
Here is the call graph for this function:

◆ ISR_POST_COMPLETE()

void ISR_POST_COMPLETE ( )
Here is the call graph for this function:

◆ ISR_PVCCIO_VR_HOT()

void ISR_PVCCIO_VR_HOT ( )
Here is the call graph for this function:

◆ ISR_PWRGD_CPU()

void ISR_PWRGD_CPU ( )
Here is the call graph for this function:

◆ ISR_SLP3()

void ISR_SLP3 ( )
Here is the call graph for this function:

◆ ISR_SMI()

void ISR_SMI ( )
Here is the call graph for this function:

◆ ISR_SOC_THMALTRIP()

void ISR_SOC_THMALTRIP ( )
Here is the call graph for this function:

◆ ISR_SYS_THROTTLE()

void ISR_SYS_THROTTLE ( )
Here is the call graph for this function:

◆ ISR_UV_DETECT()

void ISR_UV_DETECT ( )
Here is the call graph for this function:

◆ K_QUEUE_DEFINE()

K_QUEUE_DEFINE ( smi_timer_reset_queue  )

◆ K_THREAD_STACK_DEFINE()

K_THREAD_STACK_DEFINE ( smi_thread  ,
SMI_STACK_SIZE   
)

◆ K_WORK_DELAYABLE_DEFINE() [1/5]

K_WORK_DELAYABLE_DEFINE ( CAT_ERR_work  ,
CAT_ERR_handler   
)

◆ K_WORK_DELAYABLE_DEFINE() [2/5]

K_WORK_DELAYABLE_DEFINE ( PROC_FAIL_work  ,
PROC_FAIL_handler   
)

◆ K_WORK_DELAYABLE_DEFINE() [3/5]

K_WORK_DELAYABLE_DEFINE ( set_DC_off_10s_work  ,
set_DC_off_delayed_status   
)

◆ K_WORK_DELAYABLE_DEFINE() [4/5]

K_WORK_DELAYABLE_DEFINE ( set_DC_on_15s_work  ,
set_DC_on_delayed_status   
)

◆ K_WORK_DELAYABLE_DEFINE() [5/5]

K_WORK_DELAYABLE_DEFINE ( SLP3_work  ,
SLP3_handler   
)

◆ LOG_MODULE_REGISTER()

LOG_MODULE_REGISTER ( plat_isr  )

◆ send_gpio_interrupt()

void send_gpio_interrupt ( uint8_t  gpio_num)
Here is the call graph for this function:

◆ smi_handler()

void smi_handler ( )
Here is the call graph for this function:

Variable Documentation

◆ smi_thread_handler

struct k_thread smi_thread_handler

◆ smi_tid

k_tid_t smi_tid