Skip to content

Commit 73bcbac

Browse files
committed
Merge branch 'gpiolib' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6
* 'gpiolib' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6: [IA64] Hook up gpiolib support
2 parents a2d7730 + badc144 commit 73bcbac

File tree

2 files changed

+59
-0
lines changed

2 files changed

+59
-0
lines changed

arch/ia64/Kconfig

+4
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ config IA64
2727
select GENERIC_PENDING_IRQ if SMP
2828
select IRQ_PER_CPU
2929
select GENERIC_IRQ_SHOW
30+
select ARCH_WANT_OPTIONAL_GPIOLIB
3031
default y
3132
help
3233
The Itanium Processor Family is Intel's 64-bit successor to
@@ -89,6 +90,9 @@ config GENERIC_TIME_VSYSCALL
8990
config HAVE_SETUP_PER_CPU_AREA
9091
def_bool y
9192

93+
config GENERIC_GPIO
94+
def_bool y
95+
9296
config DMI
9397
bool
9498
default y

arch/ia64/include/asm/gpio.h

+55
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
/*
2+
* Generic GPIO API implementation for IA-64.
3+
*
4+
* A stright copy of that for PowerPC which was:
5+
*
6+
* Copyright (c) 2007-2008 MontaVista Software, Inc.
7+
*
8+
* Author: Anton Vorontsov <avorontsov@ru.mvista.com>
9+
*
10+
* This program is free software; you can redistribute it and/or modify
11+
* it under the terms of the GNU General Public License as published by
12+
* the Free Software Foundation; either version 2 of the License, or
13+
* (at your option) any later version.
14+
*/
15+
16+
#ifndef _ASM_IA64_GPIO_H
17+
#define _ASM_IA64_GPIO_H
18+
19+
#include <linux/errno.h>
20+
#include <asm-generic/gpio.h>
21+
22+
#ifdef CONFIG_GPIOLIB
23+
24+
/*
25+
* We don't (yet) implement inlined/rapid versions for on-chip gpios.
26+
* Just call gpiolib.
27+
*/
28+
static inline int gpio_get_value(unsigned int gpio)
29+
{
30+
return __gpio_get_value(gpio);
31+
}
32+
33+
static inline void gpio_set_value(unsigned int gpio, int value)
34+
{
35+
__gpio_set_value(gpio, value);
36+
}
37+
38+
static inline int gpio_cansleep(unsigned int gpio)
39+
{
40+
return __gpio_cansleep(gpio);
41+
}
42+
43+
static inline int gpio_to_irq(unsigned int gpio)
44+
{
45+
return __gpio_to_irq(gpio);
46+
}
47+
48+
static inline int irq_to_gpio(unsigned int irq)
49+
{
50+
return -EINVAL;
51+
}
52+
53+
#endif /* CONFIG_GPIOLIB */
54+
55+
#endif /* _ASM_IA64_GPIO_H */

0 commit comments

Comments
 (0)