clps711xfb: convert to proc_fops
[safe/jmp/linux-2.6] / drivers / net / rrunner.c
index 7343291..20a7174 100644 (file)
@@ -63,6 +63,16 @@ MODULE_LICENSE("GPL");
 
 static char version[] __devinitdata = "rrunner.c: v0.50 11/11/2002  Jes Sorensen (jes@wildopensource.com)\n";
 
+
+static const struct net_device_ops rr_netdev_ops = {
+       .ndo_open               = rr_open,
+       .ndo_stop               = rr_close,
+       .ndo_do_ioctl           = rr_ioctl,
+       .ndo_start_xmit         = rr_start_xmit,
+       .ndo_change_mtu         = hippi_change_mtu,
+       .ndo_set_mac_address    = hippi_mac_addr,
+};
+
 /*
  * Implementation notes:
  *
@@ -115,10 +125,7 @@ static int __devinit rr_init_one(struct pci_dev *pdev,
        spin_lock_init(&rrpriv->lock);
 
        dev->irq = pdev->irq;
-       dev->open = &rr_open;
-       dev->hard_start_xmit = &rr_start_xmit;
-       dev->stop = &rr_close;
-       dev->do_ioctl = &rr_ioctl;
+       dev->netdev_ops = &rr_netdev_ops;
 
        dev->base_addr = pci_resource_start(pdev, 0);
 
@@ -1005,7 +1012,6 @@ static void rx_int(struct net_device *dev, u32 rxlimit, u32 index)
 
                        netif_rx(skb);          /* send it up */
 
-                       dev->last_rx = jiffies;
                        dev->stats.rx_packets++;
                        dev->stats.rx_bytes += pkt_len;
                }
@@ -1395,7 +1401,8 @@ static int rr_close(struct net_device *dev)
 }
 
 
-static int rr_start_xmit(struct sk_buff *skb, struct net_device *dev)
+static netdev_tx_t rr_start_xmit(struct sk_buff *skb,
+                                struct net_device *dev)
 {
        struct rr_private *rrpriv = netdev_priv(dev);
        struct rr_regs __iomem *regs = rrpriv->regs;
@@ -1419,7 +1426,7 @@ static int rr_start_xmit(struct sk_buff *skb, struct net_device *dev)
                if (!(new_skb = dev_alloc_skb(len + 8))) {
                        dev_kfree_skb(skb);
                        netif_wake_queue(dev);
-                       return -EBUSY;
+                       return NETDEV_TX_OK;
                }
                skb_reserve(new_skb, 8);
                skb_put(new_skb, len);
@@ -1460,7 +1467,7 @@ static int rr_start_xmit(struct sk_buff *skb, struct net_device *dev)
        spin_unlock_irqrestore(&rrpriv->lock, flags);
 
        dev->trans_start = jiffies;
-       return 0;
+       return NETDEV_TX_OK;
 }
 
 
@@ -1707,9 +1714,3 @@ static void __exit rr_cleanup_module(void)
 
 module_init(rr_init_module);
 module_exit(rr_cleanup_module);
-
-/*
- * Local variables:
- * compile-command: "gcc -D__KERNEL__ -I../../include -Wall -Wstrict-prototypes -O2 -pipe -fomit-frame-pointer -fno-strength-reduce -m486 -malign-loops=2 -malign-jumps=2 -malign-functions=2 -DMODULE -DMODVERSIONS -include ../../include/linux/modversions.h -c rrunner.c"
- * End:
- */