查看: 9968|回复: 6

[已解决] IMX6Q-SDB开发板上android下驱动设置GPIO问题(已解决)

[复制链接]

该用户从未签到

3

主题

13

帖子

0

新手上路

Rank: 1

积分
0
最后登录
1970-1-1
发表于 2014-1-23 15:50:19 | 显示全部楼层 |阅读模式
从SDK代码中将GPIO模块移植到驱动中,但是一访问MUX寄存器就挂:
访问gpio接口如下:
gpio_set_gpio(GPIO_PORT5, 25);
gpio_set_direction(GPIO_PORT5, 25, GPIO_GDIR_OUTPUT);
gpio_set_level(GPIO_PORT5, 25, GPIO_LOW_LEVEL);
mdelay(1000);
gpio_set_level(GPIO_PORT5, 25, GPIO_HIGH_LEVEL);
在调用gpio_set_gpio时提示虚拟地址020e0274无法访问。查看datasheet该地址确实是IOMUXC_SW_MUX_CTL_PAD_CSI0_DATA07 的寄存器地址。
 
以下是错误信息:
[email=root@sabresd_6dq:/]root@sabresd_6dq:/[/email] # insmod /mnt/udisk/misc.ko                                
misc driver init.Enter gpio_set_gpio, 71
Enter gpio_set_gpio, 77
Enter gpio_set_gpio, 84
Enter gpio_set_gpio, 86, addr = 0x20E0274
Unable to handle kernel paging request at virtual address 020e0274
pgd = d11f0000
[020e0274] *pgd=00000000
Internal error: Oops: 5 [#1] PREEMPT SMP
Modules linked in: misc(+)
CPU: 0    Not tainted  (3.0.35-06077-g8e02e5d #1)
PC is at gpio_set_gpio+0x9c/0xd8 [misc]
LR is at gpio_set_gpio+0x9c/0xd8 [misc]
pc : []    lr : []    psr: 600f0013
sp : d135fea0  ip : c08ea7d0  fp : d135e000
r10: c00c4224  r9 : bf0012f0  r8 : 00000000
r7 : bf003000  r6 : 00000004  r5 : 020e0274  r4 : 00000000
r3 : 00000002  r2 : 00000000  r1 : d43ce060  r0 : 0000002d
Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user
Control: 10c53c7d  Table: 211f004a  DAC: 00000015
我知道答案 目前已有6人回答
回复

使用道具 举报

该用户从未签到

3

主题

13

帖子

0

新手上路

Rank: 1

积分
0
最后登录
1970-1-1
 楼主| 发表于 2014-1-23 20:40:29 | 显示全部楼层

回复:IMX6Q-SDB开发板上android下驱动设置GPIO问题

问题已经解决了。
回复 支持 反对

使用道具 举报

该用户从未签到

45

主题

2369

帖子

0

金牌会员

Rank: 6Rank: 6

积分
3275
最后登录
1970-1-1
发表于 2014-1-24 10:27:34 | 显示全部楼层

回复:IMX6Q-SDB开发板上android下驱动设置GPIO问题

回复第 2 楼 于2014-01-23 20:40:29发表:
问题已经解决了。 

楼主你好,非常高兴你的问题已经解决,不知道楼主是否可以共享一下解决方法,这样别的网友在遇到同样的问题就可以参考和学习和转载了,这样会是我们广大网友的很宝贵的福利啊,非常感谢~~
回复 支持 反对

使用道具 举报

该用户从未签到

3

主题

13

帖子

0

新手上路

Rank: 1

积分
0
最后登录
1970-1-1
 楼主| 发表于 2014-1-26 11:44:55 | 显示全部楼层

回复:IMX6Q-SDB开发板上android下驱动设置GPIO问题

回复第 3 楼 于2014-01-24 10:27:34发表:
回复第 2 楼 于2014-01-23 20:40:29发表:
问题已经解决了。 

楼主你好,非常高兴你的问题已经解决,不知道楼主是否可以共享一下解决方法,这样别的网友在遇到同样的问题就可以参考和学习和转载了,这样会是我们广大网友的很宝贵的福利啊,非常感谢~~
 

.h文件中定义的寄存器地址只是个相对地址,不能直接使用。需要加上虚拟基地址,这个地址可以在内核那边GPIO相关部分那边找到,或printk出来看下。
回复 支持 反对

使用道具 举报

  • TA的每日心情
    开心
    2018-7-2 06:04
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    59

    主题

    2888

    帖子

    10

    金牌会员

    Rank: 6Rank: 6

    积分
    6020
    最后登录
    2020-9-28
    发表于 2014-1-26 15:53:05 | 显示全部楼层

    回复:IMX6Q-SDB开发板上android下驱动设置GPIO问题

    谢谢你分享经验
    感谢你对飞思卡尔产品的关注!
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2018-9-14 09:26
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    70

    主题

    329

    帖子

    0

    高级会员

    Rank: 4

    积分
    952
    最后登录
    2021-1-4
    发表于 2016-6-21 14:18:07 | 显示全部楼层
    楼主怎么解决的?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2020-1-19 15:50
  • 签到天数: 243 天

    连续签到: 1 天

    [LV.8]以坛为家I

    3

    主题

    1325

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    2316
    最后登录
    2020-1-19
    发表于 2016-6-21 16:39:50 | 显示全部楼层
    还能炮系统?都支持那些系统呢?
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-7-21 00:20 , Processed in 0.101436 second(s), 27 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表