Lines Matching full:speed
32 "Millicelsius values above which the fan speed increases");
37 "Hysteresis in millicelsius before lowering the fan speed");
42 "minimum fan speed to allow when system is powered by AC");
54 static void gpd_pocket_fan_set_speed(struct gpd_pocket_fan_data *fan, int speed) in gpd_pocket_fan_set_speed() argument
56 if (speed == fan->last_speed) in gpd_pocket_fan_set_speed()
59 gpiod_direction_output(fan->gpio0, !!(speed & 1)); in gpd_pocket_fan_set_speed()
60 gpiod_direction_output(fan->gpio1, !!(speed & 2)); in gpd_pocket_fan_set_speed()
62 fan->last_speed = speed; in gpd_pocket_fan_set_speed()
77 int t0, t1, temp, speed, min_speed, i; in gpd_pocket_fan_worker() local
82 speed = MAX_SPEED; in gpd_pocket_fan_worker()
88 speed = fan->last_speed; in gpd_pocket_fan_worker()
91 /* Determine minimum speed */ in gpd_pocket_fan_worker()
96 if (speed < i) in gpd_pocket_fan_worker()
97 speed = i; in gpd_pocket_fan_worker()
99 /* Use hysteresis before lowering speed again */ in gpd_pocket_fan_worker()
104 if (speed > i) in gpd_pocket_fan_worker()
105 speed = i; in gpd_pocket_fan_worker()
107 if (fan->last_speed <= 0 && speed) in gpd_pocket_fan_worker()
108 speed = MAX_SPEED; /* kick start motor */ in gpd_pocket_fan_worker()
111 gpd_pocket_fan_set_speed(fan, speed); in gpd_pocket_fan_worker()
113 /* When mostly idle (low temp/speed), slow down the poll interval. */ in gpd_pocket_fan_worker()
115 msecs_to_jiffies(4000 / (speed + 1))); in gpd_pocket_fan_worker()