Added display of fan status and temperature sensors.
This commit is contained in:
@@ -1,3 +1,5 @@
|
||||
#pragma once
|
||||
|
||||
#define ICX3_I2C_ADDR 0x2D
|
||||
|
||||
#define ICX3_REG_FANCONTROL 80
|
||||
@@ -11,8 +13,7 @@
|
||||
#define ICX3_MAX_FANS 4
|
||||
#define ICX3_NUM_TEMP_SENSORS 9
|
||||
|
||||
|
||||
struct icx3_fancontrol {
|
||||
struct icx3_fan_control {
|
||||
unsigned char length;
|
||||
unsigned char fanmode;
|
||||
unsigned short rpm_offset;
|
||||
@@ -21,12 +22,13 @@ struct icx3_fancontrol {
|
||||
unsigned short rpm_status;
|
||||
};
|
||||
|
||||
struct icx3_tempsensors {
|
||||
struct icx3_temp_sensors {
|
||||
unsigned char length;
|
||||
unsigned char data[18];
|
||||
};
|
||||
|
||||
struct icx3_info {
|
||||
unsigned char length;
|
||||
unsigned char reserved;
|
||||
unsigned char slave_address;
|
||||
unsigned char product_id;
|
||||
@@ -35,45 +37,45 @@ struct icx3_info {
|
||||
};
|
||||
|
||||
enum icx3_product_id {
|
||||
ICX3_IAP = 160,
|
||||
ICX3_E227_E228_FTW3 = 2,
|
||||
ICX3_E230_FTW3 = 4,
|
||||
ICX3_E227_E228_FTW3_HYBRID = 8,
|
||||
ICX3_E227_E228_FTW3_HC = 9,
|
||||
ICX3_E221_E222_XC3 = 1,
|
||||
ICX3_E229_XC3 = 5,
|
||||
ICX3_E221_E222_XC3_HYBRID = 6,
|
||||
ICX3_E221_E222_XC3_HC = 7,
|
||||
ICX3_IAP_KINGPIN = 161,
|
||||
ICX3_E223_KINGPIN_HYBRID = 3,
|
||||
ICX3_E223_KINGPIN_HC = 10,
|
||||
ICX3_IAP_KINGPIN_E251 = 165,
|
||||
ICX3_E251_KINGPIN_HYBRID = 19,
|
||||
ICX3_E251_KINGPIN_HC = 26,
|
||||
ICX3_IAP_LPC5516 = 164,
|
||||
ICX3_E250_FTW3 = 50,
|
||||
ICX3_E250_FTW3_HYBRID = 56,
|
||||
ICX3_IAP_LPC54113 = 162,
|
||||
ICX3_E227_E228_FTW3_LPC54113 = 18,
|
||||
ICX3_E227_E228_FTW3_HYBRID_LPC54113 = 24,
|
||||
ICX3_E230_FTW3_LPC54113 = 20,
|
||||
ICX3_E222_XC3_LPC54113 = 17,
|
||||
ICX3_E229_XC3_LPC54113 = 21,
|
||||
ICX3_IAP_STM32L431 = 163,
|
||||
ICX3_E230_E238_FTW3_STM32L431 = 36,
|
||||
ICX3_E221_XC3_STM32L431 = 33,
|
||||
ICX3_E229_E237_XC3_STM32L431 = 37,
|
||||
ICX3_NONE = 0
|
||||
}
|
||||
ICX3_PRODUCT_IAP = 160,
|
||||
ICX3_PRODUCT_E227_E228_FTW3 = 2,
|
||||
ICX3_PRODUCT_E230_FTW3 = 4,
|
||||
ICX3_PRODUCT_E227_E228_FTW3_HYBRID = 8,
|
||||
ICX3_PRODUCT_E227_E228_FTW3_HC = 9,
|
||||
ICX3_PRODUCT_E221_E222_XC3 = 1,
|
||||
ICX3_PRODUCT_E229_XC3 = 5,
|
||||
ICX3_PRODUCT_E221_E222_XC3_HYBRID = 6,
|
||||
ICX3_PRODUCT_E221_E222_XC3_HC = 7,
|
||||
ICX3_PRODUCT_IAP_KINGPIN = 161,
|
||||
ICX3_PRODUCT_E223_KINGPIN_HYBRID = 3,
|
||||
ICX3_PRODUCT_E223_KINGPIN_HC = 10,
|
||||
ICX3_PRODUCT_IAP_KINGPIN_E251 = 165,
|
||||
ICX3_PRODUCT_E251_KINGPIN_HYBRID = 19,
|
||||
ICX3_PRODUCT_E251_KINGPIN_HC = 26,
|
||||
ICX3_PRODUCT_IAP_LPC5516 = 164,
|
||||
ICX3_PRODUCT_E250_FTW3 = 50,
|
||||
ICX3_PRODUCT_E250_FTW3_HYBRID = 56,
|
||||
ICX3_PRODUCT_IAP_LPC54113 = 162,
|
||||
ICX3_PRODUCT_E227_E228_FTW3_LPC54113 = 18,
|
||||
ICX3_PRODUCT_E227_E228_FTW3_HYBRID_LPC54113 = 24,
|
||||
ICX3_PRODUCT_E230_FTW3_LPC54113 = 20,
|
||||
ICX3_PRODUCT_E222_XC3_LPC54113 = 17,
|
||||
ICX3_PRODUCT_E229_XC3_LPC54113 = 21,
|
||||
ICX3_PRODUCT_IAP_STM32L431 = 163,
|
||||
ICX3_PRODUCT_E230_E238_FTW3_STM32L431 = 36,
|
||||
ICX3_PRODUCT_E221_XC3_STM32L431 = 33,
|
||||
ICX3_PRODUCT_E229_E237_XC3_STM32L431 = 37,
|
||||
ICX3_PRODUCT_NONE = 0
|
||||
};
|
||||
|
||||
const char *icx3_fan_names[] = {
|
||||
static char *icx3_fan_names[] = {
|
||||
"Fan 1",
|
||||
"Fan 2",
|
||||
"Fan 3",
|
||||
"Ext. fan"
|
||||
};
|
||||
|
||||
const char *icx3_fan_mode_names[] = {
|
||||
static char *icx3_fan_mode_names[] = {
|
||||
"Default",
|
||||
"Auto",
|
||||
"Manual",
|
||||
@@ -82,7 +84,7 @@ const char *icx3_fan_mode_names[] = {
|
||||
"Mode 3"
|
||||
};
|
||||
|
||||
const char *icx3_temp_sensor_names[] = {
|
||||
static char *icx3_temp_sensor_names[] = {
|
||||
"GPU2",
|
||||
"MEM1",
|
||||
"MEM2",
|
||||
@@ -94,4 +96,6 @@ const char *icx3_temp_sensor_names[] = {
|
||||
"PWR5",
|
||||
};
|
||||
|
||||
enum icx3_product_id check_for_icx3(char *i2c_dev_path);
|
||||
enum icx3_product_id check_for_icx3(char *i2c_dev_path);
|
||||
void print_icx3_fans(char *i2c_dev_path);
|
||||
void print_icx3_temps(char *i2c_dev_path);
|
||||
|
||||
Reference in New Issue
Block a user