--- linux-2.6.18/drivers/usb/net/pegasus.c	2007-03-07 15:56:00.000000000 +0200
+++ linux-2.6.18/drivers/usb/net/pegasus.c	2007-03-07 16:08:48.000000000 +0200
@@ -480,8 +480,11 @@
 static void set_ethernet_addr(pegasus_t * pegasus)
 {
 	__u8 node_id[6];
-
-	get_node_id(pegasus, node_id);
-	set_registers(pegasus, EthID, sizeof (node_id), node_id);
+	if (pegasus->features & PEGASUS_II) {
+		get_registers(pegasus, 0x10, sizeof(node_id), node_id);
+	} else {
+		get_node_id(pegasus, node_id);
+		set_registers(pegasus, EthID, sizeof (node_id), node_id);
+	}
 	memcpy(pegasus->net->dev_addr, node_id, sizeof (node_id));
 }
