网卡的中断
网卡中断主要是在接收新数据和数据发送完成时被调用,提醒网络驱动设备接收新数据和唤醒发送队列。
static irqreturn_t smsc911x_irqhandler(int irq, void *dev_id)
- struct net_device *dev = dev_id;
- struct smsc911x_data *pdata = netdev_priv(dev);
- u32 intsts = smsc911x_reg_read(pdata, INT_STS);
- u32 inten = smsc911x_reg_read(pdata, INT_EN);
- if (unlikely(intsts & inten & INT_STS_SW_INT_)) {/*判断软中断有没有触发,如果有则关掉软中断并将其清零*/
- if (likely(intsts & inten & INT_STS_RSFL_)) {/*收到新的网卡数据触发中断*/

浙公网安备 33010602011771号