1/*
2 * include/linux/gpio-fan.h
3 *
4 * Platform data structure for GPIO fan driver
5 *
6 * This file is licensed under the terms of the GNU General Public
7 * License version 2.  This program is licensed "as is" without any
8 * warranty of any kind, whether express or implied.
9 */
10
11#ifndef __LINUX_GPIO_FAN_H
12#define __LINUX_GPIO_FAN_H
13
14struct gpio_fan_alarm {
15	unsigned	gpio;
16	unsigned	active_low;
17};
18
19struct gpio_fan_speed {
20	int rpm;
21	int ctrl_val;
22};
23
24struct gpio_fan_platform_data {
25	int			num_ctrl;
26	unsigned		*ctrl;	/* fan control GPIOs. */
27	struct gpio_fan_alarm	*alarm;	/* fan alarm GPIO. */
28	/*
29	 * Speed conversion array: rpm from/to GPIO bit field.
30	 * This array _must_ be sorted in ascending rpm order.
31	 */
32	int			num_speed;
33	struct gpio_fan_speed	*speed;
34};
35
36#endif /* __LINUX_GPIO_FAN_H */
37