Symbol: fan
arch/powerpc/platforms/44x/warp.c
248
u32 fan = in_be32(fpga + 0x34) & (1 << 14);
arch/powerpc/platforms/44x/warp.c
250
if (fan_state != fan) {
arch/powerpc/platforms/44x/warp.c
251
fan_state = fan;
arch/powerpc/platforms/44x/warp.c
252
if (fan)
drivers/acpi/fan_attr.c
100
for (i = 0; i < fan->fps_count; ++i) {
drivers/acpi/fan_attr.c
101
struct acpi_fan_fps *fps = &fan->fps[i];
drivers/acpi/fan_attr.c
114
sysfs_remove_file(&device->dev.kobj, &fan->fps[j].dev_attr.attr);
drivers/acpi/fan_attr.c
122
sysfs_remove_file(&device->dev.kobj, &fan->fine_grain_control.attr);
drivers/acpi/fan_attr.c
125
sysfs_remove_file(&device->dev.kobj, &fan->fst_speed.attr);
drivers/acpi/fan_attr.c
132
struct acpi_fan *fan = acpi_driver_data(device);
drivers/acpi/fan_attr.c
135
sysfs_remove_file(&device->dev.kobj, &fan->fst_speed.attr);
drivers/acpi/fan_attr.c
137
if (!fan->acpi4)
drivers/acpi/fan_attr.c
140
for (i = 0; i < fan->fps_count; ++i)
drivers/acpi/fan_attr.c
141
sysfs_remove_file(&device->dev.kobj, &fan->fps[i].dev_attr.attr);
drivers/acpi/fan_attr.c
143
sysfs_remove_file(&device->dev.kobj, &fan->fine_grain_control.attr);
drivers/acpi/fan_attr.c
68
struct acpi_fan *fan = acpi_driver_data(acpi_dev);
drivers/acpi/fan_attr.c
70
return sysfs_emit(buf, "%d\n", fan->fif.fine_grain_ctrl);
drivers/acpi/fan_attr.c
75
struct acpi_fan *fan = acpi_driver_data(device);
drivers/acpi/fan_attr.c
79
sysfs_attr_init(&fan->fst_speed.attr);
drivers/acpi/fan_attr.c
80
fan->fst_speed.show = show_fan_speed;
drivers/acpi/fan_attr.c
81
fan->fst_speed.store = NULL;
drivers/acpi/fan_attr.c
82
fan->fst_speed.attr.name = "fan_speed_rpm";
drivers/acpi/fan_attr.c
83
fan->fst_speed.attr.mode = 0444;
drivers/acpi/fan_attr.c
84
status = sysfs_create_file(&device->dev.kobj, &fan->fst_speed.attr);
drivers/acpi/fan_attr.c
88
if (!fan->acpi4)
drivers/acpi/fan_attr.c
91
sysfs_attr_init(&fan->fine_grain_control.attr);
drivers/acpi/fan_attr.c
92
fan->fine_grain_control.show = show_fine_grain_control;
drivers/acpi/fan_attr.c
93
fan->fine_grain_control.store = NULL;
drivers/acpi/fan_attr.c
94
fan->fine_grain_control.attr.name = "fine_grain_control";
drivers/acpi/fan_attr.c
95
fan->fine_grain_control.attr.mode = 0444;
drivers/acpi/fan_attr.c
96
status = sysfs_create_file(&device->dev.kobj, &fan->fine_grain_control.attr);
drivers/acpi/fan_core.c
110
struct acpi_fan *fan = acpi_driver_data(device);
drivers/acpi/fan_core.c
118
if (fan->fif.fine_grain_ctrl) {
drivers/acpi/fan_core.c
125
*state = (int) fst.control / fan->fif.step_size;
drivers/acpi/fan_core.c
130
for (i = 0; i < fan->fps_count; i++) {
drivers/acpi/fan_core.c
131
if (fst.control == fan->fps[i].control)
drivers/acpi/fan_core.c
134
if (i == fan->fps_count) {
drivers/acpi/fan_core.c
163
struct acpi_fan *fan = acpi_driver_data(device);
drivers/acpi/fan_core.c
165
if (fan->acpi4)
drivers/acpi/fan_core.c
182
struct acpi_fan *fan = acpi_driver_data(device);
drivers/acpi/fan_core.c
187
if (fan->fif.fine_grain_ctrl)
drivers/acpi/fan_core.c
188
max_state = 100 / fan->fif.step_size;
drivers/acpi/fan_core.c
190
max_state = fan->fps_count - 1;
drivers/acpi/fan_core.c
195
if (fan->fif.fine_grain_ctrl) {
drivers/acpi/fan_core.c
196
value *= fan->fif.step_size;
drivers/acpi/fan_core.c
198
if (value + fan->fif.step_size > 100)
drivers/acpi/fan_core.c
201
value = fan->fps[state].control;
drivers/acpi/fan_core.c
217
struct acpi_fan *fan = acpi_driver_data(device);
drivers/acpi/fan_core.c
219
if (fan->acpi4)
drivers/acpi/fan_core.c
239
struct acpi_fan *fan = acpi_driver_data(device);
drivers/acpi/fan_core.c
264
fan->fif.revision = fields[0];
drivers/acpi/fan_core.c
265
fan->fif.fine_grain_ctrl = fields[1];
drivers/acpi/fan_core.c
266
fan->fif.step_size = fields[2];
drivers/acpi/fan_core.c
267
fan->fif.low_speed_notification = fields[3];
drivers/acpi/fan_core.c
270
if (!fan->fif.step_size)
drivers/acpi/fan_core.c
271
fan->fif.step_size = 1;
drivers/acpi/fan_core.c
273
else if (fan->fif.step_size > 9)
drivers/acpi/fan_core.c
274
fan->fif.step_size = 9;
drivers/acpi/fan_core.c
289
struct acpi_fan *fan = acpi_driver_data(device);
drivers/acpi/fan_core.c
306
fan->fps_count = obj->package.count - 1; /* minus revision field */
drivers/acpi/fan_core.c
307
fan->fps = devm_kcalloc(&device->dev,
drivers/acpi/fan_core.c
308
fan->fps_count, sizeof(struct acpi_fan_fps),
drivers/acpi/fan_core.c
310
if (!fan->fps) {
drivers/acpi/fan_core.c
315
for (i = 0; i < fan->fps_count; i++) {
drivers/acpi/fan_core.c
318
&fan->fps[i] };
drivers/acpi/fan_core.c
328
sort(fan->fps, fan->fps_count, sizeof(*fan->fps),
drivers/acpi/fan_core.c
345
struct acpi_fan *fan = dev_get_drvdata(dev);
drivers/acpi/fan_core.c
349
if (!acpi_check_dsm(fan->handle, &acpi_fan_microsoft_guid, 0,
drivers/acpi/fan_core.c
356
obj = acpi_evaluate_dsm_typed(fan->handle, &acpi_fan_microsoft_guid, 0,
drivers/acpi/fan_core.c
365
fan->fan_trip_granularity = obj->integer.value;
drivers/acpi/fan_core.c
388
struct acpi_fan *fan = dev_get_drvdata(dev);
drivers/acpi/fan_core.c
398
obj = acpi_evaluate_dsm(fan->handle, &acpi_fan_microsoft_guid, 0,
drivers/acpi/fan_core.c
407
struct acpi_fan *fan = dev_get_drvdata(dev);
drivers/acpi/fan_core.c
410
if (!fan->fan_trip_granularity)
drivers/acpi/fan_core.c
429
ret = acpi_fan_dsm_set_trip_points(dev, fan->fan_trip_granularity, 0);
drivers/acpi/fan_core.c
433
return acpi_fan_dsm_set_trip_points(dev, fan->fan_trip_granularity * 3,
drivers/acpi/fan_core.c
434
fan->fan_trip_granularity * 2);
drivers/acpi/fan_core.c
439
struct acpi_fan *fan = dev_get_drvdata(dev);
drivers/acpi/fan_core.c
442
if (!fan->fan_trip_granularity)
drivers/acpi/fan_core.c
448
upper = roundup_u64(fst->speed + min_trip_distance, fan->fan_trip_granularity);
drivers/acpi/fan_core.c
456
lower = rounddown((u32)fst->speed - min_trip_distance, fan->fan_trip_granularity);
drivers/acpi/fan_core.c
494
struct acpi_fan *fan = data;
drivers/acpi/fan_core.c
496
acpi_remove_notify_handler(fan->handle, ACPI_DEVICE_NOTIFY, acpi_fan_notify_handler);
drivers/acpi/fan_core.c
501
struct acpi_fan *fan = dev_get_drvdata(dev);
drivers/acpi/fan_core.c
504
status = acpi_install_notify_handler(fan->handle, ACPI_DEVICE_NOTIFY,
drivers/acpi/fan_core.c
509
return devm_add_action_or_reset(dev, acpi_fan_notify_remove, fan);
drivers/acpi/fan_core.c
516
struct acpi_fan *fan;
drivers/acpi/fan_core.c
523
fan = devm_kzalloc(&pdev->dev, sizeof(*fan), GFP_KERNEL);
drivers/acpi/fan_core.c
524
if (!fan) {
drivers/acpi/fan_core.c
529
fan->handle = device->handle;
drivers/acpi/fan_core.c
530
device->driver_data = fan;
drivers/acpi/fan_core.c
531
platform_set_drvdata(pdev, fan);
drivers/acpi/fan_core.c
534
fan->has_fst = true;
drivers/acpi/fan_core.c
535
fan->acpi4 = acpi_has_method(device->handle, "_FIF") &&
drivers/acpi/fan_core.c
540
if (fan->acpi4) {
drivers/acpi/fan_core.c
550
if (fan->has_fst) {
drivers/acpi/fan_core.c
574
if (!fan->acpi4) {
drivers/acpi/fan_core.c
58
struct acpi_fan *fan = acpi_driver_data(device);
drivers/acpi/fan_core.c
596
fan->cdev = cdev;
drivers/acpi/fan_core.c
60
if (fan->acpi4) {
drivers/acpi/fan_core.c
61
if (fan->fif.fine_grain_ctrl)
drivers/acpi/fan_core.c
62
*state = 100 / fan->fif.step_size;
drivers/acpi/fan_core.c
620
if (fan->has_fst)
drivers/acpi/fan_core.c
628
struct acpi_fan *fan = platform_get_drvdata(pdev);
drivers/acpi/fan_core.c
630
if (fan->has_fst) {
drivers/acpi/fan_core.c
636
sysfs_remove_link(&fan->cdev->device.kobj, "device");
drivers/acpi/fan_core.c
637
thermal_cooling_device_unregister(fan->cdev);
drivers/acpi/fan_core.c
64
*state = fan->fps_count - 1;
drivers/acpi/fan_core.c
643
struct acpi_fan *fan = dev_get_drvdata(dev);
drivers/acpi/fan_core.c
644
if (fan->acpi4)
drivers/acpi/fan_core.c
654
struct acpi_fan *fan = dev_get_drvdata(dev);
drivers/acpi/fan_core.c
657
if (fan->has_fst) {
drivers/acpi/fan_core.c
663
if (fan->acpi4)
drivers/acpi/fan_hwmon.c
114
fps = acpi_fan_get_current_fps(fan, fst.control);
drivers/acpi/fan_hwmon.c
129
fps = acpi_fan_get_current_fps(fan, fst.control);
drivers/acpi/fan_hwmon.c
155
HWMON_CHANNEL_INFO(fan, HWMON_F_INPUT | HWMON_F_TARGET),
drivers/acpi/fan_hwmon.c
167
struct acpi_fan *fan = dev_get_drvdata(dev);
drivers/acpi/fan_hwmon.c
169
hwmon_notify_event(fan->hdev, hwmon_fan, hwmon_fan_input, 0);
drivers/acpi/fan_hwmon.c
174
struct acpi_fan *fan = dev_get_drvdata(dev);
drivers/acpi/fan_hwmon.c
176
fan->hdev = devm_hwmon_device_register_with_info(dev, "acpi_fan", fan,
drivers/acpi/fan_hwmon.c
179
return PTR_ERR_OR_ZERO(fan->hdev);
drivers/acpi/fan_hwmon.c
18
static struct acpi_fan_fps *acpi_fan_get_current_fps(struct acpi_fan *fan, u64 control)
drivers/acpi/fan_hwmon.c
22
for (i = 0; i < fan->fps_count; i++) {
drivers/acpi/fan_hwmon.c
23
if (fan->fps[i].control == control)
drivers/acpi/fan_hwmon.c
24
return &fan->fps[i];
drivers/acpi/fan_hwmon.c
33
const struct acpi_fan *fan = drvdata;
drivers/acpi/fan_hwmon.c
43
if (!fan->acpi4)
drivers/acpi/fan_hwmon.c
50
if (fan->fif.fine_grain_ctrl)
drivers/acpi/fan_hwmon.c
61
if (!fan->acpi4)
drivers/acpi/fan_hwmon.c
68
if (fan->fif.fine_grain_ctrl)
drivers/acpi/fan_hwmon.c
75
for (i = 0; i < fan->fps_count; i++) {
drivers/acpi/fan_hwmon.c
76
if (acpi_fan_power_valid(fan->fps[i].power))
drivers/acpi/fan_hwmon.c
92
struct acpi_fan *fan = dev_get_drvdata(dev);
drivers/acpi/fan_hwmon.c
97
ret = acpi_fan_get_fst(fan->handle, &fst);
drivers/gpu/drm/amd/pm/inc/amdgpu_dpm.h
267
struct amdgpu_dpm_fan fan;
drivers/gpu/drm/amd/pm/legacy-dpm/legacy_dpm.c
154
struct _ATOM_PPLIB_FANTABLE fan;
drivers/gpu/drm/amd/pm/legacy-dpm/legacy_dpm.c
216
adev->pm.dpm.fan.t_hyst = fan_info->fan.ucTHyst;
drivers/gpu/drm/amd/pm/legacy-dpm/legacy_dpm.c
217
adev->pm.dpm.fan.t_min = le16_to_cpu(fan_info->fan.usTMin);
drivers/gpu/drm/amd/pm/legacy-dpm/legacy_dpm.c
218
adev->pm.dpm.fan.t_med = le16_to_cpu(fan_info->fan.usTMed);
drivers/gpu/drm/amd/pm/legacy-dpm/legacy_dpm.c
219
adev->pm.dpm.fan.t_high = le16_to_cpu(fan_info->fan.usTHigh);
drivers/gpu/drm/amd/pm/legacy-dpm/legacy_dpm.c
220
adev->pm.dpm.fan.pwm_min = le16_to_cpu(fan_info->fan.usPWMMin);
drivers/gpu/drm/amd/pm/legacy-dpm/legacy_dpm.c
221
adev->pm.dpm.fan.pwm_med = le16_to_cpu(fan_info->fan.usPWMMed);
drivers/gpu/drm/amd/pm/legacy-dpm/legacy_dpm.c
222
adev->pm.dpm.fan.pwm_high = le16_to_cpu(fan_info->fan.usPWMHigh);
drivers/gpu/drm/amd/pm/legacy-dpm/legacy_dpm.c
223
if (fan_info->fan.ucFanTableFormat >= 2)
drivers/gpu/drm/amd/pm/legacy-dpm/legacy_dpm.c
224
adev->pm.dpm.fan.t_max = le16_to_cpu(fan_info->fan2.usTMax);
drivers/gpu/drm/amd/pm/legacy-dpm/legacy_dpm.c
226
adev->pm.dpm.fan.t_max = 10900;
drivers/gpu/drm/amd/pm/legacy-dpm/legacy_dpm.c
227
adev->pm.dpm.fan.cycle_delay = 100000;
drivers/gpu/drm/amd/pm/legacy-dpm/legacy_dpm.c
228
if (fan_info->fan.ucFanTableFormat >= 3) {
drivers/gpu/drm/amd/pm/legacy-dpm/legacy_dpm.c
229
adev->pm.dpm.fan.control_mode = fan_info->fan3.ucFanControlMode;
drivers/gpu/drm/amd/pm/legacy-dpm/legacy_dpm.c
230
adev->pm.dpm.fan.default_max_fan_pwm =
drivers/gpu/drm/amd/pm/legacy-dpm/legacy_dpm.c
232
adev->pm.dpm.fan.default_fan_output_sensitivity = 4836;
drivers/gpu/drm/amd/pm/legacy-dpm/legacy_dpm.c
233
adev->pm.dpm.fan.fan_output_sensitivity =
drivers/gpu/drm/amd/pm/legacy-dpm/legacy_dpm.c
236
adev->pm.dpm.fan.ucode_fan_control = true;
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
104
struct _ATOM_PPLIB_FANTABLE fan;
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
6541
adev->pm.dpm.fan.ucode_fan_control = false;
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
6548
adev->pm.dpm.fan.ucode_fan_control = false;
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
6552
tmp64 = (u64)adev->pm.dpm.fan.pwm_min * duty100;
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
6556
t_diff1 = adev->pm.dpm.fan.t_med - adev->pm.dpm.fan.t_min;
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
6557
t_diff2 = adev->pm.dpm.fan.t_high - adev->pm.dpm.fan.t_med;
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
6559
pwm_diff1 = adev->pm.dpm.fan.pwm_med - adev->pm.dpm.fan.pwm_min;
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
6560
pwm_diff2 = adev->pm.dpm.fan.pwm_high - adev->pm.dpm.fan.pwm_med;
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
6565
fan_table.temp_min = cpu_to_be16((50 + adev->pm.dpm.fan.t_min) / 100);
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
6566
fan_table.temp_med = cpu_to_be16((50 + adev->pm.dpm.fan.t_med) / 100);
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
6567
fan_table.temp_max = cpu_to_be16((50 + adev->pm.dpm.fan.t_max) / 100);
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
6571
fan_table.hys_down = cpu_to_be16(adev->pm.dpm.fan.t_hyst);
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
6577
fan_table.refresh_period = cpu_to_be32((adev->pm.dpm.fan.cycle_delay *
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
6592
adev->pm.dpm.fan.ucode_fan_control = false;
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
6696
if (adev->pm.dpm.fan.ucode_fan_control)
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
6701
if (adev->pm.dpm.fan.ucode_fan_control)
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
6766
if (adev->pm.dpm.fan.ucode_fan_control)
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
6799
if (adev->pm.dpm.fan.ucode_fan_control) {
drivers/gpu/drm/amd/pm/legacy-dpm/si_dpm.c
6831
if (adev->pm.dpm.fan.ucode_fan_control) {
drivers/gpu/drm/i915/i915_hwmon.c
290
HWMON_CHANNEL_INFO(fan, HWMON_F_INPUT),
drivers/gpu/drm/nouveau/include/nvkm/subdev/bios/fan.h
6
u32 nvbios_fan_parse(struct nvkm_bios *bios, struct nvbios_therm_fan *fan);
drivers/gpu/drm/nouveau/include/nvkm/subdev/therm.h
75
struct nvkm_fan *fan;
drivers/gpu/drm/nouveau/nouveau_hwmon.c
222
HWMON_CHANNEL_INFO(fan,
drivers/gpu/drm/nouveau/nvkm/subdev/bios/fan.c
32
u32 fan = 0;
drivers/gpu/drm/nouveau/nvkm/subdev/bios/fan.c
36
fan = nvbios_rd32(bios, bit_P.offset + 0x58);
drivers/gpu/drm/nouveau/nvkm/subdev/bios/fan.c
38
if (fan) {
drivers/gpu/drm/nouveau/nvkm/subdev/bios/fan.c
39
*ver = nvbios_rd08(bios, fan + 0);
drivers/gpu/drm/nouveau/nvkm/subdev/bios/fan.c
42
*hdr = nvbios_rd08(bios, fan + 1);
drivers/gpu/drm/nouveau/nvkm/subdev/bios/fan.c
43
*len = nvbios_rd08(bios, fan + 2);
drivers/gpu/drm/nouveau/nvkm/subdev/bios/fan.c
44
*cnt = nvbios_rd08(bios, fan + 3);
drivers/gpu/drm/nouveau/nvkm/subdev/bios/fan.c
45
return fan;
drivers/gpu/drm/nouveau/nvkm/subdev/bios/fan.c
66
nvbios_fan_parse(struct nvkm_bios *bios, struct nvbios_therm_fan *fan)
drivers/gpu/drm/nouveau/nvkm/subdev/bios/fan.c
75
fan->type = NVBIOS_THERM_FAN_TOGGLE;
drivers/gpu/drm/nouveau/nvkm/subdev/bios/fan.c
80
fan->type = NVBIOS_THERM_FAN_PWM;
drivers/gpu/drm/nouveau/nvkm/subdev/bios/fan.c
83
fan->type = NVBIOS_THERM_FAN_UNK;
drivers/gpu/drm/nouveau/nvkm/subdev/bios/fan.c
86
fan->fan_mode = NVBIOS_THERM_FAN_LINEAR;
drivers/gpu/drm/nouveau/nvkm/subdev/bios/fan.c
87
fan->min_duty = nvbios_rd08(bios, data + 0x02);
drivers/gpu/drm/nouveau/nvkm/subdev/bios/fan.c
88
fan->max_duty = nvbios_rd08(bios, data + 0x03);
drivers/gpu/drm/nouveau/nvkm/subdev/bios/fan.c
90
fan->pwm_freq = nvbios_rd32(bios, data + 0x0b) & 0xffffff;
drivers/gpu/drm/nouveau/nvkm/subdev/bios/perf.c
203
struct nvbios_perf_fan *fan)
drivers/gpu/drm/nouveau/nvkm/subdev/bios/perf.c
211
fan->pwm_divisor = nvbios_rd16(bios, perf + 6);
drivers/gpu/drm/nouveau/nvkm/subdev/bios/perf.c
213
fan->pwm_divisor = 0;
drivers/gpu/drm/nouveau/nvkm/subdev/bios/therm.c
153
nvbios_therm_fan_parse(struct nvkm_bios *bios, struct nvbios_therm_fan *fan)
drivers/gpu/drm/nouveau/nvkm/subdev/bios/therm.c
163
fan->nr_fan_trip = 0;
drivers/gpu/drm/nouveau/nvkm/subdev/bios/therm.c
164
fan->fan_mode = NVBIOS_THERM_FAN_OTHER;
drivers/gpu/drm/nouveau/nvkm/subdev/bios/therm.c
170
fan->min_duty = value & 0xff;
drivers/gpu/drm/nouveau/nvkm/subdev/bios/therm.c
171
fan->max_duty = (value & 0xff00) >> 8;
drivers/gpu/drm/nouveau/nvkm/subdev/bios/therm.c
174
fan->nr_fan_trip++;
drivers/gpu/drm/nouveau/nvkm/subdev/bios/therm.c
175
if (fan->fan_mode > NVBIOS_THERM_FAN_TRIP)
drivers/gpu/drm/nouveau/nvkm/subdev/bios/therm.c
176
fan->fan_mode = NVBIOS_THERM_FAN_TRIP;
drivers/gpu/drm/nouveau/nvkm/subdev/bios/therm.c
177
cur_trip = &fan->trip[fan->nr_fan_trip - 1];
drivers/gpu/drm/nouveau/nvkm/subdev/bios/therm.c
183
cur_trip = &fan->trip[fan->nr_fan_trip - 1];
drivers/gpu/drm/nouveau/nvkm/subdev/bios/therm.c
187
if (!fan->pwm_freq)
drivers/gpu/drm/nouveau/nvkm/subdev/bios/therm.c
188
fan->pwm_freq = value;
drivers/gpu/drm/nouveau/nvkm/subdev/bios/therm.c
191
fan->bump_period = value;
drivers/gpu/drm/nouveau/nvkm/subdev/bios/therm.c
194
fan->slow_down_period = value;
drivers/gpu/drm/nouveau/nvkm/subdev/bios/therm.c
197
if (fan->fan_mode > NVBIOS_THERM_FAN_LINEAR)
drivers/gpu/drm/nouveau/nvkm/subdev/bios/therm.c
198
fan->fan_mode = NVBIOS_THERM_FAN_LINEAR;
drivers/gpu/drm/nouveau/nvkm/subdev/bios/therm.c
199
fan->linear_min_temp = nvbios_rd08(bios, entry + 1);
drivers/gpu/drm/nouveau/nvkm/subdev/bios/therm.c
200
fan->linear_max_temp = nvbios_rd08(bios, entry + 2);
drivers/gpu/drm/nouveau/nvkm/subdev/bios/therm.c
207
fan->fan_mode == NVBIOS_THERM_FAN_OTHER) {
drivers/gpu/drm/nouveau/nvkm/subdev/bios/therm.c
208
fan->fan_mode = NVBIOS_THERM_FAN_LINEAR;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c
129
switch(therm->fan->bios.fan_mode) {
drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c
164
nvkm_therm_cstate(struct nvkm_therm *therm, int fan, int dir)
drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c
167
if (!dir || (dir < 0 && fan < therm->cstate) ||
drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c
168
(dir > 0 && fan > therm->cstate)) {
drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c
169
nvkm_debug(subdev, "default fan speed -> %d%%\n", fan);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c
170
therm->cstate = fan;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c
219
return therm->fan->bios.min_duty;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c
221
return therm->fan->bios.max_duty;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c
253
if (value > therm->fan->bios.max_duty)
drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c
254
value = therm->fan->bios.max_duty;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c
255
therm->fan->bios.min_duty = value;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c
260
if (value < therm->fan->bios.min_duty)
drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c
261
value = therm->fan->bios.min_duty;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c
262
therm->fan->bios.max_duty = value;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c
386
nvkm_therm_fan_set(therm, true, therm->fan->percent);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c
40
struct nvbios_therm_trip_point *trip = therm->fan->bios.trip,
drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c
410
kfree(therm->fan);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c
48
for (i = 0; i < therm->fan->bios.nr_fan_trip; i++) {
drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c
78
return therm->fan->bios.min_duty;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c
80
return therm->fan->bios.max_duty;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c
84
duty *= (therm->fan->bios.max_duty - therm->fan->bios.min_duty);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c
86
duty += therm->fan->bios.min_duty;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c
93
u8 min = therm->fan->bios.linear_min_temp;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c
94
u8 max = therm->fan->bios.linear_max_temp;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
107
struct nvkm_fan *fan = container_of(alarm, struct nvkm_fan, alarm);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
108
nvkm_fan_update(fan, false, -1);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
114
return therm->fan->get(therm);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
120
return nvkm_fan_update(therm->fan, immediate, percent);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
135
if (therm->fan->tach.func == DCB_GPIO_UNUSED)
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
143
prev = nvkm_gpio_get(gpio, 0, therm->fan->tach.func,
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
144
therm->fan->tach.line);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
149
cur = nvkm_gpio_get(gpio, 0, therm->fan->tach.func,
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
150
therm->fan->tach.line);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
186
therm->fan->bios.pwm_freq = 0;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
187
therm->fan->bios.min_duty = 0;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
188
therm->fan->bios.max_duty = 100;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
189
therm->fan->bios.bump_period = 500;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
190
therm->fan->bios.slow_down_period = 2000;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
191
therm->fan->bios.linear_min_temp = 40;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
192
therm->fan->bios.linear_max_temp = 85;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
198
if (therm->fan->bios.min_duty > 100)
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
199
therm->fan->bios.min_duty = 100;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
200
if (therm->fan->bios.max_duty > 100)
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
201
therm->fan->bios.max_duty = 100;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
203
if (therm->fan->bios.min_duty > therm->fan->bios.max_duty)
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
204
therm->fan->bios.min_duty = therm->fan->bios.max_duty;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
218
nvkm_timer_alarm(tmr, 0, &therm->fan->alarm);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
253
nvkm_debug(subdev, "FAN control: %s\n", therm->fan->type);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
256
therm->fan->percent = nvkm_therm_fan_get(therm);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
260
&therm->fan->tach);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
262
therm->fan->tach.func = DCB_GPIO_UNUSED;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
265
therm->fan->parent = therm;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
266
nvkm_alarm_init(&therm->fan->alarm, nvkm_fan_alarm);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
267
spin_lock_init(&therm->fan->lock);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
271
nvbios_perf_fan_parse(bios, &therm->fan->perf);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
272
if (!nvbios_fan_parse(bios, &therm->fan->bios)) {
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
274
if (nvbios_therm_fan_parse(bios, &therm->fan->bios))
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
32
nvkm_fan_update(struct nvkm_fan *fan, bool immediate, int target)
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
34
struct nvkm_therm *therm = fan->parent;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
42
spin_lock_irqsave(&fan->lock, flags);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
44
target = fan->percent;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
45
target = max_t(u8, target, fan->bios.min_duty);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
46
target = min_t(u8, target, fan->bios.max_duty);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
47
if (fan->percent != target) {
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
49
fan->percent = target;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
53
duty = fan->get(therm);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
55
spin_unlock_irqrestore(&fan->lock, flags);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
74
ret = fan->set(therm, duty);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
76
spin_unlock_irqrestore(&fan->lock, flags);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
83
spin_unlock_irqrestore(&fan->lock, flags);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
87
u16 bump_period = fan->bios.bump_period;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
88
u16 slow_down_period = fan->bios.slow_down_period;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.c
98
nvkm_timer_alarm(tmr, delay * 1000 * 1000, &fan->alarm);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fannil.c
44
therm->fan = priv;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fanpwm.c
100
fan = kzalloc_obj(*fan);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fanpwm.c
101
if (!fan)
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fanpwm.c
104
therm->fan = &fan->base;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fanpwm.c
105
fan->base.type = "PWM";
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fanpwm.c
106
fan->base.get = nvkm_fanpwm_get;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fanpwm.c
107
fan->base.set = nvkm_fanpwm_set;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fanpwm.c
108
fan->func = *func;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fanpwm.c
40
struct nvkm_fanpwm *fan = (void *)therm->fan;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fanpwm.c
47
ret = therm->func->pwm_get(therm, fan->func.line, &divs, &duty);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fanpwm.c
50
if (card_type <= NV_40 || (fan->func.log[0] & 1))
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fanpwm.c
55
return nvkm_gpio_get(gpio, 0, fan->func.func, fan->func.line) * 100;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fanpwm.c
61
struct nvkm_fanpwm *fan = (void *)therm->fan;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fanpwm.c
66
divs = fan->base.perf.pwm_divisor;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fanpwm.c
67
if (fan->base.bios.pwm_freq) {
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fanpwm.c
70
divs = therm->func->pwm_clock(therm, fan->func.line);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fanpwm.c
71
divs /= fan->base.bios.pwm_freq;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fanpwm.c
75
if (card_type <= NV_40 || (fan->func.log[0] & 1))
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fanpwm.c
78
ret = therm->func->pwm_set(therm, fan->func.line, divs, duty);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fanpwm.c
80
ret = therm->func->pwm_ctrl(therm, fan->func.line, true);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fanpwm.c
89
struct nvkm_fanpwm *fan;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c
102
fan = kzalloc_obj(*fan);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c
103
if (!fan)
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c
106
therm->fan = &fan->base;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c
107
fan->base.type = "toggle";
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c
108
fan->base.get = nvkm_fantog_get;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c
109
fan->base.set = nvkm_fantog_set;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c
110
nvkm_alarm_init(&fan->alarm, nvkm_fantog_alarm);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c
111
fan->period_us = 100000; /* 10Hz */
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c
112
fan->percent = 100;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c
113
fan->func = *func;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c
114
spin_lock_init(&fan->lock);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c
39
nvkm_fantog_update(struct nvkm_fantog *fan, int percent)
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c
41
struct nvkm_therm *therm = fan->base.parent;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c
48
spin_lock_irqsave(&fan->lock, flags);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c
50
percent = fan->percent;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c
51
fan->percent = percent;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c
57
u64 next_change = (percent * fan->period_us) / 100;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c
59
next_change = fan->period_us - next_change;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c
60
nvkm_timer_alarm(tmr, next_change * 1000, &fan->alarm);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c
62
spin_unlock_irqrestore(&fan->lock, flags);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c
68
struct nvkm_fantog *fan =
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c
70
nvkm_fantog_update(fan, -1);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c
76
struct nvkm_fantog *fan = (void *)therm->fan;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c
77
return fan->percent;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c
83
struct nvkm_fantog *fan = (void *)therm->fan;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c
85
therm->func->pwm_ctrl(therm, fan->func.line, false);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c
86
nvkm_fantog_update(fan, percent);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.c
93
struct nvkm_fantog *fan;
drivers/gpu/drm/nouveau/nvkm/subdev/therm/gf119.c
128
if (therm->fan->tach.func != DCB_GPIO_UNUSED) {
drivers/gpu/drm/nouveau/nvkm/subdev/therm/gf119.c
129
nvkm_mask(device, 0x00d79c, 0x000000ff, therm->fan->tach.line);
drivers/gpu/drm/nouveau/nvkm/subdev/therm/gt215.c
43
struct dcb_gpio_func *tach = &therm->fan->tach;
drivers/gpu/drm/radeon/ci_dpm.c
1017
rdev->pm.dpm.fan.default_max_fan_pwm);
drivers/gpu/drm/radeon/ci_dpm.c
1107
if (rdev->pm.dpm.fan.ucode_fan_control)
drivers/gpu/drm/radeon/ci_dpm.c
1112
if (rdev->pm.dpm.fan.ucode_fan_control)
drivers/gpu/drm/radeon/ci_dpm.c
1169
if (rdev->pm.dpm.fan.ucode_fan_control)
drivers/gpu/drm/radeon/ci_dpm.c
1202
if (rdev->pm.dpm.fan.ucode_fan_control) {
drivers/gpu/drm/radeon/ci_dpm.c
1234
if (rdev->pm.dpm.fan.ucode_fan_control) {
drivers/gpu/drm/radeon/ci_dpm.c
342
if ((rdev->pm.dpm.fan.fan_output_sensitivity & (1 << 15)) ||
drivers/gpu/drm/radeon/ci_dpm.c
343
(rdev->pm.dpm.fan.fan_output_sensitivity == 0))
drivers/gpu/drm/radeon/ci_dpm.c
344
rdev->pm.dpm.fan.fan_output_sensitivity =
drivers/gpu/drm/radeon/ci_dpm.c
345
rdev->pm.dpm.fan.default_fan_output_sensitivity;
drivers/gpu/drm/radeon/ci_dpm.c
348
cpu_to_be16(rdev->pm.dpm.fan.fan_output_sensitivity);
drivers/gpu/drm/radeon/ci_dpm.c
939
rdev->pm.dpm.fan.ucode_fan_control = false;
drivers/gpu/drm/radeon/ci_dpm.c
946
rdev->pm.dpm.fan.ucode_fan_control = false;
drivers/gpu/drm/radeon/ci_dpm.c
950
tmp64 = (u64)rdev->pm.dpm.fan.pwm_min * duty100;
drivers/gpu/drm/radeon/ci_dpm.c
954
t_diff1 = rdev->pm.dpm.fan.t_med - rdev->pm.dpm.fan.t_min;
drivers/gpu/drm/radeon/ci_dpm.c
955
t_diff2 = rdev->pm.dpm.fan.t_high - rdev->pm.dpm.fan.t_med;
drivers/gpu/drm/radeon/ci_dpm.c
957
pwm_diff1 = rdev->pm.dpm.fan.pwm_med - rdev->pm.dpm.fan.pwm_min;
drivers/gpu/drm/radeon/ci_dpm.c
958
pwm_diff2 = rdev->pm.dpm.fan.pwm_high - rdev->pm.dpm.fan.pwm_med;
drivers/gpu/drm/radeon/ci_dpm.c
963
fan_table.TempMin = cpu_to_be16((50 + rdev->pm.dpm.fan.t_min) / 100);
drivers/gpu/drm/radeon/ci_dpm.c
964
fan_table.TempMed = cpu_to_be16((50 + rdev->pm.dpm.fan.t_med) / 100);
drivers/gpu/drm/radeon/ci_dpm.c
965
fan_table.TempMax = cpu_to_be16((50 + rdev->pm.dpm.fan.t_max) / 100);
drivers/gpu/drm/radeon/ci_dpm.c
972
fan_table.HystDown = cpu_to_be16(rdev->pm.dpm.fan.t_hyst);
drivers/gpu/drm/radeon/ci_dpm.c
982
fan_table.RefreshPeriod = cpu_to_be32((rdev->pm.dpm.fan.cycle_delay *
drivers/gpu/drm/radeon/ci_dpm.c
998
rdev->pm.dpm.fan.ucode_fan_control = false;
drivers/gpu/drm/radeon/r600_dpm.c
813
struct _ATOM_PPLIB_FANTABLE fan;
drivers/gpu/drm/radeon/r600_dpm.c
892
rdev->pm.dpm.fan.t_hyst = fan_info->fan.ucTHyst;
drivers/gpu/drm/radeon/r600_dpm.c
893
rdev->pm.dpm.fan.t_min = le16_to_cpu(fan_info->fan.usTMin);
drivers/gpu/drm/radeon/r600_dpm.c
894
rdev->pm.dpm.fan.t_med = le16_to_cpu(fan_info->fan.usTMed);
drivers/gpu/drm/radeon/r600_dpm.c
895
rdev->pm.dpm.fan.t_high = le16_to_cpu(fan_info->fan.usTHigh);
drivers/gpu/drm/radeon/r600_dpm.c
896
rdev->pm.dpm.fan.pwm_min = le16_to_cpu(fan_info->fan.usPWMMin);
drivers/gpu/drm/radeon/r600_dpm.c
897
rdev->pm.dpm.fan.pwm_med = le16_to_cpu(fan_info->fan.usPWMMed);
drivers/gpu/drm/radeon/r600_dpm.c
898
rdev->pm.dpm.fan.pwm_high = le16_to_cpu(fan_info->fan.usPWMHigh);
drivers/gpu/drm/radeon/r600_dpm.c
899
if (fan_info->fan.ucFanTableFormat >= 2)
drivers/gpu/drm/radeon/r600_dpm.c
900
rdev->pm.dpm.fan.t_max = le16_to_cpu(fan_info->fan2.usTMax);
drivers/gpu/drm/radeon/r600_dpm.c
902
rdev->pm.dpm.fan.t_max = 10900;
drivers/gpu/drm/radeon/r600_dpm.c
903
rdev->pm.dpm.fan.cycle_delay = 100000;
drivers/gpu/drm/radeon/r600_dpm.c
904
if (fan_info->fan.ucFanTableFormat >= 3) {
drivers/gpu/drm/radeon/r600_dpm.c
905
rdev->pm.dpm.fan.control_mode = fan_info->fan3.ucFanControlMode;
drivers/gpu/drm/radeon/r600_dpm.c
906
rdev->pm.dpm.fan.default_max_fan_pwm =
drivers/gpu/drm/radeon/r600_dpm.c
908
rdev->pm.dpm.fan.default_fan_output_sensitivity = 4836;
drivers/gpu/drm/radeon/r600_dpm.c
909
rdev->pm.dpm.fan.fan_output_sensitivity =
drivers/gpu/drm/radeon/r600_dpm.c
912
rdev->pm.dpm.fan.ucode_fan_control = true;
drivers/gpu/drm/radeon/radeon.h
1556
struct radeon_dpm_fan fan;
drivers/gpu/drm/radeon/si_dpm.c
5985
rdev->pm.dpm.fan.ucode_fan_control = false;
drivers/gpu/drm/radeon/si_dpm.c
5992
rdev->pm.dpm.fan.ucode_fan_control = false;
drivers/gpu/drm/radeon/si_dpm.c
5996
tmp64 = (u64)rdev->pm.dpm.fan.pwm_min * duty100;
drivers/gpu/drm/radeon/si_dpm.c
6000
t_diff1 = rdev->pm.dpm.fan.t_med - rdev->pm.dpm.fan.t_min;
drivers/gpu/drm/radeon/si_dpm.c
6001
t_diff2 = rdev->pm.dpm.fan.t_high - rdev->pm.dpm.fan.t_med;
drivers/gpu/drm/radeon/si_dpm.c
6003
pwm_diff1 = rdev->pm.dpm.fan.pwm_med - rdev->pm.dpm.fan.pwm_min;
drivers/gpu/drm/radeon/si_dpm.c
6004
pwm_diff2 = rdev->pm.dpm.fan.pwm_high - rdev->pm.dpm.fan.pwm_med;
drivers/gpu/drm/radeon/si_dpm.c
6009
fan_table.temp_min = cpu_to_be16((50 + rdev->pm.dpm.fan.t_min) / 100);
drivers/gpu/drm/radeon/si_dpm.c
6010
fan_table.temp_med = cpu_to_be16((50 + rdev->pm.dpm.fan.t_med) / 100);
drivers/gpu/drm/radeon/si_dpm.c
6011
fan_table.temp_max = cpu_to_be16((50 + rdev->pm.dpm.fan.t_max) / 100);
drivers/gpu/drm/radeon/si_dpm.c
6018
fan_table.hys_down = cpu_to_be16(rdev->pm.dpm.fan.t_hyst);
drivers/gpu/drm/radeon/si_dpm.c
6028
fan_table.refresh_period = cpu_to_be32((rdev->pm.dpm.fan.cycle_delay *
drivers/gpu/drm/radeon/si_dpm.c
6044
rdev->pm.dpm.fan.ucode_fan_control = false;
drivers/gpu/drm/radeon/si_dpm.c
6141
if (rdev->pm.dpm.fan.ucode_fan_control)
drivers/gpu/drm/radeon/si_dpm.c
6146
if (rdev->pm.dpm.fan.ucode_fan_control)
drivers/gpu/drm/radeon/si_dpm.c
6203
if (rdev->pm.dpm.fan.ucode_fan_control)
drivers/gpu/drm/radeon/si_dpm.c
6236
if (rdev->pm.dpm.fan.ucode_fan_control) {
drivers/gpu/drm/radeon/si_dpm.c
6268
if (rdev->pm.dpm.fan.ucode_fan_control) {
drivers/gpu/drm/xe/xe_hwmon.c
751
HWMON_CHANNEL_INFO(fan, HWMON_F_INPUT, HWMON_F_INPUT, HWMON_F_INPUT),
drivers/hwmon/abituguru.c
1226
SENSOR_ATTR_2(fan%d_input, 0444, show_bank2_value, NULL, 0, 0),
drivers/hwmon/abituguru.c
1227
SENSOR_ATTR_2(fan%d_alarm, 0444, show_bank2_alarm, NULL, 0, 0),
drivers/hwmon/abituguru.c
1228
SENSOR_ATTR_2(fan%d_min, 0644, show_bank2_setting,
drivers/hwmon/abituguru.c
1230
SENSOR_ATTR_2(fan%d_beep, 0644, show_bank2_mask,
drivers/hwmon/abituguru.c
1232
SENSOR_ATTR_2(fan%d_shutdown, 0644, show_bank2_mask,
drivers/hwmon/abituguru.c
1234
SENSOR_ATTR_2(fan%d_alarm_enable, 0644, show_bank2_mask,
drivers/hwmon/abituguru3.c
942
SENSOR_ATTR_2(fan%d_input, 0444, show_value, NULL, 0, 0),
drivers/hwmon/abituguru3.c
943
SENSOR_ATTR_2(fan%d_min, 0444, show_value, NULL, 1, 0),
drivers/hwmon/abituguru3.c
944
SENSOR_ATTR_2(fan%d_alarm, 0444, show_alarm, NULL, 0, 0),
drivers/hwmon/abituguru3.c
945
SENSOR_ATTR_2(fan%d_beep, 0444, show_mask, NULL,
drivers/hwmon/abituguru3.c
947
SENSOR_ATTR_2(fan%d_shutdown, 0444, show_mask, NULL,
drivers/hwmon/abituguru3.c
949
SENSOR_ATTR_2(fan%d_alarm_enable, 0444, show_mask, NULL,
drivers/hwmon/abituguru3.c
951
SENSOR_ATTR_2(fan%d_label, 0444, show_label, NULL, 0, 0)
drivers/hwmon/adm1026.c
283
u8 fan[8]; /* Register value */
drivers/hwmon/adm1026.c
346
data->fan[i] =
drivers/hwmon/adm1026.c
667
return sprintf(buf, "%d\n", fan_from_reg(data->fan[nr],
drivers/hwmon/adm1026.c
702
static SENSOR_DEVICE_ATTR_RO(fan1_input, fan, 0);
drivers/hwmon/adm1026.c
704
static SENSOR_DEVICE_ATTR_RO(fan2_input, fan, 1);
drivers/hwmon/adm1026.c
706
static SENSOR_DEVICE_ATTR_RO(fan3_input, fan, 2);
drivers/hwmon/adm1026.c
708
static SENSOR_DEVICE_ATTR_RO(fan4_input, fan, 3);
drivers/hwmon/adm1026.c
710
static SENSOR_DEVICE_ATTR_RO(fan5_input, fan, 4);
drivers/hwmon/adm1026.c
712
static SENSOR_DEVICE_ATTR_RO(fan6_input, fan, 5);
drivers/hwmon/adm1026.c
714
static SENSOR_DEVICE_ATTR_RO(fan7_input, fan, 6);
drivers/hwmon/adm1026.c
716
static SENSOR_DEVICE_ATTR_RO(fan8_input, fan, 7);
drivers/hwmon/adm1026.c
720
static void fixup_fan_min(struct device *dev, int fan, int old_div)
drivers/hwmon/adm1026.c
725
int new_div = data->fan_div[fan];
drivers/hwmon/adm1026.c
728
if (data->fan_min[fan] == 0 || data->fan_min[fan] == 0xff)
drivers/hwmon/adm1026.c
731
new_min = data->fan_min[fan] * old_div / new_div;
drivers/hwmon/adm1026.c
733
data->fan_min[fan] = new_min;
drivers/hwmon/adm1026.c
734
adm1026_write_value(client, ADM1026_REG_FAN_MIN(fan), new_min);
drivers/hwmon/adm1029.c
107
u8 fan[ARRAY_SIZE(ADM1029_REG_FAN)];
drivers/hwmon/adm1029.c
135
data->fan[nr] =
drivers/hwmon/adm1029.c
175
if (data->fan[attr->index] == 0 ||
drivers/hwmon/adm1029.c
177
data->fan[attr->index] == 255) {
drivers/hwmon/adm1029.c
183
/ data->fan[attr->index];
drivers/hwmon/adm1029.c
263
static SENSOR_DEVICE_ATTR_RO(fan1_input, fan, 0);
drivers/hwmon/adm1029.c
264
static SENSOR_DEVICE_ATTR_RO(fan2_input, fan, 1);
drivers/hwmon/adm1029.c
266
static SENSOR_DEVICE_ATTR_RO(fan1_min, fan, 2);
drivers/hwmon/adm1029.c
267
static SENSOR_DEVICE_ATTR_RO(fan2_min, fan, 3);
drivers/hwmon/adm1031.c
182
data->fan[chan] =
drivers/hwmon/adm1031.c
562
value = trust_fan_readings(data, nr) ? FAN_FROM_REG(data->fan[nr],
drivers/hwmon/adm1031.c
657
static SENSOR_DEVICE_ATTR_RO(fan1_input, fan, 0);
drivers/hwmon/adm1031.c
660
static SENSOR_DEVICE_ATTR_RO(fan2_input, fan, 1);
drivers/hwmon/adm1031.c
79
u8 fan[2];
drivers/hwmon/adm9240.c
734
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/adt7462.c
1045
!FAN_DATA_VALID(data->fan[attr->index]))
drivers/hwmon/adt7462.c
1049
FAN_PERIOD_TO_RPM(data->fan[attr->index]));
drivers/hwmon/adt7462.c
1517
static SENSOR_DEVICE_ATTR_RO(fan1_input, fan, 0);
drivers/hwmon/adt7462.c
1518
static SENSOR_DEVICE_ATTR_RO(fan2_input, fan, 1);
drivers/hwmon/adt7462.c
1519
static SENSOR_DEVICE_ATTR_RO(fan3_input, fan, 2);
drivers/hwmon/adt7462.c
1520
static SENSOR_DEVICE_ATTR_RO(fan4_input, fan, 3);
drivers/hwmon/adt7462.c
1521
static SENSOR_DEVICE_ATTR_RO(fan5_input, fan, 4);
drivers/hwmon/adt7462.c
1522
static SENSOR_DEVICE_ATTR_RO(fan6_input, fan, 5);
drivers/hwmon/adt7462.c
1523
static SENSOR_DEVICE_ATTR_RO(fan7_input, fan, 6);
drivers/hwmon/adt7462.c
1524
static SENSOR_DEVICE_ATTR_RO(fan8_input, fan, 7);
drivers/hwmon/adt7462.c
204
u16 fan[ADT7462_FAN_COUNT];
drivers/hwmon/adt7462.c
234
static int ADT7462_REG_FAN(int fan)
drivers/hwmon/adt7462.c
236
if (fan < 4)
drivers/hwmon/adt7462.c
237
return ADT7462_REG_FAN_BASE_ADDR + (2 * fan);
drivers/hwmon/adt7462.c
238
return ADT7462_REG_FAN2_BASE_ADDR + (2 * (fan - 4));
drivers/hwmon/adt7462.c
697
data->fan[i] = adt7462_read_word_data(client,
drivers/hwmon/adt7462.c
989
static int fan_enabled(struct adt7462_data *data, int fan)
drivers/hwmon/adt7462.c
991
return data->fan_enabled & (1 << fan);
drivers/hwmon/adt7470.c
1194
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/adt7470.c
158
u16 fan[ADT7470_FAN_COUNT];
drivers/hwmon/adt7470.c
325
data->fan[i] = val;
drivers/hwmon/adt7470.c
633
if (FAN_DATA_VALID(data->fan[channel]))
drivers/hwmon/adt7470.c
634
*val = FAN_PERIOD_TO_RPM(data->fan[channel]);
drivers/hwmon/amc6821.c
792
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/aquacomputer_d5next.c
1272
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/asb100.c
193
u8 fan[3]; /* Register value */
drivers/hwmon/asb100.c
291
return sprintf(buf, "%d\n", FAN_FROM_REG(data->fan[nr],
drivers/hwmon/asb100.c
389
static SENSOR_DEVICE_ATTR(fan##offset##_input, S_IRUGO, \
drivers/hwmon/asb100.c
391
static SENSOR_DEVICE_ATTR(fan##offset##_min, S_IRUGO | S_IWUSR, \
drivers/hwmon/asb100.c
393
static SENSOR_DEVICE_ATTR(fan##offset##_div, S_IRUGO | S_IWUSR, \
drivers/hwmon/asb100.c
960
data->fan[i] = asb100_read_value(client,
drivers/hwmon/aspeed-g6-pwm-tach.c
386
HWMON_CHANNEL_INFO(fan, HWMON_F_INPUT | HWMON_F_DIV, HWMON_F_INPUT | HWMON_F_DIV,
drivers/hwmon/asus_rog_ryujin.c
368
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/axi-fan-control.c
400
HWMON_CHANNEL_INFO(fan, HWMON_F_INPUT | HWMON_F_FAULT | HWMON_F_LABEL),
drivers/hwmon/cgbc-hwmon.c
255
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/corsair-cpro.c
422
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/corsair-psu.c
632
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/cros_ec_hwmon.c
351
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/dell-smm-hwmon.c
104
bool fan[DELL_SMM_NO_FANS];
drivers/hwmon/dell-smm-hwmon.c
1124
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/dell-smm-hwmon.c
1204
data->fan[i] = true;
drivers/hwmon/dell-smm-hwmon.c
359
static int i8k_get_fan_status(const struct dell_smm_data *data, u8 fan)
drivers/hwmon/dell-smm-hwmon.c
363
.ebx = fan,
drivers/hwmon/dell-smm-hwmon.c
375
static int i8k_get_fan_speed(const struct dell_smm_data *data, u8 fan)
drivers/hwmon/dell-smm-hwmon.c
379
.ebx = fan,
drivers/hwmon/dell-smm-hwmon.c
391
static int _i8k_get_fan_type(const struct dell_smm_data *data, u8 fan)
drivers/hwmon/dell-smm-hwmon.c
395
.ebx = fan,
drivers/hwmon/dell-smm-hwmon.c
404
static int i8k_get_fan_type(struct dell_smm_data *data, u8 fan)
drivers/hwmon/dell-smm-hwmon.c
407
if (data->fan_type[fan] == INT_MIN)
drivers/hwmon/dell-smm-hwmon.c
408
data->fan_type[fan] = _i8k_get_fan_type(data, fan);
drivers/hwmon/dell-smm-hwmon.c
410
return data->fan_type[fan];
drivers/hwmon/dell-smm-hwmon.c
416
static int i8k_get_fan_nominal_speed(const struct dell_smm_data *data, u8 fan, int speed)
drivers/hwmon/dell-smm-hwmon.c
420
.ebx = fan | (speed << 8),
drivers/hwmon/dell-smm-hwmon.c
446
static int i8k_set_fan(const struct dell_smm_data *data, u8 fan, int speed)
drivers/hwmon/dell-smm-hwmon.c
453
regs.ebx = fan | (speed << 8);
drivers/hwmon/dell-smm-hwmon.c
833
if (data->fan[channel])
drivers/hwmon/dell-smm-hwmon.c
838
if (data->fan[channel] && !disallow_fan_type_call)
drivers/hwmon/dell-smm-hwmon.c
859
if (data->fan[channel])
drivers/hwmon/dell-smm-hwmon.c
881
if (data->fan[channel] && data->i8k_fan_max < I8K_FAN_AUTO)
drivers/hwmon/dme1737.c
1092
res = FAN_FROM_REG(data->fan[ix],
drivers/hwmon/dme1737.c
1571
static SENSOR_DEVICE_ATTR_2(fan##ix##_input, S_IRUGO, \
drivers/hwmon/dme1737.c
1573
static SENSOR_DEVICE_ATTR_2(fan##ix##_min, S_IRUGO | S_IWUSR, \
drivers/hwmon/dme1737.c
1575
static SENSOR_DEVICE_ATTR_2(fan##ix##_alarm, S_IRUGO, \
drivers/hwmon/dme1737.c
1577
static SENSOR_DEVICE_ATTR_2(fan##ix##_type, S_IRUGO | S_IWUSR, \
drivers/hwmon/dme1737.c
1588
static SENSOR_DEVICE_ATTR_2(fan##ix##_input, S_IRUGO, \
drivers/hwmon/dme1737.c
1590
static SENSOR_DEVICE_ATTR_2(fan##ix##_min, S_IRUGO | S_IWUSR, \
drivers/hwmon/dme1737.c
1592
static SENSOR_DEVICE_ATTR_2(fan##ix##_alarm, S_IRUGO, \
drivers/hwmon/dme1737.c
1594
static SENSOR_DEVICE_ATTR_2(fan##ix##_max, S_IRUGO | S_IWUSR, \
drivers/hwmon/dme1737.c
227
u16 fan[6];
drivers/hwmon/dme1737.c
678
for (ix = 0; ix < ARRAY_SIZE(data->fan); ix++) {
drivers/hwmon/dme1737.c
685
data->fan[ix] = dme1737_read(data,
drivers/hwmon/dme1737.c
687
data->fan[ix] |= dme1737_read(data,
drivers/hwmon/emc2305.c
488
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/emc6w201.c
156
data->fan[input][nr] =
drivers/hwmon/emc6w201.c
159
data->fan[min][nr] =
drivers/hwmon/emc6w201.c
265
if (data->fan[sf][nr] == 0 || data->fan[sf][nr] == 0xFFFF)
drivers/hwmon/emc6w201.c
268
rpm = 5400000U / data->fan[sf][nr];
drivers/hwmon/emc6w201.c
295
data->fan[sf][nr] = val;
drivers/hwmon/emc6w201.c
297
data->fan[sf][nr]);
drivers/hwmon/emc6w201.c
341
static SENSOR_DEVICE_ATTR_2_RO(fan1_input, fan, 0, input);
drivers/hwmon/emc6w201.c
342
static SENSOR_DEVICE_ATTR_2_RW(fan1_min, fan, 0, min);
drivers/hwmon/emc6w201.c
343
static SENSOR_DEVICE_ATTR_2_RO(fan2_input, fan, 1, input);
drivers/hwmon/emc6w201.c
344
static SENSOR_DEVICE_ATTR_2_RW(fan2_min, fan, 1, min);
drivers/hwmon/emc6w201.c
345
static SENSOR_DEVICE_ATTR_2_RO(fan3_input, fan, 2, input);
drivers/hwmon/emc6w201.c
346
static SENSOR_DEVICE_ATTR_2_RW(fan3_min, fan, 2, min);
drivers/hwmon/emc6w201.c
347
static SENSOR_DEVICE_ATTR_2_RO(fan4_input, fan, 3, input);
drivers/hwmon/emc6w201.c
348
static SENSOR_DEVICE_ATTR_2_RW(fan4_min, fan, 3, min);
drivers/hwmon/emc6w201.c
349
static SENSOR_DEVICE_ATTR_2_RO(fan5_input, fan, 4, input);
drivers/hwmon/emc6w201.c
350
static SENSOR_DEVICE_ATTR_2_RW(fan5_min, fan, 4, min);
drivers/hwmon/emc6w201.c
54
u16 fan[2][5];
drivers/hwmon/f71805f.c
159
u16 fan[3];
drivers/hwmon/f71805f.c
177
u16 fan[3];
drivers/hwmon/f71805f.c
371
data->auto_points[nr].fan[apnr] =
drivers/hwmon/f71805f.c
391
data->fan[nr] = f71805f_read16(data,
drivers/hwmon/f71805f.c
570
return sprintf(buf, "%ld\n", fan_from_reg(data->fan[nr]));
drivers/hwmon/f71805f.c
832
fan_from_reg(data->auto_points[pwmnr].fan[apnr]));
drivers/hwmon/f71805f.c
851
data->auto_points[pwmnr].fan[apnr] = fan_to_reg(val);
drivers/hwmon/f71805f.c
853
data->auto_points[pwmnr].fan[apnr]);
drivers/hwmon/f71882fg.c
1037
int speed = fan_from_reg(data->fan[nr]);
drivers/hwmon/f71882fg.c
262
u16 fan[4];
drivers/hwmon/f71882fg.c
314
static inline u16 fan_to_reg(int fan)
drivers/hwmon/f71882fg.c
316
return fan ? (1500000 / fan) : 0;
drivers/hwmon/f71882fg.c
469
data->fan[nr] = f71882fg_read16(data,
drivers/hwmon/f71882fg.c
481
data->fan[2] = f71882fg_read16(data,
drivers/hwmon/f71882fg.c
487
data->fan[3] = f71882fg_read16(data,
drivers/hwmon/f75375s.c
198
data->fan[nr] =
drivers/hwmon/f75375s.c
627
show_fan(fan);
drivers/hwmon/f75375s.c
96
u16 fan[2];
drivers/hwmon/ftsteutates.c
514
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/gigabyte_waterforce.c
241
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/gpd-fan.c
569
HWMON_CHANNEL_INFO(fan, HWMON_F_INPUT),
drivers/hwmon/gsc-hwmon.c
244
struct device_node *fan;
drivers/hwmon/gsc-hwmon.c
259
fan = of_find_compatible_node(dev->parent->of_node, NULL, "gw,gsc-fan");
drivers/hwmon/gsc-hwmon.c
260
if (fan && of_property_read_u32(fan, "reg", &pdata->fan_base)) {
drivers/hwmon/gsc-hwmon.c
261
of_node_put(fan);
drivers/hwmon/gsc-hwmon.c
266
of_node_put(fan);
drivers/hwmon/gxp-fan-ctrl.c
172
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/gxp-fan-ctrl.c
23
static bool fan_installed(struct device *dev, int fan)
drivers/hwmon/gxp-fan-ctrl.c
30
return !!(val & BIT(fan));
drivers/hwmon/gxp-fan-ctrl.c
33
static long fan_failed(struct device *dev, int fan)
drivers/hwmon/gxp-fan-ctrl.c
40
return !!(val & BIT(fan));
drivers/hwmon/gxp-fan-ctrl.c
43
static long fan_enabled(struct device *dev, int fan)
drivers/hwmon/gxp-fan-ctrl.c
55
return !!((val & BIT(POWER_BIT)) && fan_installed(dev, fan));
drivers/hwmon/it87.c
1321
FAN16_FROM_REG(data->fan[nr][index]) :
drivers/hwmon/it87.c
1322
FAN_FROM_REG(data->fan[nr][index],
drivers/hwmon/it87.c
1409
data->fan[nr][index] = FAN16_TO_REG(val);
drivers/hwmon/it87.c
1411
data->fan[nr][index] & 0xff);
drivers/hwmon/it87.c
1413
data->fan[nr][index] >> 8);
drivers/hwmon/it87.c
1427
data->fan[nr][index] =
drivers/hwmon/it87.c
1430
data->fan[nr][index]);
drivers/hwmon/it87.c
1457
min = FAN_FROM_REG(data->fan[nr][1], DIV_FROM_REG(data->fan_div[nr]));
drivers/hwmon/it87.c
1478
data->fan[nr][1] = FAN_TO_REG(min, DIV_FROM_REG(data->fan_div[nr]));
drivers/hwmon/it87.c
1479
it87_write_value(data, IT87_REG_FAN_MIN[nr], data->fan[nr][1]);
drivers/hwmon/it87.c
599
u16 fan[NUM_FAN][2]; /* Register values, [nr][0]=fan, [1]=min */
drivers/hwmon/it87.c
911
data->fan[i][1] =
drivers/hwmon/it87.c
913
data->fan[i][0] = it87_read_value(data,
drivers/hwmon/it87.c
917
data->fan[i][0] |= it87_read_value(data,
drivers/hwmon/it87.c
919
data->fan[i][1] |= it87_read_value(data,
drivers/hwmon/lan966x-hwmon.c
266
HWMON_CHANNEL_INFO(fan, HWMON_F_INPUT),
drivers/hwmon/lenovo-ec-sensors.c
320
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/lenovo-ec-sensors.c
355
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/lenovo-ec-sensors.c
388
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/lenovo-ec-sensors.c
418
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/lm63.c
155
u16 fan[2]; /* 0: input
drivers/hwmon/lm63.c
237
data->fan[0] = i2c_smbus_read_byte_data(client,
drivers/hwmon/lm63.c
239
data->fan[0] |= i2c_smbus_read_byte_data(client,
drivers/hwmon/lm63.c
241
data->fan[1] = (i2c_smbus_read_byte_data(client,
drivers/hwmon/lm63.c
336
return sprintf(buf, "%d\n", FAN_FROM_REG(data->fan[attr->index]));
drivers/hwmon/lm63.c
352
data->fan[1] = FAN_TO_REG(val);
drivers/hwmon/lm63.c
354
data->fan[1] & 0xFF);
drivers/hwmon/lm63.c
356
data->fan[1] >> 8);
drivers/hwmon/lm78.c
126
u8 fan[3]; /* Register value */
drivers/hwmon/lm78.c
299
return sprintf(buf, "%d\n", FAN_FROM_REG(data->fan[nr],
drivers/hwmon/lm78.c
406
static SENSOR_DEVICE_ATTR_RO(fan1_input, fan, 0);
drivers/hwmon/lm78.c
408
static SENSOR_DEVICE_ATTR_RO(fan2_input, fan, 1);
drivers/hwmon/lm78.c
410
static SENSOR_DEVICE_ATTR_RO(fan3_input, fan, 2);
drivers/hwmon/lm78.c
750
data->fan[i] =
drivers/hwmon/lm80.c
124
u8 fan[f_num_fan][2]; /* Register value, 1st index enum fan_index */
drivers/hwmon/lm80.c
192
data->fan[f_input][0] = rv;
drivers/hwmon/lm80.c
197
data->fan[f_min][0] = rv;
drivers/hwmon/lm80.c
202
data->fan[f_input][1] = rv;
drivers/hwmon/lm80.c
207
data->fan[f_min][1] = rv;
drivers/hwmon/lm80.c
301
return sprintf(buf, "%d\n", FAN_FROM_REG(data->fan[nr][index],
drivers/hwmon/lm80.c
328
data->fan[nr][index] = FAN_TO_REG(val,
drivers/hwmon/lm80.c
331
data->fan[nr][index]);
drivers/hwmon/lm80.c
359
min = FAN_FROM_REG(data->fan[f_min][nr],
drivers/hwmon/lm80.c
393
data->fan[f_min][nr] = FAN_TO_REG(min, DIV_FROM_REG(data->fan_div[nr]));
drivers/hwmon/lm80.c
395
data->fan[f_min][nr]);
drivers/hwmon/lm80.c
471
static SENSOR_DEVICE_ATTR_2_RW(fan1_min, fan, f_min, 0);
drivers/hwmon/lm80.c
472
static SENSOR_DEVICE_ATTR_2_RW(fan2_min, fan, f_min, 1);
drivers/hwmon/lm80.c
473
static SENSOR_DEVICE_ATTR_2_RO(fan1_input, fan, f_input, 0);
drivers/hwmon/lm80.c
474
static SENSOR_DEVICE_ATTR_2_RO(fan2_input, fan, f_input, 1);
drivers/hwmon/lm80.c
611
data->fan[f_min][0] = lm80_read_value(client, LM80_REG_FAN_MIN(1));
drivers/hwmon/lm80.c
612
data->fan[f_min][1] = lm80_read_value(client, LM80_REG_FAN_MIN(2));
drivers/hwmon/lm85.c
1453
u8 in_temp, fan;
drivers/hwmon/lm85.c
1457
fan = i2c_smbus_read_byte_data(client, 0x28 + i);
drivers/hwmon/lm85.c
1458
if (in_temp != 0x00 || fan != 0xff)
drivers/hwmon/lm85.c
307
u16 fan[4]; /* Register value */
drivers/hwmon/lm85.c
409
data->fan[i] =
drivers/hwmon/lm85.c
557
return sprintf(buf, "%d\n", FAN_FROM_REG(data->fan[nr]));
drivers/hwmon/lm85.c
589
static SENSOR_DEVICE_ATTR_RO(fan1_input, fan, 0);
drivers/hwmon/lm85.c
591
static SENSOR_DEVICE_ATTR_RO(fan2_input, fan, 1);
drivers/hwmon/lm85.c
593
static SENSOR_DEVICE_ATTR_RO(fan3_input, fan, 2);
drivers/hwmon/lm85.c
595
static SENSOR_DEVICE_ATTR_RO(fan4_input, fan, 3);
drivers/hwmon/lm87.c
167
u8 fan[2]; /* register value */
drivers/hwmon/lm87.c
222
data->fan[i] = lm87_read_value(client,
drivers/hwmon/lm87.c
474
return sprintf(buf, "%d\n", fan_from_reg(data->fan[nr],
drivers/hwmon/lm93.c
1695
struct lm93_data *data, int fan, long value)
drivers/hwmon/lm93.c
1699
data->sf_tach_to_pwm &= ~(0x3 << fan * 2);
drivers/hwmon/lm93.c
1700
data->sf_tach_to_pwm |= value << fan * 2;
drivers/hwmon/lm93.c
1706
data->sfc2 |= 1 << fan;
drivers/hwmon/lm93.c
1708
data->sfc2 &= ~(1 << fan);
drivers/hwmon/macsmc-hwmon.c
111
*str = hwmon->fan.fans[channel].label;
drivers/hwmon/macsmc-hwmon.c
277
&hwmon->fan.fans[chan].now, 1, val);
drivers/hwmon/macsmc-hwmon.c
280
&hwmon->fan.fans[chan].min, 1, val);
drivers/hwmon/macsmc-hwmon.c
283
&hwmon->fan.fans[chan].max, 1, val);
drivers/hwmon/macsmc-hwmon.c
286
&hwmon->fan.fans[chan].set, 1, val);
drivers/hwmon/macsmc-hwmon.c
299
if (!fan_control || hwmon->fan.fans[channel].mode.macsmc_key == 0)
drivers/hwmon/macsmc-hwmon.c
305
ret = macsmc_hwmon_read_key(hwmon->smc, &hwmon->fan.fans[channel].min,
drivers/hwmon/macsmc-hwmon.c
310
ret = macsmc_hwmon_read_key(hwmon->smc, &hwmon->fan.fans[channel].max,
drivers/hwmon/macsmc-hwmon.c
316
if (!hwmon->fan.fans[channel].manual) {
drivers/hwmon/macsmc-hwmon.c
319
&hwmon->fan.fans[channel].mode, 1);
drivers/hwmon/macsmc-hwmon.c
323
hwmon->fan.fans[channel].manual = true;
drivers/hwmon/macsmc-hwmon.c
326
&hwmon->fan.fans[channel].set, val);
drivers/hwmon/macsmc-hwmon.c
328
if (hwmon->fan.fans[channel].manual) {
drivers/hwmon/macsmc-hwmon.c
330
&hwmon->fan.fans[channel].mode, 0);
drivers/hwmon/macsmc-hwmon.c
334
hwmon->fan.fans[channel].manual = false;
drivers/hwmon/macsmc-hwmon.c
389
static umode_t macsmc_hwmon_fan_is_visible(const struct macsmc_hwmon_fan *fan,
drivers/hwmon/macsmc-hwmon.c
392
if (fan->attrs & BIT(attr)) {
drivers/hwmon/macsmc-hwmon.c
393
if (attr == hwmon_fan_target && fan_control && fan->mode.macsmc_key)
drivers/hwmon/macsmc-hwmon.c
423
return macsmc_hwmon_fan_is_visible(&hwmon->fan.fans[channel], attr);
drivers/hwmon/macsmc-hwmon.c
502
struct macsmc_hwmon_fan *fan)
drivers/hwmon/macsmc-hwmon.c
513
ret = macsmc_hwmon_parse_key(dev, smc, &fan->now, now);
drivers/hwmon/macsmc-hwmon.c
517
fan->attrs = HWMON_F_INPUT;
drivers/hwmon/macsmc-hwmon.c
523
strscpy_pad(fan->label, label, sizeof(fan->label));
drivers/hwmon/macsmc-hwmon.c
524
fan->attrs |= HWMON_F_LABEL;
drivers/hwmon/macsmc-hwmon.c
529
ret = macsmc_hwmon_parse_key(dev, smc, &fan->min, min);
drivers/hwmon/macsmc-hwmon.c
533
fan->attrs |= HWMON_F_MIN;
drivers/hwmon/macsmc-hwmon.c
537
ret = macsmc_hwmon_parse_key(dev, smc, &fan->max, max);
drivers/hwmon/macsmc-hwmon.c
541
fan->attrs |= HWMON_F_MAX;
drivers/hwmon/macsmc-hwmon.c
545
ret = macsmc_hwmon_parse_key(dev, smc, &fan->set, set);
drivers/hwmon/macsmc-hwmon.c
549
fan->attrs |= HWMON_F_TARGET;
drivers/hwmon/macsmc-hwmon.c
553
ret = macsmc_hwmon_parse_key(dev, smc, &fan->mode, mode);
drivers/hwmon/macsmc-hwmon.c
559
fan->manual = false;
drivers/hwmon/macsmc-hwmon.c
599
hwmon->fan.fans = devm_kcalloc(hwmon->dev, n_fan,
drivers/hwmon/macsmc-hwmon.c
601
if (!hwmon->fan.fans)
drivers/hwmon/macsmc-hwmon.c
606
&hwmon->fan.fans[hwmon->fan.count]))
drivers/hwmon/macsmc-hwmon.c
607
hwmon->fan.count++;
drivers/hwmon/macsmc-hwmon.c
723
if (hwmon->fan.count) {
drivers/hwmon/macsmc-hwmon.c
724
channel_info = &hwmon->fan.channel_info;
drivers/hwmon/macsmc-hwmon.c
726
channel_info->config = devm_kcalloc(hwmon->dev, hwmon->fan.count + 1,
drivers/hwmon/macsmc-hwmon.c
731
macsmc_hwmon_populate_fan_configs((u32 *)channel_info->config, &hwmon->fan);
drivers/hwmon/macsmc-hwmon.c
802
if (!hwmon->curr.count && !hwmon->fan.count &&
drivers/hwmon/macsmc-hwmon.c
828
hwmon->curr.count, hwmon->fan.count,
drivers/hwmon/macsmc-hwmon.c
88
struct macsmc_hwmon_fans fan;
drivers/hwmon/max31760.c
324
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/max31790.c
430
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/max6620.c
387
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/max6639.c
478
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/max6650.c
741
HWMON_CHANNEL_INFO(fan, HWMON_F_INPUT | HWMON_F_TARGET | HWMON_F_DIV |
drivers/hwmon/mlxreg-fan.c
125
struct mlxreg_fan *fan = dev_get_drvdata(dev);
drivers/hwmon/mlxreg-fan.c
133
tacho = &fan->tacho[channel];
drivers/hwmon/mlxreg-fan.c
140
if (tacho->prsnt && fan->tachos_per_drwr) {
drivers/hwmon/mlxreg-fan.c
141
err = regmap_read(fan->regmap, tacho->prsnt, &regval);
drivers/hwmon/mlxreg-fan.c
150
if (BIT(rol32(channel, tacho->shift) / fan->tachos_per_drwr) &
drivers/hwmon/mlxreg-fan.c
158
err = regmap_read(fan->regmap, tacho->reg, &regval);
drivers/hwmon/mlxreg-fan.c
168
*val = MLXREG_FAN_GET_RPM(regval, fan->divider,
drivers/hwmon/mlxreg-fan.c
169
fan->samples);
drivers/hwmon/mlxreg-fan.c
173
err = regmap_read(fan->regmap, tacho->reg, &regval);
drivers/hwmon/mlxreg-fan.c
186
pwm = &fan->pwm[channel];
drivers/hwmon/mlxreg-fan.c
189
err = regmap_read(fan->regmap, pwm->reg, &regval);
drivers/hwmon/mlxreg-fan.c
212
struct mlxreg_fan *fan = dev_get_drvdata(dev);
drivers/hwmon/mlxreg-fan.c
222
pwm = &fan->pwm[channel];
drivers/hwmon/mlxreg-fan.c
236
return regmap_write(fan->regmap, pwm->reg, val);
drivers/hwmon/mlxreg-fan.c
294
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/mlxreg-fan.c
350
struct mlxreg_fan *fan = pwm->fan;
drivers/hwmon/mlxreg-fan.c
354
err = regmap_read(fan->regmap, pwm->reg, &regval);
drivers/hwmon/mlxreg-fan.c
356
dev_err(fan->dev, "Failed to query PWM duty\n");
drivers/hwmon/mlxreg-fan.c
369
struct mlxreg_fan *fan = pwm->fan;
drivers/hwmon/mlxreg-fan.c
380
err = regmap_write(fan->regmap, pwm->reg,
drivers/hwmon/mlxreg-fan.c
383
dev_err(fan->dev, "Failed to write PWM duty\n");
drivers/hwmon/mlxreg-fan.c
402
static int mlxreg_fan_connect_verify(struct mlxreg_fan *fan,
drivers/hwmon/mlxreg-fan.c
408
err = regmap_read(fan->regmap, data->capability, &regval);
drivers/hwmon/mlxreg-fan.c
410
dev_err(fan->dev, "Failed to query capability register 0x%08x\n",
drivers/hwmon/mlxreg-fan.c
418
static int mlxreg_pwm_connect_verify(struct mlxreg_fan *fan,
drivers/hwmon/mlxreg-fan.c
424
err = regmap_read(fan->regmap, data->reg, &regval);
drivers/hwmon/mlxreg-fan.c
426
dev_err(fan->dev, "Failed to query pwm register 0x%08x\n",
drivers/hwmon/mlxreg-fan.c
434
static int mlxreg_fan_speed_divider_get(struct mlxreg_fan *fan,
drivers/hwmon/mlxreg-fan.c
440
err = regmap_read(fan->regmap, data->capability, &regval);
drivers/hwmon/mlxreg-fan.c
442
dev_err(fan->dev, "Failed to query capability register 0x%08x\n",
drivers/hwmon/mlxreg-fan.c
454
fan->divider = regval * MLXREG_FAN_TACHO_DIV_MIN;
drivers/hwmon/mlxreg-fan.c
459
static int mlxreg_fan_config(struct mlxreg_fan *fan,
drivers/hwmon/mlxreg-fan.c
467
fan->samples = MLXREG_FAN_TACHO_SAMPLES_PER_PULSE_DEF;
drivers/hwmon/mlxreg-fan.c
468
fan->divider = MLXREG_FAN_TACHO_DIV_DEF;
drivers/hwmon/mlxreg-fan.c
472
dev_err(fan->dev, "too many tacho entries: %s\n",
drivers/hwmon/mlxreg-fan.c
478
err = mlxreg_fan_connect_verify(fan, data);
drivers/hwmon/mlxreg-fan.c
487
fan->tacho[tacho_num].reg = data->reg;
drivers/hwmon/mlxreg-fan.c
488
fan->tacho[tacho_num].mask = data->mask;
drivers/hwmon/mlxreg-fan.c
489
fan->tacho[tacho_num].prsnt = data->reg_prsnt;
drivers/hwmon/mlxreg-fan.c
490
fan->tacho[tacho_num++].connected = true;
drivers/hwmon/mlxreg-fan.c
494
dev_err(fan->dev, "too many pwm entries: %s\n",
drivers/hwmon/mlxreg-fan.c
501
err = mlxreg_pwm_connect_verify(fan, data);
drivers/hwmon/mlxreg-fan.c
508
fan->pwm[pwm_num].reg = data->reg;
drivers/hwmon/mlxreg-fan.c
509
fan->pwm[pwm_num].connected = true;
drivers/hwmon/mlxreg-fan.c
513
dev_err(fan->dev, "duplicate conf entry: %s\n",
drivers/hwmon/mlxreg-fan.c
519
dev_err(fan->dev, "invalid conf entry params: %s\n",
drivers/hwmon/mlxreg-fan.c
524
err = mlxreg_fan_speed_divider_get(fan, data);
drivers/hwmon/mlxreg-fan.c
529
fan->samples = data->mask;
drivers/hwmon/mlxreg-fan.c
531
fan->divider = data->bit;
drivers/hwmon/mlxreg-fan.c
535
dev_err(fan->dev, "invalid label: %s\n", data->label);
drivers/hwmon/mlxreg-fan.c
545
err = regmap_read(fan->regmap, pdata->capability, &regval);
drivers/hwmon/mlxreg-fan.c
547
dev_err(fan->dev, "Failed to query capability register 0x%08x\n",
drivers/hwmon/mlxreg-fan.c
562
dev_err(fan->dev, "Configuration is invalid: drawers num %d tachos num %d\n",
drivers/hwmon/mlxreg-fan.c
568
fan->tachos_per_drwr = tacho_avail / drwr_avail;
drivers/hwmon/mlxreg-fan.c
574
static int mlxreg_fan_cooling_config(struct device *dev, struct mlxreg_fan *fan)
drivers/hwmon/mlxreg-fan.c
579
struct mlxreg_fan_pwm *pwm = &fan->pwm[i];
drivers/hwmon/mlxreg-fan.c
583
pwm->fan = fan;
drivers/hwmon/mlxreg-fan.c
601
struct mlxreg_fan *fan;
drivers/hwmon/mlxreg-fan.c
611
fan = devm_kzalloc(dev, sizeof(*fan), GFP_KERNEL);
drivers/hwmon/mlxreg-fan.c
612
if (!fan)
drivers/hwmon/mlxreg-fan.c
615
fan->dev = dev;
drivers/hwmon/mlxreg-fan.c
616
fan->regmap = pdata->regmap;
drivers/hwmon/mlxreg-fan.c
618
err = mlxreg_fan_config(fan, pdata);
drivers/hwmon/mlxreg-fan.c
623
fan,
drivers/hwmon/mlxreg-fan.c
632
err = mlxreg_fan_cooling_config(dev, fan);
drivers/hwmon/mlxreg-fan.c
88
struct mlxreg_fan *fan;
drivers/hwmon/nct6683.c
751
int fan = index / 3; /* fan index */
drivers/hwmon/nct6683.c
754
if (!(data->have_fan & (1 << fan)))
drivers/hwmon/nct6694-hwmon.c
213
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/nct6775-core.c
2141
int fan = index / 6; /* fan index */
drivers/hwmon/nct6775-core.c
2144
if (!(data->has_fan & BIT(fan)))
drivers/hwmon/nct6775-core.c
2147
if (nr == 1 && data->ALARM_BITS[FAN_ALARM_BASE + fan] == -1)
drivers/hwmon/nct6775-core.c
2149
if (nr == 2 && data->BEEP_BITS[FAN_ALARM_BASE + fan] == -1)
drivers/hwmon/nct6775-core.c
2151
if (nr == 3 && !data->REG_FAN_PULSES[fan])
drivers/hwmon/nct6775-core.c
2153
if (nr == 4 && !(data->has_fan_min & BIT(fan)))
drivers/hwmon/nct6775-core.c
968
static u16 fan_to_reg(u32 fan, unsigned int divreg)
drivers/hwmon/nct6775-core.c
970
if (!fan)
drivers/hwmon/nct6775-core.c
973
return (1350000U / fan) >> divreg;
drivers/hwmon/nct7363.c
254
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/nct7802.c
809
static SENSOR_DEVICE_ATTR_RO(fan1_input, fan, 0x10);
drivers/hwmon/nct7802.c
813
static SENSOR_DEVICE_ATTR_RO(fan2_input, fan, 0x11);
drivers/hwmon/nct7802.c
817
static SENSOR_DEVICE_ATTR_RO(fan3_input, fan, 0x12);
drivers/hwmon/nct7802.c
859
int fan = index / 4; /* 4 attributes per fan */
drivers/hwmon/nct7802.c
864
if (err < 0 || !(reg & (1 << fan)))
drivers/hwmon/nct7904.c
837
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/npcm750-pwm-fan.c
165
#define NPCM7XX_FAN_INPUT(fan, cmp) (((fan) << 1) + (cmp))
drivers/hwmon/npcm750-pwm-fan.c
263
u8 fan, u8 cmp)
drivers/hwmon/npcm750-pwm-fan.c
270
fan_id = NPCM7XX_FAN_INPUT(fan, cmp);
drivers/hwmon/npcm750-pwm-fan.c
275
spin_lock_irqsave(&data->fan_lock[fan], flags);
drivers/hwmon/npcm750-pwm-fan.c
278
reg_int = ioread8(NPCM7XX_FAN_REG_TIEN(data->fan_base, fan));
drivers/hwmon/npcm750-pwm-fan.c
290
NPCM7XX_FAN_REG_TIEN(data->fan_base, fan));
drivers/hwmon/npcm750-pwm-fan.c
294
fan));
drivers/hwmon/npcm750-pwm-fan.c
298
fan));
drivers/hwmon/npcm750-pwm-fan.c
303
NPCM7XX_FAN_REG_TIEN(data->fan_base, fan));
drivers/hwmon/npcm750-pwm-fan.c
308
fan));
drivers/hwmon/npcm750-pwm-fan.c
312
NPCM7XX_FAN_REG_TCKC(data->fan_base, fan));
drivers/hwmon/npcm750-pwm-fan.c
315
spin_unlock_irqrestore(&data->fan_lock[fan], flags);
drivers/hwmon/npcm750-pwm-fan.c
362
u8 fan, u8 cmp, u8 fan_id, u8 flag_int,
drivers/hwmon/npcm750-pwm-fan.c
370
fan_cap = ioread16(NPCM7XX_FAN_REG_TCRA(data->fan_base, fan));
drivers/hwmon/npcm750-pwm-fan.c
372
fan_cap = ioread16(NPCM7XX_FAN_REG_TCRB(data->fan_base, fan));
drivers/hwmon/npcm750-pwm-fan.c
375
iowrite8(flag_clear, NPCM7XX_FAN_REG_TICLR(data->fan_base, fan));
drivers/hwmon/npcm750-pwm-fan.c
407
reg_int = ioread8(NPCM7XX_FAN_REG_TIEN(data->fan_base, fan));
drivers/hwmon/npcm750-pwm-fan.c
411
NPCM7XX_FAN_REG_TIEN(data->fan_base, fan));
drivers/hwmon/npcm750-pwm-fan.c
412
reg_mode = ioread8(NPCM7XX_FAN_REG_TCKC(data->fan_base, fan));
drivers/hwmon/npcm750-pwm-fan.c
416
NPCM7XX_FAN_REG_TCKC(data->fan_base, fan));
drivers/hwmon/npcm750-pwm-fan.c
421
u8 fan, u8 cmp, u8 flag)
drivers/hwmon/npcm750-pwm-fan.c
432
fan_id = NPCM7XX_FAN_INPUT(fan, cmp);
drivers/hwmon/npcm750-pwm-fan.c
449
reg_int = ioread8(NPCM7XX_FAN_REG_TIEN(data->fan_base, fan));
drivers/hwmon/npcm750-pwm-fan.c
453
NPCM7XX_FAN_REG_TIEN(data->fan_base, fan));
drivers/hwmon/npcm750-pwm-fan.c
457
NPCM7XX_FAN_REG_TICLR(data->fan_base, fan));
drivers/hwmon/npcm750-pwm-fan.c
459
reg_mode = ioread8(NPCM7XX_FAN_REG_TCKC(data->fan_base, fan));
drivers/hwmon/npcm750-pwm-fan.c
463
NPCM7XX_FAN_REG_TCKC(data->fan_base, fan));
drivers/hwmon/npcm750-pwm-fan.c
474
npcm7xx_fan_compute(data, fan, cmp, fan_id, flag_int,
drivers/hwmon/npcm750-pwm-fan.c
644
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/nzxt-kraken2.c
85
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/nzxt-kraken3.c
714
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/nzxt-smart2.c
667
HWMON_CHANNEL_INFO(fan, HWMON_F_INPUT | HWMON_F_LABEL,
drivers/hwmon/pc87360.c
1123
return sprintf(buf, "%u\n", FAN_FROM_REG(data->fan[attr->index],
drivers/hwmon/pc87360.c
1193
data->fan[attr->index] >>= 1;
drivers/hwmon/pc87360.c
200
u8 fan[3]; /* Register value */
drivers/hwmon/pc87360.c
260
|| (data->fan[nr] >= 224)) { /* next to overflow */
drivers/hwmon/pc87360.c
264
data->fan[nr] >>= 1;
drivers/hwmon/pc87360.c
272
&& data->fan[nr] < 85 /* bad accuracy */
drivers/hwmon/pc87360.c
276
data->fan[nr] <<= 1;
drivers/hwmon/pc87360.c
308
data->fan[i] = pc87360_read_value(data, LD_FAN,
drivers/hwmon/pc87427.c
189
data->fan[nr] = inw(iobase + PC87427_REG_FAN);
drivers/hwmon/pc87427.c
393
return sprintf(buf, "%lu\n", fan_from_reg(data->fan[nr]));
drivers/hwmon/pc87427.c
54
u16 fan[8]; /* register values */
drivers/hwmon/pmbus/ucd9000.c
89
static int ucd9000_get_fan_config(struct i2c_client *client, int fan)
drivers/hwmon/pmbus/ucd9000.c
95
if (data->fan_data[fan][3] & 1)
drivers/hwmon/pmbus/ucd9000.c
99
fan_config |= (data->fan_data[fan][3] & 0x06) >> 1;
drivers/hwmon/qnap-mcu-hwmon.c
287
HWMON_CHANNEL_INFO(fan, HWMON_F_INPUT),
drivers/hwmon/sch5627.c
167
data->fan[i] = val;
drivers/hwmon/sch5627.c
342
ret = reg_to_rpm(data->fan[channel]);
drivers/hwmon/sch5627.c
365
*val = (data->fan[channel] == 0xffff);
drivers/hwmon/sch5627.c
428
u16 fan;
drivers/hwmon/sch5627.c
447
fan = sch5627_rpm_to_reg(val);
drivers/hwmon/sch5627.c
450
fan);
drivers/hwmon/sch5627.c
493
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/sch5627.c
91
u16 fan[SCH5627_NO_FANS];
drivers/hwmon/sis5595.c
180
u8 fan[2]; /* Register value */
drivers/hwmon/sis5595.c
232
data->fan[i] =
drivers/hwmon/sis5595.c
416
return sprintf(buf, "%d\n", FAN_FROM_REG(data->fan[nr],
drivers/hwmon/sis5595.c
522
static SENSOR_DEVICE_ATTR_RO(fan1_input, fan, 0);
drivers/hwmon/sis5595.c
525
static SENSOR_DEVICE_ATTR_RO(fan2_input, fan, 1);
drivers/hwmon/sl28cpld-hwmon.c
64
HWMON_CHANNEL_INFO(fan, HWMON_F_INPUT),
drivers/hwmon/smsc47b397.c
102
u16 fan[4];
drivers/hwmon/smsc47b397.c
133
data->fan[i] = smsc47b397_read_value(data,
drivers/hwmon/smsc47b397.c
135
data->fan[i] |= smsc47b397_read_value(data,
drivers/hwmon/smsc47b397.c
188
return sprintf(buf, "%d\n", fan_from_reg(data->fan[attr->index]));
drivers/hwmon/smsc47b397.c
190
static SENSOR_DEVICE_ATTR_RO(fan1_input, fan, 0);
drivers/hwmon/smsc47b397.c
191
static SENSOR_DEVICE_ATTR_RO(fan2_input, fan, 1);
drivers/hwmon/smsc47b397.c
192
static SENSOR_DEVICE_ATTR_RO(fan3_input, fan, 2);
drivers/hwmon/smsc47b397.c
193
static SENSOR_DEVICE_ATTR_RO(fan4_input, fan, 3);
drivers/hwmon/smsc47m1.c
125
u8 fan[3]; /* Register value */
drivers/hwmon/smsc47m1.c
160
data->fan[i] = smsc47m1_read_value(data,
drivers/hwmon/smsc47m1.c
210
FAN_FROM_REG(data->fan[nr],
drivers/hwmon/smsc47m1.c
422
static SENSOR_DEVICE_ATTR_RO(fan1_input, fan, 0);
drivers/hwmon/smsc47m1.c
428
static SENSOR_DEVICE_ATTR_RO(fan2_input, fan, 1);
drivers/hwmon/smsc47m1.c
434
static SENSOR_DEVICE_ATTR_RO(fan3_input, fan, 2);
drivers/hwmon/surface_fan.c
39
HWMON_CHANNEL_INFO(fan, HWMON_F_INPUT),
drivers/hwmon/tc654.c
428
static SENSOR_DEVICE_ATTR_RO(fan1_input, fan, 0);
drivers/hwmon/tc654.c
429
static SENSOR_DEVICE_ATTR_RO(fan2_input, fan, 1);
drivers/hwmon/ultra45_env.c
150
static SENSOR_DEVICE_ATTR(fan##index##_speed, S_IRUGO | S_IWUSR, \
drivers/hwmon/ultra45_env.c
152
static SENSOR_DEVICE_ATTR(fan##index##_fault, S_IRUGO, \
drivers/hwmon/ultra45_env.c
155
fan(0);
drivers/hwmon/ultra45_env.c
156
fan(1);
drivers/hwmon/ultra45_env.c
157
fan(2);
drivers/hwmon/ultra45_env.c
158
fan(3);
drivers/hwmon/ultra45_env.c
159
fan(4);
drivers/hwmon/via686a.c
315
u8 fan[2]; /* Register value */
drivers/hwmon/via686a.c
363
data->fan[i - 1] =
drivers/hwmon/via686a.c
569
return sprintf(buf, "%d\n", FAN_FROM_REG(data->fan[nr],
drivers/hwmon/via686a.c
628
static SENSOR_DEVICE_ATTR_RO(fan1_input, fan, 0);
drivers/hwmon/via686a.c
631
static SENSOR_DEVICE_ATTR_RO(fan2_input, fan, 1);
drivers/hwmon/vt1211.c
1018
SENSOR_ATTR_2(fan##ix##_input, S_IRUGO, \
drivers/hwmon/vt1211.c
1020
SENSOR_ATTR_2(fan##ix##_min, S_IRUGO | S_IWUSR, \
drivers/hwmon/vt1211.c
1022
SENSOR_ATTR_2(fan##ix##_div, S_IRUGO | S_IWUSR, \
drivers/hwmon/vt1211.c
1024
SENSOR_ATTR_2(fan##ix##_alarm, S_IRUGO, \
drivers/hwmon/vt1211.c
118
u8 fan[2];
drivers/hwmon/vt1211.c
295
for (ix = 0; ix < ARRAY_SIZE(data->fan); ix++) {
drivers/hwmon/vt1211.c
296
data->fan[ix] = vt1211_read8(data,
drivers/hwmon/vt1211.c
513
res = rpm_from_reg(data->fan[ix], data->fan_div[ix]);
drivers/hwmon/vt8231.c
163
u8 fan[2]; /* Register value */
drivers/hwmon/vt8231.c
204
data->fan[i] = vt8231_read_value(data,
drivers/hwmon/vt8231.c
232
if (!data->fan[0] && data->fan_min[0])
drivers/hwmon/vt8231.c
234
else if (data->fan[0] && !data->fan_min[0])
drivers/hwmon/vt8231.c
237
if (!data->fan[1] && data->fan_min[1])
drivers/hwmon/vt8231.c
239
else if (data->fan[1] && !data->fan_min[1])
drivers/hwmon/vt8231.c
569
return sprintf(buf, "%d\n", fan_from_reg(data->fan[nr],
drivers/hwmon/vt8231.c
663
static SENSOR_DEVICE_ATTR_RO(fan1_input, fan, 0);
drivers/hwmon/vt8231.c
666
static SENSOR_DEVICE_ATTR_RO(fan2_input, fan, 1);
drivers/hwmon/w83627ehf.c
1647
HWMON_CHANNEL_INFO(fan,
drivers/hwmon/w83627hf.c
1101
return sprintf(buf, "%ld\n", FAN_FROM_REG(data->fan[nr],
drivers/hwmon/w83627hf.c
364
u8 fan[3]; /* Register value */
drivers/hwmon/w83627hf.c
503
data->fan[i] =
drivers/hwmon/w83781d.c
1467
data->fan[i] =
drivers/hwmon/w83781d.c
215
u8 fan[3]; /* Register value */
drivers/hwmon/w83781d.c
309
show_fan_reg(fan);
drivers/hwmon/w83791d.c
1507
data->fan[i] = w83791d_read(client,
drivers/hwmon/w83791d.c
1628
dev_dbg(dev, "fan[%d] is: 0x%02x\n", i, data->fan[i]);
drivers/hwmon/w83791d.c
287
u8 fan[NUMBER_OF_FANIN]; /* Register value */
drivers/hwmon/w83791d.c
532
show_fan_reg(fan);
drivers/hwmon/w83792d.c
1507
data->fan[i] = w83792d_read_value(client,
drivers/hwmon/w83792d.c
1617
dev_dbg(dev, "fan[%d] is: 0x%x\n", i, data->fan[i]);
drivers/hwmon/w83792d.c
271
u8 fan[7]; /* Register value */
drivers/hwmon/w83792d.c
401
show_fan_reg(fan);
drivers/hwmon/w83793.c
1028
SENSOR_ATTR_2(fan##index##_alarm, S_IRUGO, show_alarm_beep, \
drivers/hwmon/w83793.c
1030
SENSOR_ATTR_2(fan##index##_beep, S_IWUSR | S_IRUGO, \
drivers/hwmon/w83793.c
1032
SENSOR_ATTR_2(fan##index##_input, S_IRUGO, show_fan, \
drivers/hwmon/w83793.c
1034
SENSOR_ATTR_2(fan##index##_min, S_IWUSR | S_IRUGO, \
drivers/hwmon/w83793.c
2042
for (i = 0; i < ARRAY_SIZE(data->fan); i++) {
drivers/hwmon/w83793.c
2045
data->fan[i] =
drivers/hwmon/w83793.c
2047
data->fan[i] |=
drivers/hwmon/w83793.c
220
u16 fan[12]; /* Register value combine */
drivers/hwmon/w83793.c
473
val = data->fan[index] & 0x0fff;
drivers/hwmon/w83795.c
1627
SENSOR_ATTR_2(fan##index##_input, S_IRUGO, show_fan, \
drivers/hwmon/w83795.c
1629
SENSOR_ATTR_2(fan##index##_min, S_IWUSR | S_IRUGO, \
drivers/hwmon/w83795.c
1631
SENSOR_ATTR_2(fan##index##_alarm, S_IRUGO, show_alarm_beep, \
drivers/hwmon/w83795.c
1633
SENSOR_ATTR_2(fan##index##_beep, S_IWUSR | S_IRUGO, \
drivers/hwmon/w83795.c
1651
SENSOR_ATTR_2(fan##index##_target, S_IWUSR | S_IRUGO, \
drivers/hwmon/w83795.c
335
u16 fan[14]; /* Register value combine */
drivers/hwmon/w83795.c
479
for (i = 0; i < ARRAY_SIZE(data->fan); i++) {
drivers/hwmon/w83795.c
632
for (i = 0; i < ARRAY_SIZE(data->fan); i++) {
drivers/hwmon/w83795.c
635
data->fan[i] = w83795_read(client, W83795_REG_FAN(i)) << 4;
drivers/hwmon/w83795.c
636
data->fan[i] |= w83795_read(client, W83795_REG_VRLSB) >> 4;
drivers/hwmon/w83795.c
785
val = data->fan[index] & 0x0fff;
drivers/hwmon/w83l786ng.c
133
u8 fan[2];
drivers/hwmon/w83l786ng.c
183
data->fan[i] = w83l786ng_read_value(client,
drivers/hwmon/w83l786ng.c
296
show_fan_reg(fan);
drivers/macintosh/therm_adt746x.c
150
static void write_fan_speed(struct thermostat *th, int speed, int fan)
drivers/macintosh/therm_adt746x.c
159
if (th->type == ADT7467 && fan == 1)
drivers/macintosh/therm_adt746x.c
162
if (th->last_speed[fan] != speed) {
drivers/macintosh/therm_adt746x.c
166
"for %s fan.\n", sensor_location[fan+1]);
drivers/macintosh/therm_adt746x.c
169
"for %s fan.\n", speed, sensor_location[fan+1]);
drivers/macintosh/therm_adt746x.c
175
manual = read_reg(th, MANUAL_MODE[fan]);
drivers/macintosh/therm_adt746x.c
177
write_reg(th, MANUAL_MODE[fan],
drivers/macintosh/therm_adt746x.c
178
manual | MANUAL_MASK | th->pwm_inv[fan]);
drivers/macintosh/therm_adt746x.c
179
write_reg(th, FAN_SPD_SET[fan], speed);
drivers/macintosh/therm_adt746x.c
184
MANUAL_MODE[fan]) & (~MANUAL_MASK);
drivers/macintosh/therm_adt746x.c
186
manual |= th->pwm_inv[fan];
drivers/macintosh/therm_adt746x.c
188
MANUAL_MODE[fan], manual|REM_CONTROL[fan]);
drivers/macintosh/therm_adt746x.c
190
manual = read_reg(th, MANUAL_MODE[fan]);
drivers/macintosh/therm_adt746x.c
192
manual |= th->pwm_inv[fan];
drivers/macintosh/therm_adt746x.c
193
write_reg(th, MANUAL_MODE[fan], manual&(~AUTO_MASK));
drivers/macintosh/therm_adt746x.c
197
th->last_speed[fan] = speed;
drivers/macintosh/therm_adt746x.c
93
static void write_fan_speed(struct thermostat *th, int speed, int fan);
drivers/macintosh/therm_windtunnel.c
159
write_reg( x.fan, 0x25, val, 1 );
drivers/macintosh/therm_windtunnel.c
160
write_reg( x.fan, 0x20, 0, 1 );
drivers/macintosh/therm_windtunnel.c
180
casetemp = read_reg(x.fan, 0x0b, 1) << 8;
drivers/macintosh/therm_windtunnel.c
181
casetemp |= (read_reg(x.fan, 0x06, 1) & 0x7) << 5;
drivers/macintosh/therm_windtunnel.c
216
x.r0 = read_reg( x.fan, 0x00, 1 );
drivers/macintosh/therm_windtunnel.c
217
x.r1 = read_reg( x.fan, 0x01, 1 );
drivers/macintosh/therm_windtunnel.c
218
x.r20 = read_reg( x.fan, 0x20, 1 );
drivers/macintosh/therm_windtunnel.c
219
x.r23 = read_reg( x.fan, 0x23, 1 );
drivers/macintosh/therm_windtunnel.c
220
x.r25 = read_reg( x.fan, 0x25, 1 );
drivers/macintosh/therm_windtunnel.c
229
write_reg( x.fan, 0x01, 0x01, 1 );
drivers/macintosh/therm_windtunnel.c
231
write_reg( x.fan, 0x23, 0x91, 1 );
drivers/macintosh/therm_windtunnel.c
233
write_reg( x.fan, 0x00, 0x95, 1 );
drivers/macintosh/therm_windtunnel.c
269
write_reg( x.fan, 0x01, x.r1, 1 );
drivers/macintosh/therm_windtunnel.c
270
write_reg( x.fan, 0x20, x.r20, 1 );
drivers/macintosh/therm_windtunnel.c
271
write_reg( x.fan, 0x23, x.r23, 1 );
drivers/macintosh/therm_windtunnel.c
272
write_reg( x.fan, 0x25, x.r25, 1 );
drivers/macintosh/therm_windtunnel.c
273
write_reg( x.fan, 0x00, x.r0, 1 );
drivers/macintosh/therm_windtunnel.c
351
else if (client == x.fan)
drivers/macintosh/therm_windtunnel.c
352
x.fan = NULL;
drivers/macintosh/therm_windtunnel.c
360
if( x.fan )
drivers/macintosh/therm_windtunnel.c
368
x.fan = cl;
drivers/macintosh/therm_windtunnel.c
435
if (!x.running && x.thermostat && x.fan) {
drivers/macintosh/therm_windtunnel.c
58
struct i2c_client *fan;
drivers/macintosh/windfarm_fcu_controls.c
146
struct wf_fcu_fan *fan = ct->priv;
drivers/macintosh/windfarm_fcu_controls.c
147
struct wf_fcu_priv *pv = fan->fcu_priv;
drivers/macintosh/windfarm_fcu_controls.c
151
if (value < fan->min)
drivers/macintosh/windfarm_fcu_controls.c
152
value = fan->min;
drivers/macintosh/windfarm_fcu_controls.c
153
if (value > fan->max)
drivers/macintosh/windfarm_fcu_controls.c
154
value = fan->max;
drivers/macintosh/windfarm_fcu_controls.c
156
fan->target = value;
drivers/macintosh/windfarm_fcu_controls.c
160
rc = wf_fcu_write_reg(pv, 0x10 + (fan->id * 2), buf, 2);
drivers/macintosh/windfarm_fcu_controls.c
168
struct wf_fcu_fan *fan = ct->priv;
drivers/macintosh/windfarm_fcu_controls.c
169
struct wf_fcu_priv *pv = fan->fcu_priv;
drivers/macintosh/windfarm_fcu_controls.c
178
if ((failure & (1 << fan->id)) != 0)
drivers/macintosh/windfarm_fcu_controls.c
183
if ((active & (1 << fan->id)) == 0)
drivers/macintosh/windfarm_fcu_controls.c
192
rc = wf_fcu_read_reg(pv, reg_base + (fan->id * 2), buf, 2);
drivers/macintosh/windfarm_fcu_controls.c
203
struct wf_fcu_fan *fan = ct->priv;
drivers/macintosh/windfarm_fcu_controls.c
204
struct wf_fcu_priv *pv = fan->fcu_priv;
drivers/macintosh/windfarm_fcu_controls.c
208
if (value < fan->min)
drivers/macintosh/windfarm_fcu_controls.c
209
value = fan->min;
drivers/macintosh/windfarm_fcu_controls.c
210
if (value > fan->max)
drivers/macintosh/windfarm_fcu_controls.c
211
value = fan->max;
drivers/macintosh/windfarm_fcu_controls.c
213
fan->target = value;
drivers/macintosh/windfarm_fcu_controls.c
217
rc = wf_fcu_write_reg(pv, 0x30 + (fan->id * 2), buf, 1);
drivers/macintosh/windfarm_fcu_controls.c
225
struct wf_fcu_fan *fan = ct->priv;
drivers/macintosh/windfarm_fcu_controls.c
226
struct wf_fcu_priv *pv = fan->fcu_priv;
drivers/macintosh/windfarm_fcu_controls.c
235
if ((failure & (1 << fan->id)) != 0)
drivers/macintosh/windfarm_fcu_controls.c
240
if ((active & (1 << fan->id)) == 0)
drivers/macintosh/windfarm_fcu_controls.c
243
rc = wf_fcu_read_reg(pv, 0x30 + (fan->id * 2), buf, 1);
drivers/macintosh/windfarm_fcu_controls.c
254
struct wf_fcu_fan *fan = ct->priv;
drivers/macintosh/windfarm_fcu_controls.c
256
return fan->min;
drivers/macintosh/windfarm_fcu_controls.c
261
struct wf_fcu_fan *fan = ct->priv;
drivers/macintosh/windfarm_fcu_controls.c
263
return fan->max;
drivers/macintosh/windfarm_fcu_controls.c
284
static void wf_fcu_get_pump_minmax(struct wf_fcu_fan *fan)
drivers/macintosh/windfarm_fcu_controls.c
312
fan->min = pump_min;
drivers/macintosh/windfarm_fcu_controls.c
313
fan->max = pump_max;
drivers/macintosh/windfarm_fcu_controls.c
316
fan->ctrl.name, pump_min, pump_max);
drivers/macintosh/windfarm_fcu_controls.c
319
static void wf_fcu_get_rpmfan_minmax(struct wf_fcu_fan *fan)
drivers/macintosh/windfarm_fcu_controls.c
321
struct wf_fcu_priv *pv = fan->fcu_priv;
drivers/macintosh/windfarm_fcu_controls.c
326
fan->min = 2400 >> pv->rpm_shift;
drivers/macintosh/windfarm_fcu_controls.c
327
fan->max = 56000 >> pv->rpm_shift;
drivers/macintosh/windfarm_fcu_controls.c
330
if (mpu0 && !strcmp(fan->ctrl.name, "cpu-front-fan-0")) {
drivers/macintosh/windfarm_fcu_controls.c
331
fan->min = max(fan->min, (s32)mpu0->rminn_intake_fan);
drivers/macintosh/windfarm_fcu_controls.c
332
fan->max = min(fan->max, (s32)mpu0->rmaxn_intake_fan);
drivers/macintosh/windfarm_fcu_controls.c
335
if (mpu1 && !strcmp(fan->ctrl.name, "cpu-front-fan-1")) {
drivers/macintosh/windfarm_fcu_controls.c
336
fan->min = max(fan->min, (s32)mpu1->rminn_intake_fan);
drivers/macintosh/windfarm_fcu_controls.c
337
fan->max = min(fan->max, (s32)mpu1->rmaxn_intake_fan);
drivers/macintosh/windfarm_fcu_controls.c
340
if (mpu0 && !strcmp(fan->ctrl.name, "cpu-rear-fan-0")) {
drivers/macintosh/windfarm_fcu_controls.c
341
fan->min = max(fan->min, (s32)mpu0->rminn_exhaust_fan);
drivers/macintosh/windfarm_fcu_controls.c
342
fan->max = min(fan->max, (s32)mpu0->rmaxn_exhaust_fan);
drivers/macintosh/windfarm_fcu_controls.c
345
if (mpu1 && !strcmp(fan->ctrl.name, "cpu-rear-fan-1")) {
drivers/macintosh/windfarm_fcu_controls.c
346
fan->min = max(fan->min, (s32)mpu1->rminn_exhaust_fan);
drivers/macintosh/windfarm_fcu_controls.c
347
fan->max = min(fan->max, (s32)mpu1->rmaxn_exhaust_fan);
drivers/macintosh/windfarm_fcu_controls.c
351
if (!strncmp(fan->ctrl.name, "cpu-fan", 7)) {
drivers/macintosh/windfarm_fcu_controls.c
352
fan->min = max(fan->min, (s32)mpu0->rminn_intake_fan);
drivers/macintosh/windfarm_fcu_controls.c
353
fan->max = min(fan->max, (s32)mpu0->rmaxn_intake_fan);
drivers/macintosh/windfarm_fcu_controls.c
358
fan->ctrl.name, fan->min, fan->max);
drivers/macintosh/windfarm_fcu_controls.c
364
struct wf_fcu_fan *fan;
drivers/macintosh/windfarm_fcu_controls.c
366
fan = kzalloc_obj(*fan);
drivers/macintosh/windfarm_fcu_controls.c
367
if (!fan)
drivers/macintosh/windfarm_fcu_controls.c
369
fan->fcu_priv = pv;
drivers/macintosh/windfarm_fcu_controls.c
370
fan->id = id;
drivers/macintosh/windfarm_fcu_controls.c
371
fan->ctrl.name = name;
drivers/macintosh/windfarm_fcu_controls.c
372
fan->ctrl.priv = fan;
drivers/macintosh/windfarm_fcu_controls.c
379
wf_fcu_get_pump_minmax(fan);
drivers/macintosh/windfarm_fcu_controls.c
381
wf_fcu_get_rpmfan_minmax(fan);
drivers/macintosh/windfarm_fcu_controls.c
382
fan->ctrl.type = WF_CONTROL_RPM_FAN;
drivers/macintosh/windfarm_fcu_controls.c
383
fan->ctrl.ops = &wf_fcu_fan_rpm_ops;
drivers/macintosh/windfarm_fcu_controls.c
385
fan->min = 10;
drivers/macintosh/windfarm_fcu_controls.c
386
fan->max = 100;
drivers/macintosh/windfarm_fcu_controls.c
387
fan->ctrl.type = WF_CONTROL_PWM_FAN;
drivers/macintosh/windfarm_fcu_controls.c
388
fan->ctrl.ops = &wf_fcu_fan_pwm_ops;
drivers/macintosh/windfarm_fcu_controls.c
391
if (wf_register_control(&fan->ctrl)) {
drivers/macintosh/windfarm_fcu_controls.c
393
kfree(fan);
drivers/macintosh/windfarm_fcu_controls.c
396
list_add(&fan->link, &pv->fan_list);
drivers/macintosh/windfarm_fcu_controls.c
565
struct wf_fcu_fan *fan;
drivers/macintosh/windfarm_fcu_controls.c
568
fan = list_first_entry(&pv->fan_list, struct wf_fcu_fan, link);
drivers/macintosh/windfarm_fcu_controls.c
569
list_del(&fan->link);
drivers/macintosh/windfarm_fcu_controls.c
570
wf_unregister_control(&fan->ctrl);
drivers/macintosh/windfarm_fcu_controls.c
80
struct wf_fcu_fan *fan = ct->priv;
drivers/macintosh/windfarm_fcu_controls.c
82
kref_put(&fan->fcu_priv->ref, wf_fcu_release);
drivers/macintosh/windfarm_fcu_controls.c
83
kfree(fan);
drivers/macintosh/windfarm_smu_controls.c
259
struct device_node *smu, *fans, *fan;
drivers/macintosh/windfarm_smu_controls.c
273
for_each_child_of_node(fans, fan) {
drivers/macintosh/windfarm_smu_controls.c
276
fct = smu_fan_create(fan, 0);
drivers/macintosh/windfarm_smu_controls.c
279
"RPM fan %pOFn\n", fan);
drivers/macintosh/windfarm_smu_controls.c
291
for_each_child_of_node(fans, fan) {
drivers/macintosh/windfarm_smu_controls.c
294
fct = smu_fan_create(fan, 1);
drivers/macintosh/windfarm_smu_controls.c
297
"PWM fan %pOFn\n", fan);
drivers/media/pci/ddbridge/ddbridge-core.c
3087
__ATTR(fan, 0664, fan_show, fan_store),
drivers/misc/keba/cp500.c
100
.fan = { 0x9000, SZ_4K },
drivers/misc/keba/cp500.c
111
.fan = { 0x9000, SZ_4K },
drivers/misc/keba/cp500.c
122
.fan = { 0x8000, SZ_4K },
drivers/misc/keba/cp500.c
150
struct keba_fan_auxdev *fan;
drivers/misc/keba/cp500.c
436
struct keba_fan_auxdev *fan =
drivers/misc/keba/cp500.c
439
kfree(fan);
drivers/misc/keba/cp500.c
446
cp500->fan = kzalloc_obj(*cp500->fan);
drivers/misc/keba/cp500.c
447
if (!cp500->fan)
drivers/misc/keba/cp500.c
450
cp500->fan->auxdev.name = "fan";
drivers/misc/keba/cp500.c
451
cp500->fan->auxdev.id = 0;
drivers/misc/keba/cp500.c
452
cp500->fan->auxdev.dev.release = cp500_fan_release;
drivers/misc/keba/cp500.c
453
cp500->fan->auxdev.dev.parent = &cp500->pci_dev->dev;
drivers/misc/keba/cp500.c
454
cp500->fan->io = (struct resource) {
drivers/misc/keba/cp500.c
457
cp500->devs->fan.offset,
drivers/misc/keba/cp500.c
459
cp500->devs->fan.offset +
drivers/misc/keba/cp500.c
460
cp500->devs->fan.size - 1,
drivers/misc/keba/cp500.c
464
ret = auxiliary_device_init(&cp500->fan->auxdev);
drivers/misc/keba/cp500.c
466
kfree(cp500->fan);
drivers/misc/keba/cp500.c
467
cp500->fan = NULL;
drivers/misc/keba/cp500.c
471
ret = __auxiliary_device_add(&cp500->fan->auxdev, "keba");
drivers/misc/keba/cp500.c
473
auxiliary_device_uninit(&cp500->fan->auxdev);
drivers/misc/keba/cp500.c
474
cp500->fan = NULL;
drivers/misc/keba/cp500.c
484
struct keba_batt_auxdev *fan =
drivers/misc/keba/cp500.c
487
kfree(fan);
drivers/misc/keba/cp500.c
797
if (cp500->fan) {
drivers/misc/keba/cp500.c
798
cp500_unregister_dev(&cp500->fan->auxdev);
drivers/misc/keba/cp500.c
799
cp500->fan = NULL;
drivers/misc/keba/cp500.c
88
struct cp500_dev_info fan;
drivers/platform/x86/acer-wmi.c
1740
static int WMID_gaming_set_gaming_fan_speed(u8 fan, u8 speed)
drivers/platform/x86/acer-wmi.c
1749
input |= FIELD_PREP(ACER_GAMING_FAN_SPEED_ID_MASK, fan);
drivers/platform/x86/acer-wmi.c
1768
static int WMID_gaming_get_gaming_fan_speed(u8 fan, u8 *speed)
drivers/platform/x86/acer-wmi.c
1774
input |= FIELD_PREP(ACER_GAMING_FAN_SPEED_ID_MASK, fan);
drivers/platform/x86/acer-wmi.c
2969
u8 fan, speed;
drivers/platform/x86/acer-wmi.c
2998
fan = acer_wmi_fan_channel_to_fan_id[channel];
drivers/platform/x86/acer-wmi.c
2999
ret = WMID_gaming_get_gaming_fan_speed(fan, &speed);
drivers/platform/x86/acer-wmi.c
3037
u8 fan, speed;
drivers/platform/x86/acer-wmi.c
3043
fan = acer_wmi_fan_channel_to_fan_id[channel];
drivers/platform/x86/acer-wmi.c
3047
return WMID_gaming_set_gaming_fan_speed(fan, speed);
drivers/platform/x86/acer-wmi.c
3080
HWMON_CHANNEL_INFO(fan,
drivers/platform/x86/acerhdf.c
292
u8 fan;
drivers/platform/x86/acerhdf.c
294
if (ec_read(ctrl_cfg.fanreg, &fan))
drivers/platform/x86/acerhdf.c
297
if (fan != ctrl_cfg.cmd.cmd_off)
drivers/platform/x86/asus-wmi.c
204
u8 fan; /* fan number: 0: set auto mode 1: 1st fan */
drivers/platform/x86/asus-wmi.c
2809
static int asus_agfn_fan_speed_read(struct asus_wmi *asus, int fan,
drivers/platform/x86/asus-wmi.c
2816
.fan = fan,
drivers/platform/x86/asus-wmi.c
2822
if (fan != 1)
drivers/platform/x86/asus-wmi.c
2836
static int asus_agfn_fan_speed_write(struct asus_wmi *asus, int fan,
drivers/platform/x86/asus-wmi.c
2843
.fan = fan,
drivers/platform/x86/asus-wmi.c
2850
if (fan != 1 && fan != 0)
drivers/platform/x86/asus-wmi.c
2858
if (speed && fan == 1)
drivers/platform/x86/ayaneo-ec.c
269
HWMON_CHANNEL_INFO(fan, HWMON_F_INPUT),
drivers/platform/x86/dasharo-acpi.c
215
HWMON_CHANNEL_INFO(fan,
drivers/platform/x86/dell/alienware-wmi-wmax.c
1027
struct awcc_fan_data *fan = priv->fan_data[index];
drivers/platform/x86/dell/alienware-wmi-wmax.c
1031
ret = awcc_op_get_fan_boost(priv->wdev, fan->id, &boost);
drivers/platform/x86/dell/alienware-wmi-wmax.c
1043
struct awcc_fan_data *fan = priv->fan_data[index];
drivers/platform/x86/dell/alienware-wmi-wmax.c
1051
ret = awcc_op_set_fan_boost(priv->wdev, fan->id, clamp_val(val, 0, 255));
drivers/platform/x86/dell/alienware-wmi-wmax.c
1208
struct awcc_fan_data *fan;
drivers/platform/x86/dell/alienware-wmi-wmax.c
1214
fan = priv->fan_data[i];
drivers/platform/x86/dell/alienware-wmi-wmax.c
1217
fan->id, &boost);
drivers/platform/x86/dell/alienware-wmi-wmax.c
1221
fan->suspend_cache = ret ? 0 : clamp_val(boost, 0, 255);
drivers/platform/x86/dell/alienware-wmi-wmax.c
1223
awcc_op_set_fan_boost(priv->wdev, fan->id, 0);
drivers/platform/x86/dell/alienware-wmi-wmax.c
1232
struct awcc_fan_data *fan;
drivers/platform/x86/dell/alienware-wmi-wmax.c
1237
fan = priv->fan_data[i];
drivers/platform/x86/dell/alienware-wmi-wmax.c
1239
if (!fan->suspend_cache)
drivers/platform/x86/dell/alienware-wmi-wmax.c
1242
ret = awcc_op_set_fan_boost(priv->wdev, fan->id, fan->suspend_cache);
drivers/platform/x86/dell/alienware-wmi-wmax.c
1390
const struct awcc_fan_data *fan;
drivers/platform/x86/dell/alienware-wmi-wmax.c
1397
fan = priv->fan_data[i];
drivers/platform/x86/dell/alienware-wmi-wmax.c
1400
seq_printf(seq, " ID: 0x%02x\n", fan->id);
drivers/platform/x86/dell/alienware-wmi-wmax.c
1402
fan->auto_channels_temp);
drivers/platform/x86/dell/alienware-wmi-wmax.c
845
const struct awcc_fan_data *fan;
drivers/platform/x86/dell/alienware-wmi-wmax.c
868
fan = priv->fan_data[channel];
drivers/platform/x86/dell/alienware-wmi-wmax.c
872
ret = awcc_op_get_fan_rpm(priv->wdev, fan->id, &state);
drivers/platform/x86/dell/alienware-wmi-wmax.c
879
*val = fan->min_rpm;
drivers/platform/x86/dell/alienware-wmi-wmax.c
882
*val = fan->max_rpm;
drivers/platform/x86/dell/alienware-wmi-wmax.c
890
fan = priv->fan_data[channel];
drivers/platform/x86/dell/alienware-wmi-wmax.c
894
*val = fan->auto_channels_temp;
drivers/platform/x86/dell/alienware-wmi-wmax.c
998
HWMON_CHANNEL_INFO(fan,
drivers/platform/x86/gpd-pocket-fan.c
108
if (fan->last_speed <= 0 && speed)
drivers/platform/x86/gpd-pocket-fan.c
112
gpd_pocket_fan_set_speed(fan, speed);
drivers/platform/x86/gpd-pocket-fan.c
115
queue_delayed_work(system_percpu_wq, &fan->work,
drivers/platform/x86/gpd-pocket-fan.c
119
static void gpd_pocket_fan_force_update(struct gpd_pocket_fan_data *fan)
drivers/platform/x86/gpd-pocket-fan.c
121
fan->last_speed = -1;
drivers/platform/x86/gpd-pocket-fan.c
122
mod_delayed_work(system_percpu_wq, &fan->work, 0);
drivers/platform/x86/gpd-pocket-fan.c
127
struct gpd_pocket_fan_data *fan;
drivers/platform/x86/gpd-pocket-fan.c
151
fan = devm_kzalloc(&pdev->dev, sizeof(*fan), GFP_KERNEL);
drivers/platform/x86/gpd-pocket-fan.c
152
if (!fan)
drivers/platform/x86/gpd-pocket-fan.c
155
fan->dev = &pdev->dev;
drivers/platform/x86/gpd-pocket-fan.c
156
ret = devm_delayed_work_autocancel(&pdev->dev, &fan->work,
drivers/platform/x86/gpd-pocket-fan.c
162
fan->dts0 = thermal_zone_get_zone_by_name("soc_dts0");
drivers/platform/x86/gpd-pocket-fan.c
163
if (IS_ERR(fan->dts0))
drivers/platform/x86/gpd-pocket-fan.c
166
fan->dts1 = thermal_zone_get_zone_by_name("soc_dts1");
drivers/platform/x86/gpd-pocket-fan.c
167
if (IS_ERR(fan->dts1))
drivers/platform/x86/gpd-pocket-fan.c
170
fan->gpio0 = devm_gpiod_get_index(fan->dev, NULL, 0, GPIOD_ASIS);
drivers/platform/x86/gpd-pocket-fan.c
171
if (IS_ERR(fan->gpio0))
drivers/platform/x86/gpd-pocket-fan.c
172
return PTR_ERR(fan->gpio0);
drivers/platform/x86/gpd-pocket-fan.c
174
fan->gpio1 = devm_gpiod_get_index(fan->dev, NULL, 1, GPIOD_ASIS);
drivers/platform/x86/gpd-pocket-fan.c
175
if (IS_ERR(fan->gpio1))
drivers/platform/x86/gpd-pocket-fan.c
176
return PTR_ERR(fan->gpio1);
drivers/platform/x86/gpd-pocket-fan.c
178
gpd_pocket_fan_force_update(fan);
drivers/platform/x86/gpd-pocket-fan.c
180
platform_set_drvdata(pdev, fan);
drivers/platform/x86/gpd-pocket-fan.c
187
struct gpd_pocket_fan_data *fan = dev_get_drvdata(dev);
drivers/platform/x86/gpd-pocket-fan.c
189
cancel_delayed_work_sync(&fan->work);
drivers/platform/x86/gpd-pocket-fan.c
190
gpd_pocket_fan_set_speed(fan, gpd_pocket_fan_min_speed());
drivers/platform/x86/gpd-pocket-fan.c
196
struct gpd_pocket_fan_data *fan = dev_get_drvdata(dev);
drivers/platform/x86/gpd-pocket-fan.c
198
gpd_pocket_fan_force_update(fan);
drivers/platform/x86/gpd-pocket-fan.c
55
static void gpd_pocket_fan_set_speed(struct gpd_pocket_fan_data *fan, int speed)
drivers/platform/x86/gpd-pocket-fan.c
57
if (speed == fan->last_speed)
drivers/platform/x86/gpd-pocket-fan.c
60
gpiod_direction_output(fan->gpio0, !!(speed & 1));
drivers/platform/x86/gpd-pocket-fan.c
61
gpiod_direction_output(fan->gpio1, !!(speed & 2));
drivers/platform/x86/gpd-pocket-fan.c
63
fan->last_speed = speed;
drivers/platform/x86/gpd-pocket-fan.c
76
struct gpd_pocket_fan_data *fan =
drivers/platform/x86/gpd-pocket-fan.c
80
if (thermal_zone_get_temp(fan->dts0, &t0) ||
drivers/platform/x86/gpd-pocket-fan.c
81
thermal_zone_get_temp(fan->dts1, &t1)) {
drivers/platform/x86/gpd-pocket-fan.c
82
dev_warn(fan->dev, "Error getting temperature\n");
drivers/platform/x86/gpd-pocket-fan.c
89
speed = fan->last_speed;
drivers/platform/x86/hp/hp-wmi.c
2511
HWMON_CHANNEL_INFO(fan, HWMON_F_INPUT, HWMON_F_INPUT),
drivers/platform/x86/hp/hp-wmi.c
624
static int hp_wmi_get_fan_speed(int fan)
drivers/platform/x86/hp/hp-wmi.c
627
char fan_data[4] = { fan, 0, 0, 0 };
drivers/platform/x86/hp/hp-wmi.c
642
static int hp_wmi_get_fan_speed_victus_s(int fan)
drivers/platform/x86/hp/hp-wmi.c
647
if (fan < 0 || fan >= sizeof(fan_data))
drivers/platform/x86/hp/hp-wmi.c
656
return fan_data[fan] * 100;
drivers/platform/x86/lenovo/thinkpad_acpi.c
12051
TPACPI_PARAM(fan);
drivers/platform/x86/lenovo/wmi-other.c
367
HWMON_CHANNEL_INFO(fan,
drivers/platform/x86/msi-wmi-platform.c
214
HWMON_CHANNEL_INFO(fan,
drivers/platform/x86/oxpec.c
886
HWMON_CHANNEL_INFO(fan,
drivers/platform/x86/silicom-platform.c
60
HWMON_CHANNEL_INFO(fan, HWMON_F_INPUT | HWMON_F_LABEL),
drivers/platform/x86/system76_acpi.c
602
HWMON_CHANNEL_INFO(fan,
drivers/platform/x86/toshiba_acpi.c
1861
static DEVICE_ATTR_RW(fan);
drivers/platform/x86/toshiba_acpi.c
3048
HWMON_CHANNEL_INFO(fan, HWMON_F_INPUT),
drivers/platform/x86/uniwill/uniwill-acpi.c
1033
HWMON_CHANNEL_INFO(fan,
drivers/scsi/lpfc/lpfc_hw.h
1098
FAN fan; /* Payload for FAN */
fs/cachefiles/interface.c
431
struct dentry *fan = volume->fanout[(u8)cookie->key_hash];
fs/cachefiles/interface.c
434
obj = start_removing_dentry(fan, old_file->f_path.dentry);
fs/cachefiles/interface.c
437
fan, obj,
fs/cachefiles/namei.c
419
struct dentry *fan = volume->fanout[(u8)object->cookie->key_hash];
fs/cachefiles/namei.c
424
dentry = start_removing_dentry(fan, dentry);
fs/cachefiles/namei.c
428
ret = cachefiles_unlink(volume->cache, object, fan, dentry, why);
fs/cachefiles/namei.c
442
struct dentry *fan = volume->fanout[(u8)object->cookie->key_hash];
fs/cachefiles/namei.c
444
const struct path parentpath = { .mnt = cache->mnt, .dentry = fan };
fs/cachefiles/namei.c
460
trace_cachefiles_vfs_error(object, d_inode(fan), ret,
fs/cachefiles/namei.c
619
struct dentry *dentry, *fan = volume->fanout[(u8)object->cookie->key_hash];
fs/cachefiles/namei.c
628
&QSTR(object->d_name), fan);
fs/cachefiles/namei.c
631
trace_cachefiles_lookup(object, fan, dentry);
fs/cachefiles/namei.c
642
struct dentry *de = start_removing_dentry(fan, dentry);
fs/cachefiles/namei.c
647
fan, de,
fs/cachefiles/namei.c
675
struct dentry *dentry, *fan = volume->fanout[(u8)object->cookie->key_hash];
fs/cachefiles/namei.c
683
dentry = start_creating(&nop_mnt_idmap, fan, &QSTR(object->d_name));
fs/cachefiles/namei.c
687
trace_cachefiles_vfs_error(object, d_inode(fan), PTR_ERR(dentry),
fs/cachefiles/namei.c
698
ret = cachefiles_unlink(volume->cache, object, fan, dentry,
fs/cachefiles/namei.c
707
dentry = start_creating(&nop_mnt_idmap, fan,
fs/cachefiles/namei.c
712
trace_cachefiles_vfs_error(object, d_inode(fan), PTR_ERR(dentry),
fs/cachefiles/namei.c
722
d_inode(fan), dentry, NULL);
fs/cachefiles/namei.c
724
trace_cachefiles_vfs_error(object, d_inode(fan), ret,
fs/cachefiles/volume.c
23
struct dentry *vdentry, *fan;
fs/cachefiles/volume.c
75
fan = cachefiles_get_directory(cache, vdentry, name, NULL);
fs/cachefiles/volume.c
76
if (IS_ERR(fan))
fs/cachefiles/volume.c
78
volume->fanout[i] = fan;