主题 : 请教!!如何使用platform driver机制 与devs 下资源信息resource 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 6079
精华: 0
发帖: 34
金钱: 305 两
威望: 191 点
综合积分: 68 分
注册时间: 2009-05-19
最后登录: 2010-08-09
楼主  发表于: 2009-08-09 11:45

 请教!!如何使用platform driver机制 与devs 下资源信息resource

我的问题是 我使用platform driver机制编写驱动文件,可以编译成模块.ko吗? 可以mknod 、 insmod、吗 是不是把 devs.c 中 reourece 结构 (如下例子)提前编译进内核,
才能在驱动中用 platform_get_resource


举个例子:
/* arch/arm/mach-s3c2410/devs.c */
/* I2C */
static struct resource s3c_i2c_resource[] = {
[0] = {
.start = S3C24XX_PA_IIC,
.end = S3C24XX_PA_IIC + S3C24XX_SZ_IIC - 1,
.flags = IORESOURCE_MEM,
},
[1] = {
.start = IRQ_IIC, //S3C2410_IRQ(27)
.end = IRQ_IIC,
.flags = IORESOURCE_IRQ,
}
};



*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
1楼  发表于: 2009-08-09 13:24
是的,从Linux Driver Model来说,devs.c里定义的是device, 而内核模块形式的驱动定义的是driver, 只有当两者都存在且匹配时,驱动才会加载。
"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."