CAN: add controller hardware name for Softing cards
[linux-2.6.git] / drivers / net / dnet.c
index edf23c9..9d8a20b 100644 (file)
@@ -8,7 +8,6 @@
  * it under the terms of the GNU General Public License version 2 as
  * published by the Free Software Foundation.
  */
-#include <linux/version.h>
 #include <linux/io.h>
 #include <linux/module.h>
 #include <linux/moduleparam.h>
 #include <linux/dma-mapping.h>
 #include <linux/platform_device.h>
 #include <linux/phy.h>
-#include <linux/platform_device.h>
 
 #include "dnet.h"
 
 #undef DEBUG
 
 /* function for reading internal MAC register */
-u16 dnet_readw_mac(struct dnet *bp, u16 reg)
+static u16 dnet_readw_mac(struct dnet *bp, u16 reg)
 {
        u16 data_read;
 
@@ -48,7 +46,7 @@ u16 dnet_readw_mac(struct dnet *bp, u16 reg)
 }
 
 /* function for writing internal MAC register */
-void dnet_writew_mac(struct dnet *bp, u16 reg, u16 val)
+static void dnet_writew_mac(struct dnet *bp, u16 reg, u16 val)
 {
        /* load data to write */
        dnet_writel(bp, val, MACREG_DATA);
@@ -65,11 +63,11 @@ static void __dnet_set_hwaddr(struct dnet *bp)
 {
        u16 tmp;
 
-       tmp = cpu_to_be16(*((u16 *) bp->dev->dev_addr));
+       tmp = be16_to_cpup((__be16 *)bp->dev->dev_addr);
        dnet_writew_mac(bp, DNET_INTERNAL_MAC_ADDR_0_REG, tmp);
-       tmp = cpu_to_be16(*((u16 *) (bp->dev->dev_addr + 2)));
+       tmp = be16_to_cpup((__be16 *)(bp->dev->dev_addr + 2));
        dnet_writew_mac(bp, DNET_INTERNAL_MAC_ADDR_1_REG, tmp);
-       tmp = cpu_to_be16(*((u16 *) (bp->dev->dev_addr + 4)));
+       tmp = be16_to_cpup((__be16 *)(bp->dev->dev_addr + 4));
        dnet_writew_mac(bp, DNET_INTERNAL_MAC_ADDR_2_REG, tmp);
 }
 
@@ -91,11 +89,11 @@ static void __devinit dnet_get_hwaddr(struct dnet *bp)
         * Mac_addr[15:0]).
         */
        tmp = dnet_readw_mac(bp, DNET_INTERNAL_MAC_ADDR_0_REG);
-       *((u16 *) addr) = be16_to_cpu(tmp);
+       *((__be16 *)addr) = cpu_to_be16(tmp);
        tmp = dnet_readw_mac(bp, DNET_INTERNAL_MAC_ADDR_1_REG);
-       *((u16 *) (addr + 2)) = be16_to_cpu(tmp);
+       *((__be16 *)(addr + 2)) = cpu_to_be16(tmp);
        tmp = dnet_readw_mac(bp, DNET_INTERNAL_MAC_ADDR_2_REG);
-       *((u16 *) (addr + 4)) = be16_to_cpu(tmp);
+       *((__be16 *)(addr + 4)) = cpu_to_be16(tmp);
 
        if (is_valid_ether_addr(addr))
                memcpy(bp->dev->dev_addr, addr, sizeof(addr));
@@ -363,7 +361,7 @@ err_out:
 }
 
 /* For Neptune board: LINK1000 as Link LED and TX as activity LED */
-int dnet_phy_marvell_fixup(struct phy_device *phydev)
+static int dnet_phy_marvell_fixup(struct phy_device *phydev)
 {
        return phy_write(phydev, 0x18, 0x4148);
 }
@@ -543,7 +541,7 @@ static inline void dnet_print_skb(struct sk_buff *skb)
 #define dnet_print_skb(skb)    do {} while (0)
 #endif
 
-static int dnet_start_xmit(struct sk_buff *skb, struct net_device *dev)
+static netdev_tx_t dnet_start_xmit(struct sk_buff *skb, struct net_device *dev)
 {
 
        struct dnet *bp = netdev_priv(dev);
@@ -596,9 +594,7 @@ static int dnet_start_xmit(struct sk_buff *skb, struct net_device *dev)
 
        spin_unlock_irqrestore(&bp->lock, flags);
 
-       dev->trans_start = jiffies;
-
-       return 0;
+       return NETDEV_TX_OK;
 }
 
 static void dnet_reset_hw(struct dnet *bp)
@@ -801,7 +797,7 @@ static int dnet_ioctl(struct net_device *dev, struct ifreq *rq, int cmd)
        if (!phydev)
                return -ENODEV;
 
-       return phy_mii_ioctl(phydev, if_mii(rq), cmd);
+       return phy_mii_ioctl(phydev, rq, cmd);
 }
 
 static void dnet_get_drvinfo(struct net_device *dev,
@@ -858,7 +854,7 @@ static int __devinit dnet_probe(struct platform_device *pdev)
        dev = alloc_etherdev(sizeof(*bp));
        if (!dev) {
                dev_err(&pdev->dev, "etherdev alloc failed, aborting.\n");
-               goto err_out;
+               goto err_out_release_mem;
        }
 
        /* TODO: Actually, we have some interesting features... */
@@ -915,12 +911,13 @@ static int __devinit dnet_probe(struct platform_device *pdev)
        if (err)
                dev_warn(&pdev->dev, "Cannot register PHY board fixup.\n");
 
-       if (dnet_mii_init(bp) != 0)
+       err = dnet_mii_init(bp);
+       if (err)
                goto err_out_unregister_netdev;
 
        dev_info(&pdev->dev, "Dave DNET at 0x%p (0x%08x) irq %d %pM\n",
               bp->regs, mem_base, dev->irq, dev->dev_addr);
-       dev_info(&pdev->dev, "has %smdio, %sirq, %sgigabit, %sdma \n",
+       dev_info(&pdev->dev, "has %smdio, %sirq, %sgigabit, %sdma\n",
               (bp->capabilities & DNET_HAS_MDIO) ? "" : "no ",
               (bp->capabilities & DNET_HAS_IRQ) ? "" : "no ",
               (bp->capabilities & DNET_HAS_GIGABIT) ? "" : "no ",
@@ -940,6 +937,8 @@ err_out_iounmap:
        iounmap(bp->regs);
 err_out_free_dev:
        free_netdev(dev);
+err_out_release_mem:
+       release_mem_region(mem_base, mem_size);
 err_out:
        return err;
 }