主题 : 求助,自己编写的网卡驱动在ping外网时无法进入发送函数? 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 31410
精华: 0
发帖: 6
金钱: 30 两
威望: 6 点
综合积分: 12 分
注册时间: 2010-10-30
最后登录: 2012-11-20
楼主  发表于: 2011-04-28 21:10

 求助,自己编写的网卡驱动在ping外网时无法进入发送函数?

自己编写的网卡驱动,类似于CS8900网卡。
接收和发送函数都在net_device_ops结构体中指定了,也在xxx_probe()函数中注册了,但是为什么ping 外网时无法进入发送函数xxx_send()?      (我在发送函数中printk打印信息,但一直没有打印)
在xxx_ops结构体中: .ndo_start_xmit = xxx_send,
在xxx_probe函数中: dev->netdev_ops = &xxx_ops.
其它的比如 open 和 close 函数都可以自动调用没有问题。

注册已经成功了。
ifconfig  xxx0 up 也成功了。
接收报文没有问题。
但就是ping 外网时不能进入发送函数,按理说应该是自动调用的啊,为什么会这样?

【我用的硬件平台是micro2440,内核是友善之臂提供的标准内核剪裁后的,剪裁时没有改变网络方面的配置。】
[ 此帖被keyearth在2011-04-28 21:18重新编辑 ]
级别: 新手上路
UID: 31410
精华: 0
发帖: 6
金钱: 30 两
威望: 6 点
综合积分: 12 分
注册时间: 2010-10-30
最后登录: 2012-11-20
1楼  发表于: 2011-04-28 21:12

 回 楼主(keyearth) 的帖子

注册已经成功了。
ifconfig  xxx0 up 也成功了。
接收报文没有问题。
但就是ping 外网时不能进入发送函数,按理说应该是自动调用的啊,为什么会这样?