• Home
  • Raw
  • Download

Lines Matching refs:pchild

364 static int envctrl_read_cpu_info(int cpu, struct i2c_child_t *pchild,  in envctrl_read_cpu_info()  argument
373 if (pchild->mon_type[i] == mon_type) { in envctrl_read_cpu_info()
384 data = envctrl_i2c_read_8591((unsigned char)pchild->addr, in envctrl_read_cpu_info()
385 (unsigned char)pchild->chnl_array[i].chnl_no); in envctrl_read_cpu_info()
388 tbl = pchild->tables + pchild->tblprop_array[i].offset; in envctrl_read_cpu_info()
390 return envctrl_i2c_data_translate(data, pchild->tblprop_array[i].type, in envctrl_read_cpu_info()
391 pchild->tblprop_array[i].scale, in envctrl_read_cpu_info()
399 static int envctrl_read_noncpu_info(struct i2c_child_t *pchild, in envctrl_read_noncpu_info() argument
407 if (pchild->mon_type[i] == mon_type) in envctrl_read_noncpu_info()
415 data = envctrl_i2c_read_8591((unsigned char)pchild->addr, in envctrl_read_noncpu_info()
416 (unsigned char)pchild->chnl_array[i].chnl_no); in envctrl_read_noncpu_info()
419 tbl = pchild->tables + pchild->tblprop_array[i].offset; in envctrl_read_noncpu_info()
421 return envctrl_i2c_data_translate(data, pchild->tblprop_array[i].type, in envctrl_read_noncpu_info()
422 pchild->tblprop_array[i].scale, in envctrl_read_noncpu_info()
429 static int envctrl_i2c_fan_status(struct i2c_child_t *pchild, in envctrl_i2c_fan_status() argument
436 tmp = data & pchild->fan_mask; in envctrl_i2c_fan_status()
438 if (tmp == pchild->fan_mask) { in envctrl_i2c_fan_status()
452 if (pchild->fan_mask & chnls_mask[i]) { in envctrl_i2c_fan_status()
468 static int envctrl_i2c_globaladdr(struct i2c_child_t *pchild, in envctrl_i2c_globaladdr() argument
493 static unsigned char envctrl_i2c_voltage_status(struct i2c_child_t *pchild, in envctrl_i2c_voltage_status() argument
500 tmp = data & pchild->voltage_mask; in envctrl_i2c_voltage_status()
503 if (tmp == pchild->voltage_mask) { in envctrl_i2c_voltage_status()
512 if (pchild->voltage_mask & chnls_mask[i]) { in envctrl_i2c_voltage_status()
541 struct i2c_child_t *pchild; in envctrl_read() local
572 if (!(pchild = envctrl_get_i2c_child(ENVCTRL_MTHRBDTEMP_MON))) in envctrl_read()
574 ret = envctrl_read_noncpu_info(pchild, ENVCTRL_MTHRBDTEMP_MON, data); in envctrl_read()
580 if (!(pchild = envctrl_get_i2c_child(ENVCTRL_CPUTEMP_MON))) in envctrl_read()
582 ret = envctrl_read_cpu_info(read_cpu, pchild, ENVCTRL_CPUTEMP_MON, data); in envctrl_read()
590 if (!(pchild = envctrl_get_i2c_child(ENVCTRL_CPUVOLTAGE_MON))) in envctrl_read()
592 ret = envctrl_read_cpu_info(read_cpu, pchild, ENVCTRL_CPUVOLTAGE_MON, data); in envctrl_read()
600 if (!(pchild = envctrl_get_i2c_child(ENVCTRL_SCSITEMP_MON))) in envctrl_read()
602 ret = envctrl_read_noncpu_info(pchild, ENVCTRL_SCSITEMP_MON, data); in envctrl_read()
608 if (!(pchild = envctrl_get_i2c_child(ENVCTRL_ETHERTEMP_MON))) in envctrl_read()
610 ret = envctrl_read_noncpu_info(pchild, ENVCTRL_ETHERTEMP_MON, data); in envctrl_read()
616 if (!(pchild = envctrl_get_i2c_child(ENVCTRL_FANSTAT_MON))) in envctrl_read()
618 data[0] = envctrl_i2c_read_8574(pchild->addr); in envctrl_read()
619 ret = envctrl_i2c_fan_status(pchild,data[0], data); in envctrl_read()
625 if (!(pchild = envctrl_get_i2c_child(ENVCTRL_GLOBALADDR_MON))) in envctrl_read()
627 data[0] = envctrl_i2c_read_8574(pchild->addr); in envctrl_read()
628 ret = envctrl_i2c_globaladdr(pchild, data[0], data); in envctrl_read()
634 if (!(pchild = envctrl_get_i2c_child(ENVCTRL_VOLTAGESTAT_MON))) in envctrl_read()
636 if (!(pchild = envctrl_get_i2c_child(ENVCTRL_GLOBALADDR_MON))) in envctrl_read()
638 data[0] = envctrl_i2c_read_8574(pchild->addr); in envctrl_read()
639 ret = envctrl_i2c_voltage_status(pchild, data[0], data); in envctrl_read()
735 static void envctrl_set_mon(struct i2c_child_t *pchild, in envctrl_set_mon() argument
748 pchild->mon_type[chnl_no] = ENVCTRL_CPUTEMP_MON; in envctrl_set_mon()
754 pchild->mon_type[chnl_no] = ENVCTRL_CPUVOLTAGE_MON; in envctrl_set_mon()
757 pchild->mon_type[chnl_no] = ENVCTRL_MTHRBDTEMP_MON; in envctrl_set_mon()
760 pchild->mon_type[chnl_no] = ENVCTRL_SCSITEMP_MON; in envctrl_set_mon()
763 pchild->mon_type[chnl_no] = ENVCTRL_ETHERTEMP_MON; in envctrl_set_mon()
770 static void envctrl_init_adc(struct i2c_child_t *pchild, struct device_node *dp) in envctrl_init_adc() argument
781 envctrl_set_mon(pchild, pos, i++); in envctrl_init_adc()
799 static void envctrl_init_fanstat(struct i2c_child_t *pchild) in envctrl_init_fanstat() argument
804 for (i = 0; i < pchild->total_chnls; i++) in envctrl_init_fanstat()
805 pchild->fan_mask |= chnls_mask[(pchild->chnl_array[i]).chnl_no]; in envctrl_init_fanstat()
810 pchild->mon_type[0] = ENVCTRL_FANSTAT_MON; in envctrl_init_fanstat()
816 static void envctrl_init_globaladdr(struct i2c_child_t *pchild) in envctrl_init_globaladdr() argument
833 for (i = 0; i < pchild->total_chnls; i++) { in envctrl_init_globaladdr()
834 if (PCF8584_VOLTAGE_TYPE == pchild->chnl_array[i].type) { in envctrl_init_globaladdr()
835 pchild->voltage_mask |= chnls_mask[i]; in envctrl_init_globaladdr()
843 pchild->mon_type[0] = ENVCTRL_GLOBALADDR_MON; in envctrl_init_globaladdr()
847 static void envctrl_init_voltage_status(struct i2c_child_t *pchild) in envctrl_init_voltage_status() argument
852 for (i = 0; i < pchild->total_chnls; i++) in envctrl_init_voltage_status()
853 pchild->voltage_mask |= chnls_mask[(pchild->chnl_array[i]).chnl_no]; in envctrl_init_voltage_status()
858 pchild->mon_type[0] = ENVCTRL_VOLTAGESTAT_MON; in envctrl_init_voltage_status()
865 struct i2c_child_t *pchild) in envctrl_init_i2c_child() argument
872 memcpy(&pchild->addr, pval, len); in envctrl_init_i2c_child()
877 memcpy(pchild->tblprop_array, pval, len); in envctrl_init_i2c_child()
878 pchild->total_tbls = len / sizeof(struct pcf8584_tblprop); in envctrl_init_i2c_child()
879 for (i = 0; i < pchild->total_tbls; i++) { in envctrl_init_i2c_child()
880 if ((pchild->tblprop_array[i].size + pchild->tblprop_array[i].offset) > tbls_size) { in envctrl_init_i2c_child()
881 tbls_size = pchild->tblprop_array[i].size + pchild->tblprop_array[i].offset; in envctrl_init_i2c_child()
885 pchild->tables = kmalloc(tbls_size, GFP_KERNEL); in envctrl_init_i2c_child()
886 if (pchild->tables == NULL){ in envctrl_init_i2c_child()
895 memcpy(pchild->tables, pval, len); in envctrl_init_i2c_child()
905 if (ENVCTRL_CPCI_IGNORED_NODE == pchild->addr) { in envctrl_init_i2c_child()
912 pchild->mon_type[len] = ENVCTRL_NOMON; in envctrl_init_i2c_child()
920 memcpy(pchild->chnl_array, pval, len); in envctrl_init_i2c_child()
921 pchild->total_chnls = len / sizeof(struct pcf8584_channel); in envctrl_init_i2c_child()
923 for (i = 0; i < pchild->total_chnls; i++) { in envctrl_init_i2c_child()
924 switch (pchild->chnl_array[i].type) { in envctrl_init_i2c_child()
926 envctrl_init_adc(pchild, dp); in envctrl_init_i2c_child()
930 envctrl_init_globaladdr(pchild); in envctrl_init_i2c_child()
931 i = pchild->total_chnls; in envctrl_init_i2c_child()
935 envctrl_init_fanstat(pchild); in envctrl_init_i2c_child()
936 i = pchild->total_chnls; in envctrl_init_i2c_child()
940 if (pchild->i2ctype == I2C_ADC) { in envctrl_init_i2c_child()
941 envctrl_init_adc(pchild,dp); in envctrl_init_i2c_child()
943 envctrl_init_voltage_status(pchild); in envctrl_init_i2c_child()
945 i = pchild->total_chnls; in envctrl_init_i2c_child()