主题 : 关于mini2440的2.6.32linux内核按键驱动的疑问。。 复制链接 | 浏览器收藏 | 打印
级别: 侠客
UID: 45609
精华: 0
发帖: 51
金钱: 255 两
威望: 51 点
综合积分: 102 分
注册时间: 2011-05-06
最后登录: 2018-02-08
楼主  发表于: 2013-01-02 17:49

 关于mini2440的2.6.32linux内核按键驱动的疑问。。

为什么按键驱动中没有调用s3c2410_gpio_cfgpin初始化io口?
更奇葩的是驱动竟然能正常使用!!!
难道在内核的某个位置友善已经进行了IO口的初始化???求具体位置~~          
级别: 侠客
UID: 45609
精华: 0
发帖: 51
金钱: 255 两
威望: 51 点
综合积分: 102 分
注册时间: 2011-05-06
最后登录: 2018-02-08
1楼  发表于: 2013-01-02 19:58

 回 1楼(werookies) 的帖子

谢谢
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
2楼  发表于: 2013-01-02 20:06

 回 楼主(llliqqq) 的帖子

在mini2440_buttons.c的s3c24xx_buttons_open()里有
复制代码
  1.         err = request_irq(button_irqs[i].irq, buttons_interrupt, IRQ_TYPE_EDGE_BOTH,
  2.                           button_irqs[i].name, (void *)&button_irqs[i]);

而相应的,在arch/arm/plat-s3c24xx/irq.c里的s3c_irqext_type()里有
复制代码
  1.     /* Set the GPIO to external interrupt mode */
  2.     value = __raw_readl(gpcon_reg);
  3.     value = (value & ~(3 << gpcon_offset)) | (0x02 << gpcon_offset);
  4.     __raw_writel(value, gpcon_reg);
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
级别: 侠客
UID: 45609
精华: 0
发帖: 51
金钱: 255 两
威望: 51 点
综合积分: 102 分
注册时间: 2011-05-06
最后登录: 2018-02-08
3楼  发表于: 2013-01-02 20:29

 回 3楼(kasim) 的帖子

多谢斑竹。。。。看来以后还是要去plat-s3c24xx找啊,在mach-s3c2440找了半天没有。。。。