[国嵌攻略][137][DM9000网卡驱动编程]
2016-03-12 20:05
281 查看
DM9000数据发送
DM9000数据发送函数是在/drivers/net/dm9000.c中的dm9000_start_xmit函数
DM9000数据发送函数是在/drivers/net/dm9000.c中的dm9000_start_xmit函数
static int dm9000_start_xmit(struct sk_buff *skb, struct net_device *dev){ //发送数据长度 board_info_t *db = netdev_priv(dev); iow(db, DM9000_TXPLL, (skb->len)>>0); iow(db, DM9000_TXPLH, (skb->len)>>8); //发送数据报文 writeb(DM9000_MWCMD, db->io_addr); (db->outblk)(db->io_data, skb->data, skb->len); //判断数据发送 db->tx_pkt_cnt++; if(db->tx_pkt_cnt == 1){ //如果是第一个报文,使能数据发送 iow(db, DM9000_TCR, TCR_TXREQ); }else{ //如果是第二个报文,关闭接收队列 netif_stop_queue(dev); } //释放报文结构 dev_kfree_skb(skb); return NETDEV_TX_OK; }
相关文章推荐
- 打印图形f
- Python 正整数任意进制互转换代码示例
- 单例模式及常见写法分析(设计模式01)
- java入门学习(15)—多线程
- java判断“==”和equals的区别
- 打印图形e
- JAVA5多线程---Condition使用---线程通信 --wait及notify方法
- MATLAB学习——函数的编写
- Java 消息服务(JMS)
- NLPIR2016分词的python3实现
- 用python爬取游戏图片
- 【ASP.net】Equals 和 == 的区别
- python tuple整理
- [c++]C++学习笔记001.cout/cin
- Java NIO Channel
- java selenium (六) XPath 定位
- C++实验1-输出两个数中较大的数
- java selenium (十四) 处理Iframe 中的元素
- java selenium (十三) 智能等待页面加载完成
- java selenium (十二) 操作弹出窗口