1/* linux/arch/arm/mach-s5pc100/setup-keypad.c 2 * 3 * Copyright (c) 2010 Samsung Electronics Co., Ltd. 4 * http://www.samsung.com/ 5 * 6 * GPIO configuration for S5PC100 KeyPad device 7 * 8 * This program is free software; you can redistribute it and/or modify 9 * it under the terms of the GNU General Public License version 2 as 10 * published by the Free Software Foundation. 11*/ 12 13#include <linux/gpio.h> 14#include <plat/gpio-cfg.h> 15 16void samsung_keypad_cfg_gpio(unsigned int rows, unsigned int cols) 17{ 18 unsigned int gpio; 19 unsigned int end; 20 21 /* Set all the necessary GPH3 pins to special-function 3: KP_ROW[x] */ 22 end = S5PC100_GPH3(rows); 23 for (gpio = S5PC100_GPH3(0); gpio < end; gpio++) { 24 s3c_gpio_cfgpin(gpio, S3C_GPIO_SFN(3)); 25 s3c_gpio_setpull(gpio, S3C_GPIO_PULL_NONE); 26 } 27 28 /* Set all the necessary GPH2 pins to special-function 3: KP_COL[x] */ 29 end = S5PC100_GPH2(cols); 30 for (gpio = S5PC100_GPH2(0); gpio < end; gpio++) { 31 s3c_gpio_cfgpin(gpio, S3C_GPIO_SFN(3)); 32 s3c_gpio_setpull(gpio, S3C_GPIO_PULL_NONE); 33 } 34} 35