Skip to contentSkip to conversation

8139too.c patch to allow setting of MAC address to actually work.

PATCH In review Ben Greear 2 participants 2 messages Jan 5, 2001 – Jan 11, 2001

lore
Share & tools
lore

Ben Greear

author
#0 lore raw

PATCH 1/1 8139too.c patch to allow setting of MAC address to actually work.

This was gleaned from conversations with Donald Becker w/regard
to why: ifconfig eth1 hw ether a:b:c:d:e:f
fails to work with the RTL drivers.

This fixes the problem, at least on my machine:

(The new line has ### in front of it..)

8139too.c, line 1229, from kernel 2.4.prerelease:

	/* Check that the chip has finished the reset. */
	for (i = 1000; i > 0; i--)
		if ((RTL_R8 (ChipCmd) & CmdReset) == 0)
			break;

	/* Restore our idea of the MAC address. */
###        RTL_W8_F  (Cfg9346, 0xC0); /* Fix provided by Becker */
	RTL_W32_F (MAC0 + 0, cpu_to_le32 (*(u32 *) (dev->dev_addr + 0)));
	RTL_W32_F (MAC0 + 4, cpu_to_le32 (*(u32 *) (dev->dev_addr + 4)));

The 2.2.18 driver is broken too, but I think Donald is going to send the fixes for it.

Thanks,
Ben

Signature · 7 lines
Ben Greear ([email protected])  http://www.candelatech.com
Author of ScryMUD:  scry.wanfear.com 4444        (Released under GPL)
http://scry.wanfear.com               http://scry.wanfear.com/~greear
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/
#1 lore raw
Quoted 21 lines · Ben Greear

This was gleaned from conversations with Donald Becker w/regard
to why: ifconfig eth1 hw ether a:b:c:d:e:f
fails to work with the RTL drivers.

This fixes the problem, at least on my machine:

(The new line has ### in front of it..)

8139too.c, line 1229, from kernel 2.4.prerelease:

        /* Check that the chip has finished the reset. */
        for (i = 1000; i > 0; i--)
                if ((RTL_R8 (ChipCmd) & CmdReset) == 0)
                        break;

        /* Restore our idea of the MAC address. */
###        RTL_W8_F  (Cfg9346, 0xC0); /* Fix provided by Becker */
        RTL_W32_F (MAC0 + 0, cpu_to_le32 (*(u32 *) (dev->dev_addr + 0)));
        RTL_W32_F (MAC0 + 4, cpu_to_le32 (*(u32 *) (dev->dev_addr + 4)));
Quoted 2 lines

The 2.2.18 driver is broken too, but I think Donald is going to send the fixes for it.

I have updated 8139too to include this and other changes. The new version can be downloaded from the SourceForge project page
(http://sourceforge.net/projects/gkernel/), and hopefully it should show up in a release kernel eventually...

Jeff

Signature · 7 lines
Jeff Garzik       | "You see, in this world there's two kinds of
Building 1024     |  people, my friend: Those with loaded guns
MandrakeSoft      |  and those who dig. You dig."  --Blondie
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/