/linux/drivers/macintosh/ |
A D | windfarm_fcu_controls.c | 83 kfree(fan); in wf_fcu_fan_release() 331 fan->min = max(fan->min, (s32)mpu0->rminn_intake_fan); in wf_fcu_get_rpmfan_minmax() 332 fan->max = min(fan->max, (s32)mpu0->rmaxn_intake_fan); in wf_fcu_get_rpmfan_minmax() 336 fan->min = max(fan->min, (s32)mpu1->rminn_intake_fan); in wf_fcu_get_rpmfan_minmax() 337 fan->max = min(fan->max, (s32)mpu1->rmaxn_intake_fan); in wf_fcu_get_rpmfan_minmax() 352 fan->min = max(fan->min, (s32)mpu0->rminn_intake_fan); in wf_fcu_get_rpmfan_minmax() 353 fan->max = min(fan->max, (s32)mpu0->rmaxn_intake_fan); in wf_fcu_get_rpmfan_minmax() 358 fan->ctrl.name, fan->min, fan->max); in wf_fcu_get_rpmfan_minmax() 366 fan = kzalloc(sizeof(*fan), GFP_KERNEL); in wf_fcu_add_fan() 367 if (!fan) in wf_fcu_add_fan() [all …]
|
A D | therm_windtunnel.c | 57 struct i2c_client *fan; member 158 write_reg( x.fan, 0x25, val, 1 ); in tune_fan() 159 write_reg( x.fan, 0x20, 0, 1 ); in tune_fan() 215 x.r0 = read_reg( x.fan, 0x00, 1 ); in setup_hardware() 216 x.r1 = read_reg( x.fan, 0x01, 1 ); in setup_hardware() 228 write_reg( x.fan, 0x01, 0x01, 1 ); in setup_hardware() 230 write_reg( x.fan, 0x23, 0x91, 1 ); in setup_hardware() 348 else if (client == x.fan) in do_remove() 349 x.fan = NULL; in do_remove() 359 if( x.fan ) in attach_fan() [all …]
|
/linux/drivers/platform/x86/ |
A D | gpd-pocket-fan.c | 63 fan->last_speed = speed; in gpd_pocket_fan_set_speed() 89 speed = fan->last_speed; in gpd_pocket_fan_worker() 121 fan->last_speed = -1; in gpd_pocket_fan_force_update() 151 fan = devm_kzalloc(&pdev->dev, sizeof(*fan), GFP_KERNEL); in gpd_pocket_fan_probe() 152 if (!fan) in gpd_pocket_fan_probe() 155 fan->dev = &pdev->dev; in gpd_pocket_fan_probe() 163 if (IS_ERR(fan->dts0)) in gpd_pocket_fan_probe() 167 if (IS_ERR(fan->dts1)) in gpd_pocket_fan_probe() 170 fan->gpio0 = devm_gpiod_get_index(fan->dev, NULL, 0, GPIOD_ASIS); in gpd_pocket_fan_probe() 171 if (IS_ERR(fan->gpio0)) in gpd_pocket_fan_probe() [all …]
|
/linux/drivers/gpu/drm/nouveau/nvkm/subdev/therm/ |
A D | fan.c | 44 target = fan->percent; in nvkm_fan_update() 47 if (fan->percent != target) { in nvkm_fan_update() 49 fan->percent = target; in nvkm_fan_update() 53 duty = fan->get(therm); in nvkm_fan_update() 74 ret = fan->set(therm, duty); in nvkm_fan_update() 114 return therm->fan->get(therm); in nvkm_therm_fan_get() 186 therm->fan->bios.pwm_freq = 0; in nvkm_therm_fan_set_defaults() 203 if (therm->fan->bios.min_duty > therm->fan->bios.max_duty) in nvkm_therm_fan_safety_checks() 204 therm->fan->bios.min_duty = therm->fan->bios.max_duty; in nvkm_therm_fan_safety_checks() 260 &therm->fan->tach); in nvkm_therm_fan_ctor() [all …]
|
A D | fantog.c | 50 percent = fan->percent; in nvkm_fantog_update() 51 fan->percent = percent; in nvkm_fantog_update() 76 struct nvkm_fantog *fan = (void *)therm->fan; in nvkm_fantog_get() local 77 return fan->percent; in nvkm_fantog_get() 83 struct nvkm_fantog *fan = (void *)therm->fan; in nvkm_fantog_set() local 93 struct nvkm_fantog *fan; in nvkm_fantog_create() local 102 fan = kzalloc(sizeof(*fan), GFP_KERNEL); in nvkm_fantog_create() 103 therm->fan = &fan->base; in nvkm_fantog_create() 104 if (!fan) in nvkm_fantog_create() 112 fan->percent = 100; in nvkm_fantog_create() [all …]
|
A D | fanpwm.c | 40 struct nvkm_fanpwm *fan = (void *)therm->fan; in nvkm_fanpwm_get() local 55 return nvkm_gpio_get(gpio, 0, fan->func.func, fan->func.line) * 100; in nvkm_fanpwm_get() 61 struct nvkm_fanpwm *fan = (void *)therm->fan; in nvkm_fanpwm_set() local 67 if (fan->base.bios.pwm_freq) { in nvkm_fanpwm_set() 89 struct nvkm_fanpwm *fan; in nvkm_fanpwm_create() local 100 fan = kzalloc(sizeof(*fan), GFP_KERNEL); in nvkm_fanpwm_create() 101 therm->fan = &fan->base; in nvkm_fanpwm_create() 102 if (!fan) in nvkm_fanpwm_create() 105 fan->base.type = "PWM"; in nvkm_fanpwm_create() 106 fan->base.get = nvkm_fanpwm_get; in nvkm_fanpwm_create() [all …]
|
A D | base.c | 78 return therm->fan->bios.min_duty; in nvkm_therm_compute_linear_duty() 80 return therm->fan->bios.max_duty; in nvkm_therm_compute_linear_duty() 84 duty *= (therm->fan->bios.max_duty - therm->fan->bios.min_duty); in nvkm_therm_compute_linear_duty() 86 duty += therm->fan->bios.min_duty; in nvkm_therm_compute_linear_duty() 129 switch(therm->fan->bios.fan_mode) { in nvkm_therm_update() 170 therm->cstate = fan; in nvkm_therm_cstate() 219 return therm->fan->bios.min_duty; in nvkm_therm_attr_get() 221 return therm->fan->bios.max_duty; in nvkm_therm_attr_get() 255 therm->fan->bios.min_duty = value; in nvkm_therm_attr_set() 262 therm->fan->bios.max_duty = value; in nvkm_therm_attr_set() [all …]
|
/linux/drivers/hwmon/ |
A D | mlxreg-fan.c | 93 struct mlxreg_fan *fan; member 162 fan->samples); in mlxreg_fan_read() 274 HWMON_CHANNEL_INFO(fan, 320 struct mlxreg_fan *fan = pwm->fan; in mlxreg_fan_get_cur_state() local 340 struct mlxreg_fan *fan = pwm->fan; in mlxreg_fan_set_cur_state() local 574 pwm->fan = fan; in mlxreg_fan_cooling_config() 596 struct mlxreg_fan *fan; in mlxreg_fan_probe() local 606 fan = devm_kzalloc(dev, sizeof(*fan), GFP_KERNEL); in mlxreg_fan_probe() 607 if (!fan) in mlxreg_fan_probe() 610 fan->dev = dev; in mlxreg_fan_probe() [all …]
|
/linux/drivers/acpi/ |
A D | fan.c | 92 if (fan->acpi4) in fan_get_max_state() 130 if (fan->fif.fine_grain_ctrl && control < fan->fps[i].control) { in fan_get_state_acpi4() 171 if (fan->acpi4) in fan_get_cur_state() 210 if (fan->acpi4) in fan_set_cur_state() 240 struct acpi_buffer fif = { sizeof(fan->fif), &fan->fif }; in acpi_fan_get_fif() 329 if (!fan->fps) { in acpi_fan_get_fps() 347 sort(fan->fps, fan->fps_count, sizeof(*fan->fps), in acpi_fan_get_fps() 382 fan = devm_kzalloc(&pdev->dev, sizeof(*fan), GFP_KERNEL); in acpi_fan_probe() 383 if (!fan) { in acpi_fan_probe() 472 if (fan->acpi4) in acpi_fan_suspend() [all …]
|
/linux/drivers/gpu/drm/nouveau/nvkm/subdev/bios/ |
A D | therm.c | 163 fan->nr_fan_trip = 0; in nvbios_therm_fan_parse() 164 fan->fan_mode = NVBIOS_THERM_FAN_OTHER; in nvbios_therm_fan_parse() 170 fan->min_duty = value & 0xff; in nvbios_therm_fan_parse() 171 fan->max_duty = (value & 0xff00) >> 8; in nvbios_therm_fan_parse() 174 fan->nr_fan_trip++; in nvbios_therm_fan_parse() 177 cur_trip = &fan->trip[fan->nr_fan_trip - 1]; in nvbios_therm_fan_parse() 183 cur_trip = &fan->trip[fan->nr_fan_trip - 1]; in nvbios_therm_fan_parse() 187 if (!fan->pwm_freq) in nvbios_therm_fan_parse() 188 fan->pwm_freq = value; in nvbios_therm_fan_parse() 191 fan->bump_period = value; in nvbios_therm_fan_parse() [all …]
|
A D | fan.c | 32 u32 fan = 0; in nvbios_fan_table() local 38 if (fan) { in nvbios_fan_table() 39 *ver = nvbios_rd08(bios, fan + 0); in nvbios_fan_table() 42 *hdr = nvbios_rd08(bios, fan + 1); in nvbios_fan_table() 43 *len = nvbios_rd08(bios, fan + 2); in nvbios_fan_table() 44 *cnt = nvbios_rd08(bios, fan + 3); in nvbios_fan_table() 45 return fan; in nvbios_fan_table() 75 fan->type = NVBIOS_THERM_FAN_TOGGLE; in nvbios_fan_parse() 80 fan->type = NVBIOS_THERM_FAN_PWM; in nvbios_fan_parse() 83 fan->type = NVBIOS_THERM_FAN_UNK; in nvbios_fan_parse() [all …]
|
/linux/Documentation/devicetree/bindings/hwmon/ |
A D | npcm750-pwm-fan.txt | 6 Required properties for pwm-fan node 13 * "fan" for the Fan registers. 23 fan subnode format: 25 Under fan subnode can be upto 8 child nodes, each child node representing a fan. 48 pwm_fan:pwm-fan-controller@103000 { 54 reg-names = "pwm", "fan"; 57 clock-names = "pwm","fan"; 70 fan@0 { 75 fan@1 { 79 fan@2 { [all …]
|
A D | pwm-fan.txt | 1 Bindings for a fan connected to the PWM lines 4 - compatible : "pwm-fan" 5 - pwms : the PWM that is used to control the PWM fan 10 - fan-supply : phandle to the regulator that provides power to the fan 23 fan0: pwm-fan { 24 compatible = "pwm-fan"; 51 fan0: pwm-fan { 52 compatible = "pwm-fan"; 54 fan-supply = <®_fan>; 61 fan0: pwm-fan { [all …]
|
A D | max6650.txt | 1 Bindings for MAX6651 and MAX6650 I2C fan controllers 11 - maxim,fan-microvolt : The supply voltage of the fan, either 5000000 uV or 13 - maxim,fan-prescale : Pre-scaling value, as per datasheet [1]. Lower values 16 - maxim,fan-target-rpm: Initial requested fan rotation speed. If specified, the 18 This ensures the fan is already running before userspace 22 fan-max6650: max6650@1b { 25 maxim,fan-microvolt = <12000000>; 26 maxim,fan-prescale = <4>; 27 maxim,fan-target-rpm = <1200>;
|
A D | gpio-fan.txt | 1 Bindings for fan connected to GPIO lines 4 - compatible : "gpio-fan" 9 - gpio-fan,speed-map: A mapping of possible fan RPM speeds and the 13 the fan, and a udev event will be fired. 17 min and max states are derived from the speed-map of the fan. 24 compatible = "gpio-fan"; 27 gpio-fan,speed-map = <0 0 33 compatible = "gpio-fan"; 36 gpio-fan,speed-map = <0 0>,
|
/linux/Documentation/hwmon/ |
A D | g762.rst | 4 The GMT G762 Fan Speed PWM Controller is connected directly to a fan 5 and performs closed-loop or open-loop control of the fan speed. Two 26 fan speed control (i.e. when pwm1_enable is set to 2). 29 provide current fan rotation value in RPM as reported by 30 the fan to the device. 33 fan clock divisor. Supported value are 1, 2, 4 and 8. 36 number of pulses per fan revolution. Supported values 40 reports fan failure, i.e. no transition on fan gear pin for 41 about 0.7s (if the fan is not voluntarily set off). 44 in closed-loop control mode, if fan RPM value is 25% out [all …]
|
A D | max31790.rst | 23 PWM outputs. The desired fan speeds (or PWM duty cycles) are written 25 or can be used to modulate the fan's power terminals using an external 28 Tachometer inputs monitor fan tachometer logic outputs for precise (+/-1%) 29 monitoring and control of fan RPM as well as detection of fan failure. 38 fan[1-12]_input RO fan tachometer speed in RPM 39 fan[1-12]_fault RO fan experienced fault 40 fan[1-6]_target RW desired fan speed in RPM
|
A D | nct6775.rst | 102 fan regulation strategies (plus manual fan control mode). 117 do not have a fan speed divider. The driver sets the most suitable fan divisor 158 Common fan control attributes 200 There are no changes to fan speed. Once the temperature leaves the interval, fan 206 fan pwm start value (range 1 - 255), to start fan 215 milliseconds before fan speed is increased 218 milliseconds before fan speed is decreased 230 fan[1-7]_target 231 Target fan speed 233 fan[1-7]_tolerance [all …]
|
A D | max31785.rst | 19 The Maxim MAX31785 is a PMBus device providing closed-loop, multi-channel fan 20 management with temperature and remote voltage sensing. Various fan control 22 dual tachometer measurements, and fan health monitoring. 25 readings in attributes fan[5-8]_input. By contrast the MAX31785 only exposes 26 the slowest rotor measurement, and does so in the fan[1-4]_input attributes. 38 fan[1-4]_alarm Fan alarm. 39 fan[1-4]_fault Fan fault. 40 fan[1-8]_input Fan RPM. On the MAX31785A, inputs 5-8 correspond to the 42 fan[1-4]_target Fan input target 58 2: Automatic PWM (tach-feedback RPM fan-control) [all …]
|
A D | g760a.rst | 19 The GMT G760A Fan Speed PWM Controller is connected directly to a fan 20 and performs closed-loop control of the fan speed. 22 The fan speed is programmed by setting the period via 'pwm1' of two 26 Setting a period of 0 stops the fan; setting the period to 255 sets 27 fan to maximum speed. 29 The measured fan rotation speed returned via 'fan1_input' is derived 31 source and a 2 pulse-per-revolution fan. 34 the G760A chip's status register: Bit 0 is set when the actual fan 35 speed differs more than 20% with respect to the programmed fan speed; 36 bit 1 is set when fan speed is below 1920 RPM.
|
/linux/arch/arm/boot/dts/ |
A D | aspeed-bmc-lenovo-hr855xg2.dts | 340 fan@0 { 345 fan@1 { 350 fan@2 { 355 fan@3 { 360 fan@4 { 365 fan@5 { 370 fan@6 { 375 fan@7 { 380 fan@8 { 385 fan@9 { [all …]
|
A D | aspeed-bmc-lenovo-hr630.dts | 335 fan@0 { 340 fan@1 { 345 fan@2 { 350 fan@3 { 355 fan@4 { 360 fan@5 { 365 fan@6 { 370 fan@7 { 375 fan@8 { 380 fan@9 { [all …]
|
A D | aspeed-bmc-opp-swift.dts | 346 fan@0 { 352 maxim,fan-no-watchdog; 354 maxim,fan-ramp = <2>; 358 fan@1 { 366 maxim,fan-ramp = <2>; 370 fan@2 { 378 maxim,fan-ramp = <2>; 382 fan@3 { 390 maxim,fan-ramp = <2>; 394 fan@4 { [all …]
|
A D | aspeed-bmc-opp-tacoma.dts | 486 fan@0 { 492 maxim,fan-dual-tach; 495 maxim,fan-ramp = <2>; 499 fan@1 { 505 maxim,fan-dual-tach; 508 maxim,fan-ramp = <2>; 512 fan@2 { 518 maxim,fan-dual-tach; 521 maxim,fan-ramp = <2>; 525 fan@3 { [all …]
|
A D | aspeed-bmc-microsoft-olympus.dts | 177 fan@0 { 179 aspeed,fan-tach-ch = /bits/ 8 <0x00>; 182 fan@1 { 184 aspeed,fan-tach-ch = /bits/ 8 <0x01>; 187 fan@2 { 189 aspeed,fan-tach-ch = /bits/ 8 <0x02>; 192 fan@3 { 194 aspeed,fan-tach-ch = /bits/ 8 <0x03>; 197 fan@4 { 199 aspeed,fan-tach-ch = /bits/ 8 <0x04>; [all …]
|