Lines Matching refs:ix

75 #define VT1211_REG_IN(ix)		(0x21 + (ix))  argument
76 #define VT1211_REG_IN_MIN(ix) ((ix) == 0 ? 0x3e : 0x2a + 2 * (ix)) argument
77 #define VT1211_REG_IN_MAX(ix) ((ix) == 0 ? 0x3d : 0x29 + 2 * (ix)) argument
85 #define VT1211_REG_FAN(ix) (0x29 + (ix)) argument
86 #define VT1211_REG_FAN_MIN(ix) (0x3b + (ix)) argument
91 #define VT1211_REG_PWM(ix) (0x60 + (ix)) argument
95 #define VT1211_REG_PWM_AUTO_PWM(ix, ap) (0x58 + 2 * (ix) - (ap)) argument
147 #define ISVOLT(ix, uch_config) ((ix) > 4 ? 1 : \ argument
148 !(((uch_config) >> ((ix) + 2)) & 1))
151 #define ISTEMP(ix, uch_config) ((ix) < 2 ? 1 : \ argument
152 ((uch_config) >> (ix)) & 1)
158 #define IN_FROM_REG(ix, reg) ((reg) < 3 ? 0 : (ix) == 5 ? \ argument
161 #define IN_TO_REG(ix, val) (clamp_val((ix) == 5 ? \ argument
172 #define TEMP_FROM_REG(ix, reg) ((ix) == 0 ? (reg) * 1000 : \ argument
173 (ix) == 1 ? (reg) < 51 ? 0 : \
176 #define TEMP_TO_REG(ix, val) clamp_val( \ argument
177 ((ix) == 0 ? ((val) + 500) / 1000 : \
178 (ix) == 1 ? ((val) + 500) / 1000 + 51 : \
257 int ix, val; in vt1211_update_device() local
267 for (ix = 0; ix < ARRAY_SIZE(data->in); ix++) { in vt1211_update_device()
268 if (ISVOLT(ix, data->uch_config)) { in vt1211_update_device()
269 data->in[ix] = vt1211_read8(data, in vt1211_update_device()
270 VT1211_REG_IN(ix)); in vt1211_update_device()
271 data->in_min[ix] = vt1211_read8(data, in vt1211_update_device()
272 VT1211_REG_IN_MIN(ix)); in vt1211_update_device()
273 data->in_max[ix] = vt1211_read8(data, in vt1211_update_device()
274 VT1211_REG_IN_MAX(ix)); in vt1211_update_device()
279 for (ix = 0; ix < ARRAY_SIZE(data->temp); ix++) { in vt1211_update_device()
280 if (ISTEMP(ix, data->uch_config)) { in vt1211_update_device()
281 data->temp[ix] = vt1211_read8(data, in vt1211_update_device()
282 regtemp[ix]); in vt1211_update_device()
283 data->temp_max[ix] = vt1211_read8(data, in vt1211_update_device()
284 regtempmax[ix]); in vt1211_update_device()
285 data->temp_hyst[ix] = vt1211_read8(data, in vt1211_update_device()
286 regtemphyst[ix]); in vt1211_update_device()
291 for (ix = 0; ix < ARRAY_SIZE(data->fan); ix++) { in vt1211_update_device()
292 data->fan[ix] = vt1211_read8(data, in vt1211_update_device()
293 VT1211_REG_FAN(ix)); in vt1211_update_device()
294 data->fan_min[ix] = vt1211_read8(data, in vt1211_update_device()
295 VT1211_REG_FAN_MIN(ix)); in vt1211_update_device()
296 data->pwm[ix] = vt1211_read8(data, in vt1211_update_device()
297 VT1211_REG_PWM(ix)); in vt1211_update_device()
319 for (ix = 0; ix < ARRAY_SIZE(data->pwm_auto_temp); ix++) { in vt1211_update_device()
320 data->pwm_auto_temp[ix] = vt1211_read8(data, in vt1211_update_device()
321 VT1211_REG_PWM_AUTO_TEMP(ix)); in vt1211_update_device()
353 int ix = sensor_attr_2->index; in show_in() local
359 res = IN_FROM_REG(ix, data->in[ix]); in show_in()
362 res = IN_FROM_REG(ix, data->in_min[ix]); in show_in()
365 res = IN_FROM_REG(ix, data->in_max[ix]); in show_in()
368 res = (data->alarms >> bitalarmin[ix]) & 1; in show_in()
384 int ix = sensor_attr_2->index; in set_in() local
396 data->in_min[ix] = IN_TO_REG(ix, val); in set_in()
397 vt1211_write8(data, VT1211_REG_IN_MIN(ix), data->in_min[ix]); in set_in()
400 data->in_max[ix] = IN_TO_REG(ix, val); in set_in()
401 vt1211_write8(data, VT1211_REG_IN_MAX(ix), data->in_max[ix]); in set_in()
427 int ix = sensor_attr_2->index; in show_temp() local
433 res = TEMP_FROM_REG(ix, data->temp[ix]); in show_temp()
436 res = TEMP_FROM_REG(ix, data->temp_max[ix]); in show_temp()
439 res = TEMP_FROM_REG(ix, data->temp_hyst[ix]); in show_temp()
442 res = (data->alarms >> bitalarmtemp[ix]) & 1; in show_temp()
458 int ix = sensor_attr_2->index; in set_temp() local
470 data->temp_max[ix] = TEMP_TO_REG(ix, val); in set_temp()
471 vt1211_write8(data, regtempmax[ix], in set_temp()
472 data->temp_max[ix]); in set_temp()
475 data->temp_hyst[ix] = TEMP_TO_REG(ix, val); in set_temp()
476 vt1211_write8(data, regtemphyst[ix], in set_temp()
477 data->temp_hyst[ix]); in set_temp()
503 int ix = sensor_attr_2->index; in show_fan() local
509 res = RPM_FROM_REG(data->fan[ix], data->fan_div[ix]); in show_fan()
512 res = RPM_FROM_REG(data->fan_min[ix], data->fan_div[ix]); in show_fan()
515 res = DIV_FROM_REG(data->fan_div[ix]); in show_fan()
518 res = (data->alarms >> bitalarmfan[ix]) & 1; in show_fan()
534 int ix = sensor_attr_2->index; in set_fan() local
554 data->fan_min[ix] = RPM_TO_REG(val, data->fan_div[ix]); in set_fan()
555 vt1211_write8(data, VT1211_REG_FAN_MIN(ix), in set_fan()
556 data->fan_min[ix]); in set_fan()
561 data->fan_div[ix] = 0; in set_fan()
564 data->fan_div[ix] = 1; in set_fan()
567 data->fan_div[ix] = 2; in set_fan()
570 data->fan_div[ix] = 3; in set_fan()
609 int ix = sensor_attr_2->index; in show_pwm() local
615 res = data->pwm[ix]; in show_pwm()
618 res = ((data->pwm_ctl[ix] >> 3) & 1) ? 2 : 0; in show_pwm()
624 res = (data->pwm_ctl[ix] & 7) + 1; in show_pwm()
640 int ix = sensor_attr_2->index; in set_pwm() local
664 data->pwm_ctl[ix] &= 7; in set_pwm()
669 if ((data->pwm_ctl[ix ^ 1] & 1) == 0) in set_pwm()
673 data->pwm_ctl[ix] |= 8; in set_pwm()
720 data->pwm_ctl[ix] = (data->pwm_ctl[ix] & 8) | (val - 1); in set_pwm()
764 int ix = sensor_attr_2->index; in show_pwm_auto_point_temp() local
767 return sprintf(buf, "%d\n", TEMP_FROM_REG(data->pwm_ctl[ix] & 7, in show_pwm_auto_point_temp()
778 int ix = sensor_attr_2->index; in set_pwm_auto_point_temp() local
796 data->pwm_auto_temp[ap] = TEMP_TO_REG(data->pwm_ctl[ix] & 7, val); in set_pwm_auto_point_temp()
828 int ix = sensor_attr_2->index; in show_pwm_auto_point_pwm() local
831 return sprintf(buf, "%d\n", data->pwm_auto_pwm[ix][ap]); in show_pwm_auto_point_pwm()
841 int ix = sensor_attr_2->index; in set_pwm_auto_point_pwm() local
851 data->pwm_auto_pwm[ix][ap] = clamp_val(val, 0, 255); in set_pwm_auto_point_pwm()
852 vt1211_write8(data, VT1211_REG_PWM_AUTO_PWM(ix, ap), in set_pwm_auto_point_pwm()
853 data->pwm_auto_pwm[ix][ap]); in set_pwm_auto_point_pwm()
918 #define SENSOR_ATTR_IN(ix) \ argument
919 { SENSOR_ATTR_2(in##ix##_input, S_IRUGO, \
920 show_in, NULL, SHOW_IN_INPUT, ix), \
921 SENSOR_ATTR_2(in##ix##_min, S_IRUGO | S_IWUSR, \
922 show_in, set_in, SHOW_SET_IN_MIN, ix), \
923 SENSOR_ATTR_2(in##ix##_max, S_IRUGO | S_IWUSR, \
924 show_in, set_in, SHOW_SET_IN_MAX, ix), \
925 SENSOR_ATTR_2(in##ix##_alarm, S_IRUGO, \
926 show_in, NULL, SHOW_IN_ALARM, ix) \
964 #define SENSOR_ATTR_TEMP(ix) \ argument
965 { SENSOR_ATTR_2(temp##ix##_input, S_IRUGO, \
966 show_temp, NULL, SHOW_TEMP_INPUT, ix-1), \
967 SENSOR_ATTR_2(temp##ix##_max, S_IRUGO | S_IWUSR, \
968 show_temp, set_temp, SHOW_SET_TEMP_MAX, ix-1), \
969 SENSOR_ATTR_2(temp##ix##_max_hyst, S_IRUGO | S_IWUSR, \
970 show_temp, set_temp, SHOW_SET_TEMP_MAX_HYST, ix-1), \
971 SENSOR_ATTR_2(temp##ix##_alarm, S_IRUGO, \
972 show_temp, NULL, SHOW_TEMP_ALARM, ix-1) \
1013 #define SENSOR_ATTR_FAN(ix) \ argument
1014 SENSOR_ATTR_2(fan##ix##_input, S_IRUGO, \
1015 show_fan, NULL, SHOW_FAN_INPUT, ix-1), \
1016 SENSOR_ATTR_2(fan##ix##_min, S_IRUGO | S_IWUSR, \
1017 show_fan, set_fan, SHOW_SET_FAN_MIN, ix-1), \
1018 SENSOR_ATTR_2(fan##ix##_div, S_IRUGO | S_IWUSR, \
1019 show_fan, set_fan, SHOW_SET_FAN_DIV, ix-1), \
1020 SENSOR_ATTR_2(fan##ix##_alarm, S_IRUGO, \
1021 show_fan, NULL, SHOW_FAN_ALARM, ix-1)
1023 #define SENSOR_ATTR_PWM(ix) \ argument
1024 SENSOR_ATTR_2(pwm##ix, S_IRUGO, \
1025 show_pwm, NULL, SHOW_PWM, ix-1), \
1026 SENSOR_ATTR_2(pwm##ix##_enable, S_IRUGO | S_IWUSR, \
1027 show_pwm, set_pwm, SHOW_SET_PWM_ENABLE, ix-1), \
1028 SENSOR_ATTR_2(pwm##ix##_auto_channels_temp, S_IRUGO | S_IWUSR, \
1029 show_pwm, set_pwm, SHOW_SET_PWM_AUTO_CHANNELS_TEMP, ix-1)
1031 #define SENSOR_ATTR_PWM_FREQ(ix) \ argument
1032 SENSOR_ATTR_2(pwm##ix##_freq, S_IRUGO | S_IWUSR, \
1033 show_pwm, set_pwm, SHOW_SET_PWM_FREQ, ix-1)
1035 #define SENSOR_ATTR_PWM_FREQ_RO(ix) \ argument
1036 SENSOR_ATTR_2(pwm##ix##_freq, S_IRUGO, \
1037 show_pwm, NULL, SHOW_SET_PWM_FREQ, ix-1)
1039 #define SENSOR_ATTR_PWM_AUTO_POINT_TEMP(ix, ap) \ argument
1040 SENSOR_ATTR_2(pwm##ix##_auto_point##ap##_temp, S_IRUGO | S_IWUSR, \
1042 ap-1, ix-1)
1044 #define SENSOR_ATTR_PWM_AUTO_POINT_TEMP_RO(ix, ap) \ argument
1045 SENSOR_ATTR_2(pwm##ix##_auto_point##ap##_temp, S_IRUGO, \
1047 ap-1, ix-1)
1049 #define SENSOR_ATTR_PWM_AUTO_POINT_PWM(ix, ap) \ argument
1050 SENSOR_ATTR_2(pwm##ix##_auto_point##ap##_pwm, S_IRUGO | S_IWUSR, \
1052 ap-1, ix-1)
1054 #define SENSOR_ATTR_PWM_AUTO_POINT_PWM_RO(ix, ap) \ argument
1055 SENSOR_ATTR_2(pwm##ix##_auto_point##ap##_pwm, S_IRUGO, \
1057 ap-1, ix-1)