aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-04-23 14:13:19 -0400
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-04-23 14:13:19 -0400
commit66c7d2f1d9cb19e46717b26fb49550b5e82985fe (patch)
treedd9624a28fe20cefa2fd4390abd0e0fa611f3a7e
parent36e82dfda526e2dea26060e8766bda5a8110c4e6 (diff)
parentc3b99f0db9b2ef4292ef774bae1ea0d6f1e8d82a (diff)
Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6: [SUNHME]: Fix module unload. [SUNLANCE]: Fix module unload. [SUNQE]: Fix MAC address assignment. [SBUS] vfc_dev.c: kzalloc
-rw-r--r--drivers/net/sunhme.c2
-rw-r--r--drivers/net/sunlance.c4
-rw-r--r--drivers/net/sunqe.c4
-rw-r--r--drivers/sbus/char/vfc_dev.c3
4 files changed, 7 insertions, 6 deletions
diff --git a/drivers/net/sunhme.c b/drivers/net/sunhme.c
index ef671739cfea..192bbc91c731 100644
--- a/drivers/net/sunhme.c
+++ b/drivers/net/sunhme.c
@@ -3314,7 +3314,7 @@ static int __devexit hme_sbus_remove(struct of_device *dev)
3314 struct happy_meal *hp = dev_get_drvdata(&dev->dev); 3314 struct happy_meal *hp = dev_get_drvdata(&dev->dev);
3315 struct net_device *net_dev = hp->dev; 3315 struct net_device *net_dev = hp->dev;
3316 3316
3317 unregister_netdevice(net_dev); 3317 unregister_netdev(net_dev);
3318 3318
3319 /* XXX qfe parent interrupt... */ 3319 /* XXX qfe parent interrupt... */
3320 3320
diff --git a/drivers/net/sunlance.c b/drivers/net/sunlance.c
index 5b00d79b5573..b0929a457b60 100644
--- a/drivers/net/sunlance.c
+++ b/drivers/net/sunlance.c
@@ -1550,7 +1550,7 @@ static int __exit sunlance_sun4_remove(void)
1550 struct lance_private *lp = dev_get_drvdata(&sun4_sdev.ofdev.dev); 1550 struct lance_private *lp = dev_get_drvdata(&sun4_sdev.ofdev.dev);
1551 struct net_device *net_dev = lp->dev; 1551 struct net_device *net_dev = lp->dev;
1552 1552
1553 unregister_netdevice(net_dev); 1553 unregister_netdev(net_dev);
1554 1554
1555 lance_free_hwresources(lp); 1555 lance_free_hwresources(lp);
1556 1556
@@ -1590,7 +1590,7 @@ static int __devexit sunlance_sbus_remove(struct of_device *dev)
1590 struct lance_private *lp = dev_get_drvdata(&dev->dev); 1590 struct lance_private *lp = dev_get_drvdata(&dev->dev);
1591 struct net_device *net_dev = lp->dev; 1591 struct net_device *net_dev = lp->dev;
1592 1592
1593 unregister_netdevice(net_dev); 1593 unregister_netdev(net_dev);
1594 1594
1595 lance_free_hwresources(lp); 1595 lance_free_hwresources(lp);
1596 1596
diff --git a/drivers/net/sunqe.c b/drivers/net/sunqe.c
index 7874eb1ef043..f3bad56d476a 100644
--- a/drivers/net/sunqe.c
+++ b/drivers/net/sunqe.c
@@ -845,6 +845,8 @@ static int __init qec_ether_init(struct sbus_dev *sdev)
845 if (!dev) 845 if (!dev)
846 return -ENOMEM; 846 return -ENOMEM;
847 847
848 memcpy(dev->dev_addr, idprom->id_ethaddr, 6);
849
848 qe = netdev_priv(dev); 850 qe = netdev_priv(dev);
849 851
850 i = of_getintprop_default(sdev->ofdev.node, "channel#", -1); 852 i = of_getintprop_default(sdev->ofdev.node, "channel#", -1);
@@ -960,7 +962,7 @@ static int __devexit qec_sbus_remove(struct of_device *dev)
960 struct sunqe *qp = dev_get_drvdata(&dev->dev); 962 struct sunqe *qp = dev_get_drvdata(&dev->dev);
961 struct net_device *net_dev = qp->dev; 963 struct net_device *net_dev = qp->dev;
962 964
963 unregister_netdevice(net_dev); 965 unregister_netdev(net_dev);
964 966
965 sbus_iounmap(qp->qcregs, CREG_REG_SIZE); 967 sbus_iounmap(qp->qcregs, CREG_REG_SIZE);
966 sbus_iounmap(qp->mregs, MREGS_REG_SIZE); 968 sbus_iounmap(qp->mregs, MREGS_REG_SIZE);
diff --git a/drivers/sbus/char/vfc_dev.c b/drivers/sbus/char/vfc_dev.c
index 8bfb67ccdcd4..c3135e2fbd5a 100644
--- a/drivers/sbus/char/vfc_dev.c
+++ b/drivers/sbus/char/vfc_dev.c
@@ -259,11 +259,10 @@ static int vfc_debug(struct vfc_dev *dev, int cmd, void __user *argp)
259 if (copy_from_user(&inout, argp, sizeof(inout))) 259 if (copy_from_user(&inout, argp, sizeof(inout)))
260 return -EFAULT; 260 return -EFAULT;
261 261
262 buffer = kmalloc(inout.len, GFP_KERNEL); 262 buffer = kzalloc(inout.len, GFP_KERNEL);
263 if (buffer == NULL) 263 if (buffer == NULL)
264 return -ENOMEM; 264 return -ENOMEM;
265 265
266 memset(buffer,0,inout.len);
267 vfc_lock_device(dev); 266 vfc_lock_device(dev);
268 inout.ret= 267 inout.ret=
269 vfc_i2c_recvbuf(dev,inout.addr & 0xff 268 vfc_i2c_recvbuf(dev,inout.addr & 0xff