OpenBIC
OpenSource Bridge-IC
plat_sensor_table.c File Reference
#include <stdlib.h>
#include <stdio.h>
#include <logging/log.h>
#include "plat_sensor_table.h"
#include "sensor.h"
#include "ast_adc.h"
#include "pmbus.h"
#include "mpro.h"
#include "plat_hook.h"
#include "plat_i2c.h"
#include "plat_class.h"
#include "plat_mctp.h"
#include "plat_power_status.h"
Include dependency graph for plat_sensor_table.c:

Functions

 LOG_MODULE_REGISTER (plat_sensor_table)
 
void pal_extend_sensor_config ()
 
uint8_t pal_get_extend_sensor_config ()
 
bool pal_is_time_to_poll (uint8_t sensor_num, int poll_time)
 
void load_sensor_config (void)
 

Variables

struct plat_mpro_sensor_mapping mpro_sensor_map []
 
const int MPRO_MAP_TAB_SIZE = ARRAY_SIZE(mpro_sensor_map)
 
sensor_poll_time_cfg diff_poll_time_sensor_table []
 
sensor_cfg plat_sensor_config []
 
sensor_cfg adm1278_sensor_config_table []
 
sensor_cfg ltc4282_sensor_config_table []
 
sensor_cfg mp5990_sensor_config_table []
 
sensor_cfg mp5990_temp_sensor_config_table []
 
const int SENSOR_CONFIG_SIZE = ARRAY_SIZE(plat_sensor_config)
 

Function Documentation

◆ load_sensor_config()

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

◆ LOG_MODULE_REGISTER()

LOG_MODULE_REGISTER ( plat_sensor_table  )

◆ pal_extend_sensor_config()

void pal_extend_sensor_config ( void  )

EVT2 switch board has two configurations that will cause the need to load different sensor table.

1st : ISL69259(VR) + MPS5990(HSC) + ISL28022(Power monitor IC) 2nd : XDPE12284(VR) + LTC4282(HSC) + INA230(Power monitor IC)

Since the BOARD_ID pins were originally used to identify which configuration has no function in this stage, so the current configuration is identified by IC_DEVICE_ID which gets from the VR chip.

The way to identify different configurations by BOARD_ID will be added back in the next stage.

◆ pal_get_extend_sensor_config()

uint8_t pal_get_extend_sensor_config ( void  )

◆ pal_is_time_to_poll()

bool pal_is_time_to_poll ( uint8_t  sensor_num,
int  poll_time 
)

Variable Documentation

◆ adm1278_sensor_config_table

sensor_cfg adm1278_sensor_config_table[]
Initial value:
= {
SENSOR_INIT_STATUS, NULL, NULL, NULL, NULL, &adm1278_init_args[0] },
}
#define I2C_BUS2
Definition: plat_i2c.h:25
@ PMBUS_READ_IOUT
Definition: pmbus.h:118
@ PMBUS_READ_PIN
Definition: pmbus.h:129
@ PMBUS_READ_VIN
Definition: pmbus.h:114
@ ENABLE_SENSOR_POLLING
Definition: sensor.h:197
@ SENSOR_INIT_STATUS
Definition: sensor.h:241
#define POLL_TIME_DEFAULT
Definition: sensor.h:48
@ sensor_dev_adm1278
Definition: sensor.h:122
#define SAMPLE_COUNT_DEFAULT
Definition: sensor.h:46
adm1278_init_arg adm1278_init_args[]
Definition: plat_hook.c:44
#define SENSOR_NUM_CUR_HSCOUT
Definition: plat_sensor_table.h:94
#define SENSOR_NUM_PWR_HSCIN
Definition: plat_sensor_table.h:105
#define SENSOR_NUM_VOL_HSCIN
Definition: plat_sensor_table.h:85
bool stby_access(uint8_t sensor_number)
Definition: sensor.c:1119
bool post_adm1278_pwr_read(sensor_cfg *cfg, void *args, int *reading)
Definition: plat_hook.c:206
bool post_adm1278_cur_read(sensor_cfg *cfg, void *args, int *reading)
Definition: plat_hook.c:188
#define ADM1278_ADDR
Definition: plat_sensor_table.h:54

◆ diff_poll_time_sensor_table

sensor_poll_time_cfg diff_poll_time_sensor_table[]
Initial value:
= {
}
#define SENSOR_NUM_VOL_ADC4_P3V_BAT
Definition: plat_sensor_table.h:75

◆ ltc4282_sensor_config_table

sensor_cfg ltc4282_sensor_config_table[]
Initial value:
= {
SENSOR_INIT_STATUS, NULL, NULL, NULL, NULL, &ltc4282_init_args[0] },
}
@ sensor_dev_ltc4282
Definition: sensor.h:130
@ LTC4282_POWER_OFFSET
Definition: sensor.h:53
@ LTC4282_VSOURCE_OFFSET
Definition: sensor.h:54
@ LTC4282_VSENSE_OFFSET
Definition: sensor.h:52
ltc4282_init_arg ltc4282_init_args[]
Definition: plat_hook.c:42
#define LTC4282_ADDR
Definition: plat_sensor_table.h:48
bool post_ltc4282_pwr_read(sensor_cfg *cfg, void *args, int *reading)
Definition: plat_hook.c:242
bool post_ltc4282_cur_read(sensor_cfg *cfg, void *args, int *reading)
Definition: plat_hook.c:224

◆ mp5990_sensor_config_table

sensor_cfg mp5990_sensor_config_table[]
Initial value:
= {
SENSOR_INIT_STATUS, NULL, NULL, NULL, NULL, &mp5990_init_args[0] },
}
mp5990_init_arg mp5990_init_args[]
Definition: plat_hook.c:46
@ sensor_dev_mp5990
Definition: sensor.h:125
bool post_mp5990_cur_read(sensor_cfg *cfg, void *args, int *reading)
Definition: plat_hook.c:260
bool post_mp5990_pwr_read(sensor_cfg *cfg, void *args, int *reading)
Definition: plat_hook.c:278
#define MP5990_ADDR
Definition: plat_sensor_table.h:57

◆ mp5990_temp_sensor_config_table

sensor_cfg mp5990_temp_sensor_config_table[]
Initial value:
= {
SENSOR_INIT_STATUS, NULL, NULL, NULL, NULL, &mp5990_init_args[0] },
}
@ PMBUS_READ_TEMPERATURE_1
Definition: pmbus.h:119
#define SENSOR_NUM_TEMP_HSC
Definition: plat_sensor_table.h:64

◆ MPRO_MAP_TAB_SIZE

const int MPRO_MAP_TAB_SIZE = ARRAY_SIZE(mpro_sensor_map)

◆ mpro_sensor_map

struct plat_mpro_sensor_mapping mpro_sensor_map[]

◆ plat_sensor_config

sensor_cfg plat_sensor_config[]

◆ SENSOR_CONFIG_SIZE

const int SENSOR_CONFIG_SIZE = ARRAY_SIZE(plat_sensor_config)