Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

alpha: hook up gpiolib support

Allow people to use gpiolib on Alpha if they want to, mostly for build
coverage. The header is a stright copy of that for Microblaze, which in
turn was taken from PowerPC.

[akpm@linux-foundation.org: define GENERIC_GPIO]
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: Richard Henderson <rth@twiddle.net>
Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
Cc: Matt Turner <mattst88@gmail.com>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

authored by

Mark Brown and committed by
Linus Torvalds
81ee42ba 81740fc6

+59
+4
arch/alpha/Kconfig
··· 12 12 select GENERIC_IRQ_PROBE 13 13 select AUTO_IRQ_AFFINITY if SMP 14 14 select GENERIC_IRQ_SHOW 15 + select ARCH_WANT_OPTIONAL_GPIOLIB 15 16 help 16 17 The Alpha is a 64-bit general-purpose processor designed and 17 18 marketed by the Digital Equipment Corporation of blessed memory, ··· 51 50 52 51 config GENERIC_CMOS_UPDATE 53 52 def_bool y 53 + 54 + config GENERIC_GPIO 55 + def_bool y 54 56 55 57 config ZONE_DMA 56 58 bool
+55
arch/alpha/include/asm/gpio.h
··· 1 + /* 2 + * Generic GPIO API implementation for Alpha. 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_ALPHA_GPIO_H 17 + #define _ASM_ALPHA_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_ALPHA_GPIO_H */