edriver
驱动小牛
驱动小牛
  • 注册日期2002-03-04
  • 最后登录2006-09-15
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望3点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1515回复:9

哪里可以得到Windriver for Linux?

楼主#
更多 发布于:2003-01-07 17:12
rt
lindriver
驱动牛犊
驱动牛犊
  • 注册日期2003-01-07
  • 最后登录2003-03-27
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-01-08 10:00
上他的网站可以得到一个免费的试用版。
unix1998
驱动老牛
驱动老牛
  • 注册日期2002-05-08
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分6分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-01-08 11:29
我有。
edriver
驱动小牛
驱动小牛
  • 注册日期2002-03-04
  • 最后登录2006-09-15
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望3点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2003-01-08 11:50
unix1998,能否拿出来共享?
本着GPL的原则,还是拿出来共享嘛! :D :D :D
unix1998
驱动老牛
驱动老牛
  • 注册日期2002-05-08
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分6分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2003-01-08 12:38
不行,我要卖1000万美元。
 :D :D :D





KD521LN.tgz  6.85m
怎么给你?
unix1998
驱动老牛
驱动老牛
  • 注册日期2002-05-08
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分6分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2003-01-08 12:52
说错了,是WD521LN.tgz
6m多。
bbs_000
驱动牛犊
驱动牛犊
  • 注册日期2002-11-05
  • 最后登录2003-03-31
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2003-01-08 14:38
到这里下载:http://www.driverdevelop.com/download.php?sortid=1&page=11
edriver
驱动小牛
驱动小牛
  • 注册日期2002-03-04
  • 最后登录2006-09-15
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望3点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2003-01-08 15:45
我已经下载了试用版,给我的PCI板卡生成了源代码,不行呀,根本就不支持PnP嘛。这样的代码其实早就有了!
unix1998,我想和讨论如何让PCI设备支持PnP的问题!
我的想法是这样的:
struct pci_driver hppm_driver = { /* .... */ };
int hppm_init_module(void)
{
return pci_module_init(&hppm_driver);
}
int hppm_cleanup_module(void)
{
pci_unregister_driver(&hppm_driver);
}

而一般的字符设备是这样的:
static struct file_operations mypci_fops = {
 NULL,            /* seek    */
 mypci_read,    /* read    */
 mypci_write,   /* write   */
 NULL,   /* readdir */
 NULL,   /* select  */
 mypci_ioctl,  /* ioctl   */
 NULL,
 mypci_open,
 mypci_close,
 NULL   /* fsync   */
};
 
if ((err = register_chrdev(MajorNumber, \"mypci\", &mypci_fops))) {
      printk(\"%s: Failure to load module. error %d\\n\", ADAPTER_ID, -err);
      return err;
  }
所以我就不明白了:如果用 register_chrdev(),就可以用到file_operations 结构,可是如果用pci_module_init(),就用不到这个结构!那么我应该在什么地方加载我的file_operations 结构呢?没有这个结构就不能和我的应用程序交互数据!

这个问题应该怎么解决呢?
 
unix1998
驱动老牛
驱动老牛
  • 注册日期2002-05-08
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分6分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2003-01-08 16:38
我架设你的kernel是2.4。如果是2.2我和你说那个办法。

你应该这么做:
注册你的driver的探测程序和一起的pci子系统的相关设备数据。
这些信息在pci_driver结构体里。你的初始化程序在里面应该有所体现。
下一步才能进行register_pci_driver注册。
(see pci.h)
pci_driver结构很重要。里面的probe函数就是探测程序。
说到着你应该明白了吧。

建议你看pci_driver结构,pci.h文件,和一些pci驱动的例子。
这个不是char设备那样直接注册了。
edriver
驱动小牛
驱动小牛
  • 注册日期2002-03-04
  • 最后登录2006-09-15
  • 粉丝0
  • 关注0
  • 积分13分
  • 威望3点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2003-01-09 09:01
谢谢你的回答,可是好像不是我想问的。 :D :D :D
我想问的是:
应该在什么地方加载我的file_operations 结构?
肯定应该在探测函数里面加载了,可是应该用什么函数来实现了,我看了很多例子,可是都是诸如声卡,网卡的例子,它们都有自己特有的函数,但是对于数据采集卡却不知道该如何下手!
请教unix1998:
你是否有这类的例子?
游客

返回顶部