Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1#ifndef _LINUX_ACPI_GPIO_H_
2#define _LINUX_ACPI_GPIO_H_
3
4#include <linux/device.h>
5#include <linux/errno.h>
6#include <linux/gpio.h>
7
8/**
9 * struct acpi_gpio_info - ACPI GPIO specific information
10 * @gpioint: if %true this GPIO is of type GpioInt otherwise type is GpioIo
11 */
12struct acpi_gpio_info {
13 bool gpioint;
14};
15
16#ifdef CONFIG_GPIO_ACPI
17
18int acpi_get_gpio(char *path, int pin);
19int acpi_get_gpio_by_index(struct device *dev, int index,
20 struct acpi_gpio_info *info);
21void acpi_gpiochip_request_interrupts(struct gpio_chip *chip);
22void acpi_gpiochip_free_interrupts(struct gpio_chip *chip);
23
24#else /* CONFIG_GPIO_ACPI */
25
26static inline int acpi_get_gpio(char *path, int pin)
27{
28 return -ENODEV;
29}
30
31static inline int acpi_get_gpio_by_index(struct device *dev, int index,
32 struct acpi_gpio_info *info)
33{
34 return -ENODEV;
35}
36
37static inline void acpi_gpiochip_request_interrupts(struct gpio_chip *chip) { }
38static inline void acpi_gpiochip_free_interrupts(struct gpio_chip *chip) { }
39
40#endif /* CONFIG_GPIO_ACPI */
41
42#endif /* _LINUX_ACPI_GPIO_H_ */