aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/block/viodasd.c2
-rw-r--r--drivers/cdrom/viocd.c2
-rw-r--r--drivers/char/hvsi.c2
-rw-r--r--drivers/char/viotape.c2
-rw-r--r--drivers/net/ibmveth.c2
-rw-r--r--drivers/net/iseries_veth.c27
6 files changed, 22 insertions, 15 deletions
diff --git a/drivers/block/viodasd.c b/drivers/block/viodasd.c
index f63e07bd9f9c..b0df4f5ab97a 100644
--- a/drivers/block/viodasd.c
+++ b/drivers/block/viodasd.c
@@ -747,7 +747,7 @@ static int viodasd_remove(struct vio_dev *vdev)
747 * support. 747 * support.
748 */ 748 */
749static struct vio_device_id viodasd_device_table[] __devinitdata = { 749static struct vio_device_id viodasd_device_table[] __devinitdata = {
750 { "viodasd", "" }, 750 { "block", "IBM,iSeries-viodasd" },
751 { "", "" } 751 { "", "" }
752}; 752};
753MODULE_DEVICE_TABLE(vio, viodasd_device_table); 753MODULE_DEVICE_TABLE(vio, viodasd_device_table);
diff --git a/drivers/cdrom/viocd.c b/drivers/cdrom/viocd.c
index c0f817ba7adb..af6b3bfd169b 100644
--- a/drivers/cdrom/viocd.c
+++ b/drivers/cdrom/viocd.c
@@ -731,7 +731,7 @@ static int viocd_remove(struct vio_dev *vdev)
731 * support. 731 * support.
732 */ 732 */
733static struct vio_device_id viocd_device_table[] __devinitdata = { 733static struct vio_device_id viocd_device_table[] __devinitdata = {
734 { "viocd", "" }, 734 { "block", "IBM,iSeries-viocd" },
735 { "", "" } 735 { "", "" }
736}; 736};
737MODULE_DEVICE_TABLE(vio, viocd_device_table); 737MODULE_DEVICE_TABLE(vio, viocd_device_table);
diff --git a/drivers/char/hvsi.c b/drivers/char/hvsi.c
index a9522189fc9e..a0370ed752ce 100644
--- a/drivers/char/hvsi.c
+++ b/drivers/char/hvsi.c
@@ -1179,7 +1179,7 @@ static int __init hvsi_init(void)
1179 if (tty_register_driver(hvsi_driver)) 1179 if (tty_register_driver(hvsi_driver))
1180 panic("Couldn't register hvsi console driver\n"); 1180 panic("Couldn't register hvsi console driver\n");
1181 1181
1182 printk(KERN_INFO "HVSI: registered %i devices\n", hvsi_count); 1182 printk(KERN_DEBUG "HVSI: registered %i devices\n", hvsi_count);
1183 1183
1184 return 0; 1184 return 0;
1185} 1185}
diff --git a/drivers/char/viotape.c b/drivers/char/viotape.c
index 60aabdb4a046..11c7e9de5958 100644
--- a/drivers/char/viotape.c
+++ b/drivers/char/viotape.c
@@ -989,7 +989,7 @@ static int viotape_remove(struct vio_dev *vdev)
989 * support. 989 * support.
990 */ 990 */
991static struct vio_device_id viotape_device_table[] __devinitdata = { 991static struct vio_device_id viotape_device_table[] __devinitdata = {
992 { "viotape", "" }, 992 { "byte", "IBM,iSeries-viotape" },
993 { "", "" } 993 { "", "" }
994}; 994};
995MODULE_DEVICE_TABLE(vio, viotape_device_table); 995MODULE_DEVICE_TABLE(vio, viotape_device_table);
diff --git a/drivers/net/ibmveth.c b/drivers/net/ibmveth.c
index 52d01027d9e7..37965dc78eec 100644
--- a/drivers/net/ibmveth.c
+++ b/drivers/net/ibmveth.c
@@ -61,7 +61,7 @@
61#undef DEBUG 61#undef DEBUG
62 62
63#define ibmveth_printk(fmt, args...) \ 63#define ibmveth_printk(fmt, args...) \
64 printk(KERN_INFO "%s: " fmt, __FILE__, ## args) 64 printk(KERN_DEBUG "%s: " fmt, __FILE__, ## args)
65 65
66#define ibmveth_error_printk(fmt, args...) \ 66#define ibmveth_error_printk(fmt, args...) \
67 printk(KERN_ERR "(%s:%3.3d ua:%x) ERROR: " fmt, __FILE__, __LINE__ , adapter->vdev->unit_address, ## args) 67 printk(KERN_ERR "(%s:%3.3d ua:%x) ERROR: " fmt, __FILE__, __LINE__ , adapter->vdev->unit_address, ## args)
diff --git a/drivers/net/iseries_veth.c b/drivers/net/iseries_veth.c
index f0f04be989d6..93394d76587a 100644
--- a/drivers/net/iseries_veth.c
+++ b/drivers/net/iseries_veth.c
@@ -69,6 +69,7 @@
69#include <linux/delay.h> 69#include <linux/delay.h>
70#include <linux/mm.h> 70#include <linux/mm.h>
71#include <linux/ethtool.h> 71#include <linux/ethtool.h>
72#include <linux/if_ether.h>
72 73
73#include <asm/abs_addr.h> 74#include <asm/abs_addr.h>
74#include <asm/iseries/mf.h> 75#include <asm/iseries/mf.h>
@@ -1035,11 +1036,22 @@ static struct ethtool_ops ops = {
1035 .get_link = veth_get_link, 1036 .get_link = veth_get_link,
1036}; 1037};
1037 1038
1038static struct net_device * __init veth_probe_one(int vlan, struct device *vdev) 1039static struct net_device * __init veth_probe_one(int vlan,
1040 struct vio_dev *vio_dev)
1039{ 1041{
1040 struct net_device *dev; 1042 struct net_device *dev;
1041 struct veth_port *port; 1043 struct veth_port *port;
1044 struct device *vdev = &vio_dev->dev;
1042 int i, rc; 1045 int i, rc;
1046 const unsigned char *mac_addr;
1047
1048 mac_addr = vio_get_attribute(vio_dev, "local-mac-address", NULL);
1049 if (mac_addr == NULL)
1050 mac_addr = vio_get_attribute(vio_dev, "mac-address", NULL);
1051 if (mac_addr == NULL) {
1052 veth_error("Unable to fetch MAC address from device tree.\n");
1053 return NULL;
1054 }
1043 1055
1044 dev = alloc_etherdev(sizeof (struct veth_port)); 1056 dev = alloc_etherdev(sizeof (struct veth_port));
1045 if (! dev) { 1057 if (! dev) {
@@ -1064,16 +1076,11 @@ static struct net_device * __init veth_probe_one(int vlan, struct device *vdev)
1064 } 1076 }
1065 port->dev = vdev; 1077 port->dev = vdev;
1066 1078
1067 dev->dev_addr[0] = 0x02; 1079 memcpy(dev->dev_addr, mac_addr, ETH_ALEN);
1068 dev->dev_addr[1] = 0x01;
1069 dev->dev_addr[2] = 0xff;
1070 dev->dev_addr[3] = vlan;
1071 dev->dev_addr[4] = 0xff;
1072 dev->dev_addr[5] = this_lp;
1073 1080
1074 dev->mtu = VETH_MAX_MTU; 1081 dev->mtu = VETH_MAX_MTU;
1075 1082
1076 memcpy(&port->mac_addr, dev->dev_addr, 6); 1083 memcpy(&port->mac_addr, mac_addr, ETH_ALEN);
1077 1084
1078 dev->open = veth_open; 1085 dev->open = veth_open;
1079 dev->hard_start_xmit = veth_start_xmit; 1086 dev->hard_start_xmit = veth_start_xmit;
@@ -1608,7 +1615,7 @@ static int veth_probe(struct vio_dev *vdev, const struct vio_device_id *id)
1608 struct net_device *dev; 1615 struct net_device *dev;
1609 struct veth_port *port; 1616 struct veth_port *port;
1610 1617
1611 dev = veth_probe_one(i, &vdev->dev); 1618 dev = veth_probe_one(i, vdev);
1612 if (dev == NULL) { 1619 if (dev == NULL) {
1613 veth_remove(vdev); 1620 veth_remove(vdev);
1614 return 1; 1621 return 1;
@@ -1641,7 +1648,7 @@ static int veth_probe(struct vio_dev *vdev, const struct vio_device_id *id)
1641 * support. 1648 * support.
1642 */ 1649 */
1643static struct vio_device_id veth_device_table[] __devinitdata = { 1650static struct vio_device_id veth_device_table[] __devinitdata = {
1644 { "vlan", "" }, 1651 { "network", "IBM,iSeries-l-lan" },
1645 { "", "" } 1652 { "", "" }
1646}; 1653};
1647MODULE_DEVICE_TABLE(vio, veth_device_table); 1654MODULE_DEVICE_TABLE(vio, veth_device_table);