Subject: Changing MAC addresses?
To: None <port-alpha@netbsd.org>
From: der Mouse <mouse@Rodents.Montreal.QC.CA>
List: port-alpha
Date: 06/15/2000 12:36:52
The system in question is an AlphaPC 164LX 533, with a 21140A-based de0
and a 3c905B-based ex0 (according to dmesg - full messages below).

I wish to cause one or both of those to run with a different MAC
address than its default.  (More specifically, I want the machine to
use the same MAC address on some subset of its interfaces.)  I'm
prepared to hack drivers as necessary...BUT...dev/pci/if_de.c is a maze
of twisty little function pointers, all different, and I'm not even
sure I've *found* the relevant driver files for the ex; it appears to
be scattered over at least three directories.  So what I'm looking for
is someone who knows those drivers enough to give me an initial hand
up, finding the appropriate place to wade in with a machete...anyone
willing and able?

					der Mouse

			       mouse@rodents.montreal.qc.ca
		     7D C8 61 52 5D E7 2D 39  4E F1 31 3E E8 B3 27 4B

Here's the full boot-time message stuff - the current boot kernel is
rather old; I'm presently working with 2000-02-19 sources.  (It's a
production machine, so moving to a new kernel too casually is somewhat
counterindicated.)

[ preserving 302808 bytes of netbsd ELF symbol table ]
consinit: not using prom console
Copyright (c) 1996, 1997, 1998, 1999
    The NetBSD Foundation, Inc.  All rights reserved.
Copyright (c) 1982, 1986, 1989, 1991, 1993
    The Regents of the University of California.  All rights reserved.

NetBSD 1.4 (OMEGA) #2: Mon Jul 26 12:01:53 EDT 1999
    mouse@Omega.McRCIM.McGill.EDU:/usr/src/sys/arch/alpha/compile/OMEGA
Digital AlphaPC 164LX 533 MHz, 531MHz
8192 byte page size, 1 processor.
real mem = 134217728 (1949696 reserved for PROM, 132268032 used by NetBSD)
avail mem = 112787456
using 1614 buffers containing 13221888 bytes of memory
mainbus0 (root)
cpu0 at mainbus0: ID 0 (primary), 21164A (pass 2)
cia0 at mainbus0: DECchip 2117x Core Logic Chipset (Pyxis), pass 1
cia0: extended capabilities: 1<BWEN>
cia0: using BWX for PCI config access
pci0 at cia0 bus 0
pci0: i/o enabled, memory enabled
de0 at pci0 dev 5 function 0
de0: interrupting at eb164 irq 2
de0: DEC DE500-AA 21140A [10-100Mb/s] pass 2.0
de0: address 00:00:f8:06:29:15
de0: enabling 100baseTX port
ex0 at pci0 dev 6 function 0: 3Com 3c905B-TX 10/100 Ethernet
ex0: interrupting at eb164 irq 0
ex0: MAC address 00:50:04:9b:4a:56
exphy0 at ex0 phy 24: 3Com internal media interface
exphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
sio0 at pci0 dev 8 function 0: Intel 82378ZB System I/O (SIO) (rev. 0x43)
ncr0 at pci0 dev 9 function 0: ncr 53c810 fast10 scsi
ncr0: interrupting at eb164 irq 3
ncr0: minsync=25, maxsync=206, maxoffs=8, 16 dwords burst, normal dma fifo
ncr0: single-ended, open drain IRQ driver
ncr0: restart (scsi reset).
scsibus0 at ncr0: 8 targets, 8 luns per target
sd0 at scsibus0 targ 0 lun 0: <SEAGATE, ST39140N, 1498> SCSI2 0/direct fixed
sd0(ncr0:0:0): 10.0 MB/s (100 ns, offset 8)
sd0: 8683MB, 9006 cyl, 8 head, 246 sec, 512 bytes/sect x 17783240 sectors
st0 at scsibus0 targ 2 lun 0: <EXABYTE, EXB-850085QANXRC, 06X0> SCSI2 1/sequential removable
st0: st0(ncr0:2:0): 4.0 MB/s (250 ns, offset 8)
drive empty
pciide0 at pci0 dev 11 function 0: CMD Technology PCI0646
pciide0: bus-master DMA support present
pciide0: primary channel wired to compatibility mode
wd0 at pciide0 channel 0 drive 0: <Maxtor 92048D8>
wd0: drive supports 16-sector pio transfers, lba addressing
wd0: 19531MB, 16383 cyl, 16 head, 63 sec, 512 bytes/sect x 40000464 sectors
wd0: 32-bits data port
wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 2
pciide0: secondary channel wired to compatibility mode
atapibus0 at pciide0 channel 1
cd0 at atapibus0 drive 1: <FX820S, , g01> type 5 cdrom removable
cd0: 32-bits data port
cd0: drive supports PIO mode 3, DMA mode 1
wd0(pciide0:0:0): using PIO mode 4, DMA mode 2 (using DMA data transfers)
cd0(pciide0:1:1): using PIO mode 3, DMA mode 1 (using DMA data transfers)
isa0 at sio0
com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo
com0: console
com1 at isa0 port 0x2f8-0x2ff irq 3: ns16550a, working fifo
lpt0 at isa0 port 0x3bc-0x3bf irq 7
pckbc0 at isa0 port 0x60-0x64
pcppi0 at isa0 port 0x61
spkr0 at pcppi0
isabeep0 at pcppi0
fdc0 at isa0 port 0x3f0-0x3f7 irq 6 drq 2
mcclock0 at isa0 port 0x70-0x71: mc146818 or compatible
root on sd0a dumps on sd0b