OpenBIC
OpenSource Bridge-IC
plat_class.c File Reference
#include "plat_class.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "libutil.h"
#include "plat_gpio.h"
#include "plat_i2c.h"
#include "plat_sensor_table.h"
#include "sensor.h"
#include <logging/log.h>
Include dependency graph for plat_class.c:

Classes

struct  ADC_INFO
 
struct  _1OU_CARD_MAPPING_TABLE
 

Macros

#define CPLD_ADDR   0x21
 
#define CPLD_CLASS_TYPE_REG   0x05
 
#define CPLD_2OU_EXPANSION_CARD_REG   0x06
 
#define CPLD_BOARD_REV_ID_REG   0x08
 
#define CPLD_1OU_CARD_DETECTION   0x09
 
#define I2C_DATA_SIZE   5
 
#define NUMBER_OF_ADC_CHANNEL   16
 
#define AST1030_ADC_BASE_ADDR   0x7e6e9000
 

Enumerations

enum  ADC_REF_VOL_SELECTION {
  REF_VOL_2_5V = 0x0 , REF_VOL_1_2V = 0x40 , REF_VOL_2_5V = 0x0 , REF_VOL_1_2V = 0x40 ,
  REF_VOL_2_5V = 0x0 , REF_VOL_1_2V = 0x40 , REF_VOL_2_5V = 0x0 , REF_VOL_1_2V = 0x40 ,
  REF_VOL_2_5V = 0x0 , REF_VOL_1_2V = 0x40 , REF_VOL_2_5V = 0x0 , REF_VOL_1_2V = 0x40 ,
  REF_VOL_2_5V = 0x0 , REF_VOL_1_2V = 0x40 , REF_VOL_2_5V = 0x0 , REF_VOL_1_2V = 0x40 ,
  REF_VOL_2_5V = 0x0 , REF_VOL_1_2V = 0x40 , REF_VOL_2_5V = 0x0 , REF_VOL_1_2V = 0x40
}
 
enum  CONDITION {
  LOWER = 0x0 , HIGHER = 0x01 , RANGE = 0x02 , LOWER = 0x0 ,
  HIGHER = 0x01 , RANGE = 0x02 , LOWER = 0x0 , HIGHER = 0x01 ,
  RANGE = 0x02 , LOWER = 0x0 , HIGHER = 0x01 , RANGE = 0x02 ,
  LOWER = 0x0 , HIGHER = 0x01 , RANGE = 0x02 , LOWER = 0x0 ,
  HIGHER = 0x01 , RANGE = 0x02 , LOWER = 0x0 , HIGHER = 0x01 ,
  RANGE = 0x02
}
 

Functions

 LOG_MODULE_REGISTER (plat_class)
 
uint8_t get_system_class ()
 
CARD_STATUS get_1ou_status ()
 
CARD_STATUS get_2ou_status ()
 
uint8_t get_board_revision ()
 
uint8_t get_hsc_module ()
 
bool get_adc_voltage (int channel, float *voltage)
 
void init_platform_config ()
 

Variables

struct ADC_INFO adc_info [NUMBER_OF_ADC_CHANNEL]
 
struct _1OU_CARD_MAPPING_TABLE _1ou_card_mapping_table []
 

Macro Definition Documentation

◆ AST1030_ADC_BASE_ADDR

#define AST1030_ADC_BASE_ADDR   0x7e6e9000

◆ CPLD_1OU_CARD_DETECTION

#define CPLD_1OU_CARD_DETECTION   0x09

◆ CPLD_2OU_EXPANSION_CARD_REG

#define CPLD_2OU_EXPANSION_CARD_REG   0x06

◆ CPLD_ADDR

#define CPLD_ADDR   0x21

◆ CPLD_BOARD_REV_ID_REG

#define CPLD_BOARD_REV_ID_REG   0x08

◆ CPLD_CLASS_TYPE_REG

#define CPLD_CLASS_TYPE_REG   0x05

◆ I2C_DATA_SIZE

#define I2C_DATA_SIZE   5

◆ NUMBER_OF_ADC_CHANNEL

#define NUMBER_OF_ADC_CHANNEL   16

Enumeration Type Documentation

◆ ADC_REF_VOL_SELECTION

Enumerator
REF_VOL_2_5V 
REF_VOL_1_2V 
REF_VOL_2_5V 
REF_VOL_1_2V 
REF_VOL_2_5V 
REF_VOL_1_2V 
REF_VOL_2_5V 
REF_VOL_1_2V 
REF_VOL_2_5V 
REF_VOL_1_2V 
REF_VOL_2_5V 
REF_VOL_1_2V 
REF_VOL_2_5V 
REF_VOL_1_2V 
REF_VOL_2_5V 
REF_VOL_1_2V 
REF_VOL_2_5V 
REF_VOL_1_2V 
REF_VOL_2_5V 
REF_VOL_1_2V 

◆ CONDITION

enum CONDITION
Enumerator
LOWER 
HIGHER 
RANGE 
LOWER 
HIGHER 
RANGE 
LOWER 
HIGHER 
RANGE 
LOWER 
HIGHER 
RANGE 
LOWER 
HIGHER 
RANGE 
LOWER 
HIGHER 
RANGE 
LOWER 
HIGHER 
RANGE 

Function Documentation

◆ get_1ou_status()

CARD_STATUS get_1ou_status ( )

◆ get_2ou_status()

CARD_STATUS get_2ou_status ( )

◆ get_adc_voltage()

bool get_adc_voltage ( int  channel,
float *  voltage 
)

◆ get_board_revision()

uint8_t get_board_revision ( )

◆ get_hsc_module()

uint8_t get_hsc_module ( )

◆ get_system_class()

uint8_t get_system_class ( )

◆ init_platform_config()

void init_platform_config ( )

◆ LOG_MODULE_REGISTER()

LOG_MODULE_REGISTER ( plat_class  )

Variable Documentation

◆ _1ou_card_mapping_table

struct _1OU_CARD_MAPPING_TABLE _1ou_card_mapping_table[]
Initial value:
= {
}
@ RANGE
Definition: plat_class.c:76
@ LOWER
Definition: plat_class.c:74
@ TYPE_1OU_EXP_WITH_6_M2
Definition: plat_class.h:40
@ TYPE_1OU_RAINBOW_FALLS
Definition: plat_class.h:41
@ TYPE_1OU_EXP_WITH_NIC
Definition: plat_class.h:44
@ TYPE_1OU_SI_TEST_CARD
Definition: plat_class.h:39
@ TYPE_1OU_VERNAL_FALLS_WITH_TI
Definition: plat_class.h:42
@ TYPE_1OU_WAIMANO_FALLS
Definition: plat_class.h:67
@ TYPE_1OU_EXP_WITH_E1S
Definition: plat_class.h:56

◆ adc_info

Initial value:
= {
{ 0x10, 0 }, { 0x10, 16 }, { 0x14, 0 }, { 0x14, 16 }, { 0x18, 0 }, { 0x18, 16 },
{ 0x1C, 0 }, { 0x1C, 16 }, { 0x110, 0 }, { 0x110, 16 }, { 0x114, 0 }, { 0x114, 16 },
{ 0x118, 0 }, { 0x118, 16 }, { 0x11C, 0 }, { 0x11C, 16 }
}