psu_type_t get_psu_type(int id, char* modelname, int modelname_len) { char *node = NULL; char model_name[I2C_PSU_MODEL_NAME_LEN + 1] = {0}; /* Check AC model name */ node = (id == PSU1_ID) ? PSU1_AC_HWMON_NODE(psu_model_name) : PSU2_AC_HWMON_NODE(psu_model_name); if (deviceNodeReadString(node, model_name, sizeof(model_name), 0) == 0) { if (strncmp(model_name, "CPR-4011-4M11", strlen("CPR-4011-4M11")) == 0) { if (modelname) { strncpy(modelname, model_name, modelname_len-1); } return PSU_TYPE_AC_F2B; } else if (strncmp(model_name, "CPR-4011-4M21", strlen("CPR-4011-4M21")) == 0) { if (modelname) { strncpy(modelname, model_name, modelname_len-1); } return PSU_TYPE_AC_B2F; } else if (strncmp(model_name, "CPR-6011-2M11", strlen("CPR-6011-2M11")) == 0) { if (modelname) { strncpy(modelname, model_name, modelname_len-1); } return PSU_TYPE_AC_F2B; } else if (strncmp(model_name, "CPR-6011-2M21", strlen("CPR-6011-2M21")) == 0) { if (modelname) { strncpy(modelname, model_name, modelname_len-1); } return PSU_TYPE_AC_B2F; } } /* Check DC model name */ memset(model_name, 0, sizeof(model_name)); node = (id == PSU1_ID) ? PSU1_DC_HWMON_NODE(psu_model_name) : PSU2_DC_HWMON_NODE(psu_model_name); if (deviceNodeReadString(node, model_name, sizeof(model_name), 0) == 0) { if (strncmp(model_name, "um400d01G", strlen("um400d01G")) == 0) { if (modelname) { strncpy(modelname, model_name, modelname_len-1); } return PSU_TYPE_DC_48V_B2F; } else if (strncmp(model_name, "um400d01-01G", strlen("um400d01-01G")) == 0) { if (modelname) { strncpy(modelname, model_name, modelname_len-1); } return PSU_TYPE_DC_48V_F2B; } } return PSU_TYPE_UNKNOWN; }
int onlp_ledi_info_get(onlp_oid_t id, onlp_led_info_t* info) { int local_id; char data[2] = {0}; char fullpath[50] = {0}; VALIDATE(id); local_id = ONLP_OID_ID_GET(id); /* get fullpath */ sprintf(fullpath, "%s%s/%s", prefix_path, last_path[local_id], filename); /* Set the onlp_oid_hdr_t and capabilities */ *info = linfo[ONLP_OID_ID_GET(id)]; /* Set LED mode */ if (deviceNodeReadString(fullpath, data, sizeof(data), 0) != 0) { DEBUG_PRINT("%s(%d)\r\n", __FUNCTION__, __LINE__); return ONLP_STATUS_E_INTERNAL; } info->mode = driver_to_onlp_led_mode(local_id, atoi(data)); /* Set the on/off status */ if (info->mode != ONLP_LED_MODE_OFF) { info->status |= ONLP_LED_STATUS_ON; } return ONLP_STATUS_OK; }
static int as5812_54x_sfp_node_read_int(char *node_path, int *value, int data_len) { int ret = 0; char buf[8] = {0}; *value = 0; ret = deviceNodeReadString(node_path, buf, sizeof(buf), data_len); if (ret == 0) { *value = atoi(buf); } return ret; }
static int psu_ym2651y_pmbus_info_get(int id, char *node, int *value) { int ret = 0; char buf[PSU_NODE_MAX_INT_LEN + 1] = {0}; char node_path[PSU_NODE_MAX_PATH_LEN] = {0}; *value = 0; if (PSU1_ID == id) { sprintf(node_path, "%s%s", PSU1_AC_PMBUS_PREFIX, node); } else { sprintf(node_path, "%s%s", PSU2_AC_PMBUS_PREFIX, node); } ret = deviceNodeReadString(node_path, buf, sizeof(buf), 0); if (ret == 0) { *value = atoi(buf); } return ret; }
psu_type_t get_psu_type(int id, char* modelname, int modelname_len) { char *node = NULL; char model_name[I2C_PSU_MODEL_NAME_LEN + 1] = {0}; char fan_dir[I2C_PSU_FAN_DIR_LEN + 1] = {0}; /* Check AC model name */ node = (id == PSU1_ID) ? PSU1_AC_HWMON_NODE(psu_model_name) : PSU2_AC_HWMON_NODE(psu_model_name); if (deviceNodeReadString(node, model_name, sizeof(model_name), 0) != 0) { return PSU_TYPE_UNKNOWN; } if(isspace(model_name[strlen(model_name)-1])) { model_name[strlen(model_name)-1] = 0; } if (strncmp(model_name, "YM-2651Y", 8) == 0) { if (modelname) { strncpy(modelname, model_name, 8); } node = (id == PSU1_ID) ? PSU1_AC_PMBUS_NODE(psu_fan_dir) : PSU2_AC_PMBUS_NODE(psu_fan_dir); if (deviceNodeReadString(node, fan_dir, sizeof(fan_dir), 0) != 0) { return PSU_TYPE_UNKNOWN; } if (strncmp(fan_dir, "F2B", strlen("F2B")) == 0) { return PSU_TYPE_AC_F2B; } if (strncmp(fan_dir, "B2F", strlen("B2F")) == 0) { return PSU_TYPE_AC_B2F; } } if (strncmp(model_name, "YM-2651V", 8) == 0) { if (modelname) { strncpy(modelname, model_name, 8); } node = (id == PSU1_ID) ? PSU1_AC_PMBUS_NODE(psu_fan_dir) : PSU2_AC_PMBUS_NODE(psu_fan_dir); if (deviceNodeReadString(node, fan_dir, sizeof(fan_dir), 0) != 0) { return PSU_TYPE_UNKNOWN; } if (strncmp(fan_dir, "F2B", strlen("F2B")) == 0) { return PSU_TYPE_DC_48V_F2B; } if (strncmp(fan_dir, "B2F", strlen("B2F")) == 0) { return PSU_TYPE_DC_48V_B2F; } } if (strncmp(model_name, "PSU-12V-750", 11) == 0) { if (modelname) { strncpy(modelname, model_name, 11); } node = (id == PSU1_ID) ? PSU1_AC_HWMON_NODE(psu_fan_dir) : PSU2_AC_HWMON_NODE(psu_fan_dir); if (deviceNodeReadString(node, fan_dir, sizeof(fan_dir), 0) != 0) { return PSU_TYPE_UNKNOWN; } if (strncmp(fan_dir, "F2B", 3) == 0) { return PSU_TYPE_DC_12V_F2B; } if (strncmp(fan_dir, "B2F", 3) == 0) { return PSU_TYPE_DC_12V_B2F; } if (strncmp(fan_dir, "NON", 3) == 0) { return PSU_TYPE_DC_12V_FANLESS; } } return PSU_TYPE_UNKNOWN; }