• «
  • 1
  • 2
  • 3
  • »
  • Pages: 2/3     Go
主题 : 路过顺便指点下platform_get_resource 获取资源问题??先谢了 复制链接 | 浏览器收藏 | 打印
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
10楼  发表于: 2009-08-14 17:16
复制代码
  1. keybus_probe(struct platform_device *pdev)
  2. {
  3.     struct board_info *db;    /* Point a board information structure */
  4.     ...
  5. //    memset(db,0,sizeof(*db));
  6. /*
  7.     db->dev = &pdev->dev;
  8. */    
  9.     db->addr_res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
  10.     db->data_res = platform_get_resource(pdev, IORESOURCE_MEM, 1);

使用未初始化的局部变量,而且还是个空指针
"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: 6079
精华: 0
发帖: 34
金钱: 305 两
威望: 191 点
综合积分: 68 分
注册时间: 2009-05-19
最后登录: 2010-08-09
11楼  发表于: 2009-08-14 17:19
我 cat  iomem  好像没有别的再使用,是不是别的使用了不在这里显示呢? 不然那为什么不行呢?  keybus  是我加的
-----------------------------------
[root@FriendlyARM /proc]# cat iomem                                  
18000000-18000003 : keybu?0                            
18000004-18000007 : keybus.0                            
19000300-19000310 : cs8900                          
20000000-20000003 : dm9000.0                            
  20000000-20000003 : dm9000                            
20000004-20000007 : dm9000.0                            
  20000004-20000007 : dm9000                            
30000000-33ffffff : System RAM                              
  30027000-30372fff : Kernel text                                
  30374000-303d20bf : Kernel data
49000000-490fffff : s3c2410-oh鉯
  49000000-490fffff : ohci_hcd
4d000000-4d0f鎓ff : s3c2410-lcd
  4d000000-4d0fffff : s3c2410-lcd
4e000000-4e0fffff : s3c2440-nand
  4e000000-4e0fffff : s3c2440-nand
50000000-50003fff : s3c2440-uart.0
  50000000-500000ff : s3c2440-uart
50004000-50007fff : s3c2440-uart.1
  50004000-500040ff : s3c2440-uart
50008000-5000bfff : s3c2440-uart.2
  50008000-500080ff : s3c2440-uart
52000000-520fffff : s3c2440-usbgadget
53000000-530fffff : s3c2410-wdt
  53000000-530fffff : s3c2410-wdt
54000000-54000fff : s3c2440-i2c
  54000000-5?00fff : s3c2440-i2c
55000000-550fffff : s3c2410-iis
57000000-570000ff : s3c2410-rtc
  57000000-570000ff : s3c2410-rtc
5a000000-5a0fffff : s3c2440-sdi
  5a000000-5a0fffff : s3c2440-sdi
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
12楼  发表于: 2009-08-14 17:21
引用第9楼superfight于2009-08-14 17:13发表的  :
我猜是你要用的这个资源已经被别的驱动申请了~  但是申请已经被占用的资源会不会引起PANIC就不清楚了~

你在每条语句下面都加一条printk~ 看看是运行到哪条语句panic的~


.......

友善之臂的驱动源代码,仅供参考:)
"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: 6079
精华: 0
发帖: 34
金钱: 305 两
威望: 191 点
综合积分: 68 分
注册时间: 2009-05-19
最后登录: 2010-08-09
13楼  发表于: 2009-08-14 17:24
使用未初始化的局部变量,而且还是个空指针?
----------------------------------------------------
具体指的是哪个?  还请楼主指明?
能说明下吗 ? 呵呵谢了!!

struct board_info *db;    /* Point a board information structure */
04.    ...
05.//    memset(db,0,sizeof(*db));
06./*
07.    db->dev = &pdev->dev;
08.*/    
09.
10.    db->addr_res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
11.    db->data_res = platform_get_resource(pdev, IORESOURCE_MEM, 1);
级别: 新手上路
UID: 6079
精华: 0
发帖: 34
金钱: 305 两
威望: 191 点
综合积分: 68 分
注册时间: 2009-05-19
最后登录: 2010-08-09
14楼  发表于: 2009-08-14 17:25
使用未初始化的局部变量,而且还是个空指针?
----------------------------------------------------
具体指的是哪个?  还请楼主指明?
能说明下吗 ? 呵呵谢了!!

struct board_info *db;    /* Point a board information structure */
04.    ...
05.//    memset(db,0,sizeof(*db));
06./*
07.    db->dev = &pdev->dev;
08.*/    
09.
10.    db->addr_res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
11.    db->data_res = platform_get_resource(pdev, IORESOURCE_MEM, 1);
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
15楼  发表于: 2009-08-14 17:25
我贴出来的这一段里好像只有一个叫db的指针吧
"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."
one more time~ one more chance~
级别: 侠客
UID: 7776
精华: 1
发帖: 73
金钱: 675 两
威望: 503 点
综合积分: 166 分
注册时间: 2009-07-28
最后登录: 2020-06-08
16楼  发表于: 2009-08-14 17:26
引用第12楼kasim于2009-08-14 17:21发表的  :

友善之臂的驱动源代码,仅供参考:)


请教一下~ 呢为什么不能写成

.start = S3C2410_CS4,
.end   = S3C2410_CS4 + 3

这样的形式呢?~
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
17楼  发表于: 2009-08-14 17:28

 回 16楼(superfight) 的帖子

澄清一下,代码怎么写都可以,但问题是为什么那么写。
你会去用memcpy() copy一个字节吗?
"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."
one more time~ one more chance~
级别: 侠客
UID: 7776
精华: 1
发帖: 73
金钱: 675 两
威望: 503 点
综合积分: 166 分
注册时间: 2009-07-28
最后登录: 2020-06-08
18楼  发表于: 2009-08-14 17:33
~ 受教受教~
级别: 新手上路
UID: 6079
精华: 0
发帖: 34
金钱: 305 两
威望: 191 点
综合积分: 68 分
注册时间: 2009-05-19
最后登录: 2010-08-09
19楼  发表于: 2009-08-14 17:34
非常感谢 楼主的指点,   很佩服  值得学习 !!!
新手 基础不扎实 呵呵 !!
顺便多问下devs里的 id 的值 “ 0和1” 是怎么确定的?
.id     = 0,
.id     = -1,
  • «
  • 1
  • 2
  • 3
  • »
  • Pages: 2/3     Go