 b3f639c4fe
			
		
	
	
	b3f639c4fe
	
	
	
		
			
			The call to s3c_gpio_cfgrange_nopull() takes a size and base but this looks like it is trying to do base and end. This means it is configuring too many GPIOs and on the case of the Cragganmore means we're seeing an overflow of the ROW pins causing problems with the keyboard driver. Signed-off-by: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
		
			
				
	
	
		
			24 lines
		
	
	
	
		
			797 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			24 lines
		
	
	
	
		
			797 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
| /* linux/arch/arm/mach-s3c64xx/setup-keypad.c
 | |
|  *
 | |
|  * Copyright (c) 2010 Samsung Electronics Co., Ltd.
 | |
|  *		http://www.samsung.com/
 | |
|  *
 | |
|  * GPIO configuration for S3C64XX KeyPad device
 | |
|  *
 | |
|  * This program is free software; you can redistribute it and/or modify
 | |
|  * it under the terms of the GNU General Public License version 2 as
 | |
|  * published by the Free Software Foundation.
 | |
| */
 | |
| 
 | |
| #include <linux/gpio.h>
 | |
| #include <plat/gpio-cfg.h>
 | |
| #include <plat/keypad.h>
 | |
| 
 | |
| void samsung_keypad_cfg_gpio(unsigned int rows, unsigned int cols)
 | |
| {
 | |
| 	/* Set all the necessary GPK pins to special-function 3: KP_ROW[x] */
 | |
| 	s3c_gpio_cfgrange_nopull(S3C64XX_GPK(8), rows, S3C_GPIO_SFN(3));
 | |
| 
 | |
| 	/* Set all the necessary GPL pins to special-function 3: KP_COL[x] */
 | |
| 	s3c_gpio_cfgrange_nopull(S3C64XX_GPL(0), cols, S3C_GPIO_SFN(3));
 | |
| }
 |