QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2418|回复: 8

我的并口I/O地址0X378申请不到?

[复制链接]
发表于 2005-7-14 09:35:56 | 显示全部楼层 |阅读模式
用check_region这个函数在驱动程序里面申请
并口的I/O地址0x378,提示是设备忙,申请不成功。
是不是这个地址被哪个驱动程序占用了?
是lp这个驱动程序吗?
我看了两个文件/proc/ioports ,/proc/devices

/proc/ioports 显示0x378 是分给parport0的,
/proc/devices显示有一个char module 名为lp.

我卸载了lp这个驱动程序,但是我还是申请不到。
google了一下,好象说要把并口的base address改动一下,
那么我的驱动程序就可以使用0x378这个I/O了,可是我不知道怎么改动。

还有其它的方法吗?让我可以申请到ox378这个I/O地址.
发表于 2005-7-14 15:32:07 | 显示全部楼层
parport和lp不是一个设备
一个是并口,一个是打印机
rmmod parport
回复

使用道具 举报

发表于 2005-7-14 16:18:59 | 显示全部楼层
介绍一个简单的办法 到kernel source里找有哪些driver用这个资源的 然后对比你现在加载的module 删之即可
回复

使用道具 举报

 楼主| 发表于 2005-7-15 13:46:06 | 显示全部楼层
[quote:2d2d1ac369="mozilla"]parport和lp不是一个设备
一个是并口,一个是打印机
rmmod parport[/quote]

我用rmmod parport
返回的消息是:
parport: Device or resource busy

然后用dmesg查看消息显示如下:
parport0: PC-style at 0x378 [PCSPP,TRISTATE]
lp0: using parport0 (polling).
lp0: console ready

我用rmmod lp 已经把lp 这个设备从/proc/devices删除了.
在/proc/devices 没有parport 这个设备,为什么还能用rmmod这个命令.
回复

使用道具 举报

 楼主| 发表于 2005-7-15 13:55:35 | 显示全部楼层
[quote:ae63a87209="wsm"]介绍一个简单的办法 到kernel source里找有哪些driver用这个资源的 然后对比你现在加载的module 删之即可[/quote]

一直在drivers/parport 和drivers/char 两个目录下找,
在drivers/parport/parport_pc.c有函数parport_pc_probe_port 用到了这个端口,但是还是很多没有搞明白.(我用的内核是2.4.20-8(RH9.0)的内核)
回复

使用道具 举报

发表于 2005-7-15 17:24:24 | 显示全部楼层
[root@localhost ~]# rmmod lp
[root@localhost ~]# rmmod parport
ERROR: Module parport is in use by parport_pc
[root@localhost ~]# rmmod parport_pc
[root@localhost ~]# rmmod parport
我的可以。
把/lib/modules/`uname -r`/kernel/drivers/parport删除,然后重启
回复

使用道具 举报

 楼主| 发表于 2005-7-15 18:45:52 | 显示全部楼层
非常感谢 mozilla 版主!
按照你的方法申请成功了.
也感谢 wsm 兄!
回复

使用道具 举报

发表于 2005-7-17 15:43:07 | 显示全部楼层
[quote:08e509edb5="mozilla"][root@localhost ~]# rmmod lp
[root@localhost ~]# rmmod parport
ERROR: Module parport is in use by parport_pc
[root@localhost ~]# rmmod parport_pc
[root@localhost ~]# rmmod parport
我的可以。
把/lib/modules/`uname -r`/kernel/drivers/parport删除,然后重启[/quote]
这是我原来看《Linux Device Driver》碰到的第一个问题
哈哈
回复

使用道具 举报

发表于 2005-7-18 09:07:03 | 显示全部楼层
把/lib/modules/`uname -r`/kernel/drivers/parport删除,然后重启

这个......太狠了吧
回复

使用道具 举报

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

本版积分规则

GMT+8, 2024-11-5 17:29 , Processed in 0.045351 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

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