|
本帖最后由 fanqiehua 于 2013-8-28 15:38 编辑
tq210 如何在按键驱动当中增加一个io口作为一个新的按键,比如在“XEINT30/KP_ROW6/GPH3_6”这个引脚上新增加一个按键,要在原来的按键驱动中怎么更改!请版主给个提示!谢谢!
我修改mach-tq210.c的static struct gpio_keys_button gpio_buttons[]如下:
#ifdef CONFIG_KEYBOARD_S3C_GPIO
static struct gpio_keys_button gpio_buttons[] = {
{
.gpio = S5PV210_GPH0(0),
.code = 139,
.desc = "KEY_MENU_SHARD",
.active_low = 1,
.wakeup = 0,
},
{
.gpio = S5PV210_GPH0(1),
.code = 28,
.desc = "ENTER",
.active_low = 1,
.wakeup = 1,
},
{
.gpio = S5PV210_GPH0(2),
.code = 158,
.desc = "BACK",
.active_low = 1,
.wakeup = 1,
},
{
.gpio = S5PV210_GPH3(6),
.code = 116,
.desc = "POWER",
.active_low = 1,
.wakeup = 0,
},
}
修改struct s3c_gpio_key s3c_gpio_keys[]如下:
struct s3c_gpio_key s3c_gpio_keys[]=
{
{
.pin = S5PV210_GPH0(0),
.eintcfg = 0X0f<<0,
.inputcfg = 0<<0,
.eint = IRQ_EINT0,
},
{
.pin = S5PV210_GPH0(1),
.eintcfg = 0X0f<<4,
.inputcfg = 0<<4,
.eint = IRQ_EINT1,
},
{ //lhh add
.pin = S5PV210_GPH0(2),
.eintcfg = 0X0f<<8,
.inputcfg = 0<<8,
.eint = IRQ_EINT2,
},
{
.pin = S5PV210_GPH3(6),
.eintcfg = 0X0f<<24,
.inputcfg = 0<<24,
.eint = IRQ_EINT(30),
},
}
为什么还要加入s3c_gpio_setpull(S5PV210_GPH3(6),S3C_GPIO_PULL_UP);这句话啊!不加入这句话时,io口引脚默认是低电平,为什么其它的GPH0—GPH2这三个脚不用设置成上拉,或者是在其它地方设置的?
|
|