| 
									
										
										
										
											2009-03-04 16:21:32 +01:00
										 |  |  | /*
 | 
					
						
							|  |  |  |  * Generic GPIO API implementation for xtensa. | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * Stolen from x86, which is derived from the generic GPIO API for powerpc: | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * Copyright (c) 2007-2008  MontaVista Software, Inc. | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * Author: Anton Vorontsov <avorontsov@ru.mvista.com> | 
					
						
							|  |  |  |  * | 
					
						
							|  |  |  |  * This program is free software; you can redistribute it and/or modify | 
					
						
							|  |  |  |  * it under the terms of the GNU General Public License as published by | 
					
						
							|  |  |  |  * the Free Software Foundation; either version 2 of the License, or | 
					
						
							|  |  |  |  * (at your option) any later version. | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #ifndef _ASM_XTENSA_GPIO_H
 | 
					
						
							|  |  |  | #define _ASM_XTENSA_GPIO_H
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #include <asm-generic/gpio.h>
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #ifdef CONFIG_GPIOLIB
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | /*
 | 
					
						
							|  |  |  |  * Just call gpiolib. | 
					
						
							|  |  |  |  */ | 
					
						
							|  |  |  | static inline int gpio_get_value(unsigned int gpio) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	return __gpio_get_value(gpio); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | static inline void gpio_set_value(unsigned int gpio, int value) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	__gpio_set_value(gpio, value); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | static inline int gpio_cansleep(unsigned int gpio) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	return __gpio_cansleep(gpio); | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | static inline int gpio_to_irq(unsigned int gpio) | 
					
						
							|  |  |  | { | 
					
						
							| 
									
										
										
										
											2009-05-05 15:03:22 +00:00
										 |  |  | 	return __gpio_to_irq(gpio); | 
					
						
							| 
									
										
										
										
											2009-03-04 16:21:32 +01:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-05-05 15:03:22 +00:00
										 |  |  | /*
 | 
					
						
							|  |  |  |  * Not implemented, yet. | 
					
						
							|  |  |  |  */ | 
					
						
							| 
									
										
										
										
											2009-03-04 16:21:32 +01:00
										 |  |  | static inline int irq_to_gpio(unsigned int irq) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	return -EINVAL; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #endif /* CONFIG_GPIOLIB */
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | #endif /* _ASM_XTENSA_GPIO_H */
 |