drivers/net/sunhme.c patch

Previous thread: [PATCH v4 0/2] [SCSI] Asynchronous event notification infrastructure by Jeff Garzik on Monday, October 29, 2007 - 7:42 am. (14 messages)

Next thread: Re: 2.6.24-rc1: hangs when logging in to X session by Marcus Better on Monday, October 29, 2007 - 8:13 am. (6 messages)
From: Tom Southerland
Date: Monday, October 29, 2007 - 7:54 am

This patch provides a unique mac address for all interfaces
for the Sun QFE card (non-sparc).  It takes the base mac from
the first interface and increments the mac address for the
other interfaces.

It still preserves the 'macaddr' parameter so if desired, it
can still be used.

Before patching:

eth0      Link encap:Ethernet  HWaddr 00:03:BA:17:4C:BB
eth1      Link encap:Ethernet  HWaddr 00:03:BA:17:4C:BB
eth2      Link encap:Ethernet  HWaddr 00:03:BA:17:4C:BB
eth3      Link encap:Ethernet  HWaddr 00:03:BA:17:4C:BB

After patching:

eth0      Link encap:Ethernet  HWaddr 00:03:BA:17:4C:BB
eth1      Link encap:Ethernet  HWaddr 00:03:BA:17:4C:BC
eth2      Link encap:Ethernet  HWaddr 00:03:BA:17:4C:BD
eth3      Link encap:Ethernet  HWaddr 00:03:BA:17:4C:BE

Cheers,

Tom



--- linux-2.6.23.1/drivers/net/sunhme.c.orig    2007-10-29 07:58:25.000000000 -0600
+++ linux-2.6.23.1/drivers/net/sunhme.c 2007-10-29 08:53:03.000000000 -0600
@@ -3083,6 +3083,11 @@ static int __devinit happy_meal_pci_prob
                 }
  #else
                 get_hme_mac_nonsparc(pdev, &dev->dev_addr[0]);
+                if(macaddr[5] == 0){
+                 for (i = 0; i < 6; i++)
+                       macaddr[i] = dev->dev_addr[i];
+                 macaddr[5]++;
+                }
  #endif
         }

-

From: Jan Engelhardt
Date: Monday, October 29, 2007 - 8:11 am

Where is the difference to a SPARC QFE? PCI is PCI after all, is not it?
-

From: David Miller
Date: Monday, October 29, 2007 - 3:10 pm

From: Jan Engelhardt <jengelh@computergmbh.de>

This is exactly why I wish this patch had been posted to
netdev@vger.kernel.org, now we have a dialogue going and even if I add
netdev to the CC: now, you can't follow it completely as a netdev
subscriber without going to the lkml archives.

To answer the question, yes it is just a normal PCI device, they put 4
HME chips behind a PCI bridge.  However, the OpenFirmware on the cards
usually creates device node properties for these PCI devices for the
local ethernet addresses.  That's what he's trying to duplicate here.
-

From: Jan Engelhardt
Date: Monday, October 29, 2007 - 3:12 pm

The question was more like: if I put in a QFE (that was acquired together
with a SUN E250) into x86, would I get duplicate MACs? (Would be strange -
I would have supposed the OF on the card is independent.)

-

From: David Miller
Date: Monday, October 29, 2007 - 3:41 pm

From: Jan Engelhardt <jengelh@computergmbh.de>

You are not supposed to.  Each HME instance should get a unique
MAC.

Normally OF would propagate this information around to the independant
device nodes, and we should try to preserve this behavior for non-OF
systems.
-

From: David Miller
Date: Monday, October 29, 2007 - 3:07 pm

From: Tom Southerland <toms@wonderland.us.com>

Could you please post this to netdev@vger.kernel.org which is
where networking patches should go?

Thank you.
-

Previous thread: [PATCH v4 0/2] [SCSI] Asynchronous event notification infrastructure by Jeff Garzik on Monday, October 29, 2007 - 7:42 am. (14 messages)

Next thread: Re: 2.6.24-rc1: hangs when logging in to X session by Marcus Better on Monday, October 29, 2007 - 8:13 am. (6 messages)