Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
gpio.h
Go to the documentation of this file.
1 /*
2  * include/asm-sh/gpio.h
3  *
4  * Generic GPIO API and pinmux table support for SuperH.
5  *
6  * Copyright (c) 2008 Magnus Damm
7  *
8  * This file is subject to the terms and conditions of the GNU General Public
9  * License. See the file "COPYING" in the main directory of this archive
10  * for more details.
11  */
12 #ifndef __ASM_SH_GPIO_H
13 #define __ASM_SH_GPIO_H
14 
15 #include <linux/kernel.h>
16 #include <linux/errno.h>
17 
18 #if defined(CONFIG_CPU_SH3)
19 #include <cpu/gpio.h>
20 #endif
21 
22 #define ARCH_NR_GPIOS 512
23 #include <linux/sh_pfc.h>
24 
25 #ifdef CONFIG_GPIOLIB
26 
27 static inline int gpio_get_value(unsigned gpio)
28 {
29  return __gpio_get_value(gpio);
30 }
31 
32 static inline void gpio_set_value(unsigned gpio, int value)
33 {
34  __gpio_set_value(gpio, value);
35 }
36 
37 static inline int gpio_cansleep(unsigned gpio)
38 {
39  return __gpio_cansleep(gpio);
40 }
41 
42 static inline int gpio_to_irq(unsigned gpio)
43 {
44  return __gpio_to_irq(gpio);
45 }
46 
47 static inline int irq_to_gpio(unsigned int irq)
48 {
49  return -ENOSYS;
50 }
51 
52 #endif /* CONFIG_GPIOLIB */
53 
54 #endif /* __ASM_SH_GPIO_H */