[Scottish] What's up MAC?

Martin McCarthy scottish at mailman.lug.org.uk
Mon Mar 10 10:18:02 2003

> Anybody know which NICs have programmable MAC addresses? Preferably 
> configurable  under Windows as well as Linux. Extra browny points will 
> be awarded for cheapness ;)

No idea about Windows or prices, but:

$ grep '\<MAC\>' linux-2.5.64/drivers/net/*.c |grep -i set
linux-2.5.64/drivers/net/acenic.c: * Set the hardware MAC address.
linux-2.5.64/drivers/net/amd8111e.c:    /* Setting the MAC address to the device */
linux-2.5.64/drivers/net/b44.c: /* This sets the MAC address too.  */
linux-2.5.64/drivers/net/cs89x0.c:              printk("%s: Setting MAC address to ", dev->name);
linux-2.5.64/drivers/net/defxx.c:        * Set current address to factory MAC address
linux-2.5.64/drivers/net/defxx.c:               DBG_printk("%s: Could not set new MAC address!\n", dev->name);
linux-2.5.64/drivers/net/dl2k.c:        /* Set MAC address */
linux-2.5.64/drivers/net/eepro100.c:               usable, especially if the MAC address is set la ter.
linux-2.5.64/drivers/net/ewrk3.c:       ** Set hardware MAC address.  Address is initialized from t he EEPROM
linux-2.5.64/drivers/net/fec.c:/* Set a MAC change in hardware.
linux-2.5.64/drivers/net/hamachi.c:     writew(0x8000, ioaddr + MACCnfg); /* Soft reset the MAC */
linux-2.5.64/drivers/net/hp100.c: * mmuinit - Reinitialise Cascade MMU and MAC settings.
linux-2.5.64/drivers/net/hp100.c:       /* Set up MAC defaults */
linux-2.5.64/drivers/net/hp100.c:                       printk("hp100: %s: 100VG MAC settings have changed - relogin.\n", dev->name);
linux-2.5.64/drivers/net/hp100.c: printk("hp100: %s: 100VG MAC setti ngs have changed - relogin.\n", dev->name);
linux-2.5.64/drivers/net/hp100.c:        * TX_ERROR is set when a TX_ABORT condition occurs in the MAC->exists  
linux-2.5.64/drivers/net/hp100.c:       /* Enable MAC Tx and RX, set MAC modes, ... */
linux-2.5.64/drivers/net/hp100.c:               /* Reset VG MAC to insure it leaves the logoff sta te even if */
linux-2.5.64/drivers/net/hp100.c:        * bit is zero or the force relogin flag is set (e.g. due to MAC address or
linux-2.5.64/drivers/net/mac89x0.c:     printk("%s: Setting MAC address to ", dev->name);
linux-2.5.64/drivers/net/natsemi.c:     /* now set the MAC address according to dev->dev_addr */
linux-2.5.64/drivers/net/rclanmtl.c:** set MAC address the adapter is listening for in non-promisc ous mode.
linux-2.5.64/drivers/net/saa9730.c:     /* Set the SW Reset bits in DMA and MAC control registers */
linux-2.5.64/drivers/net/saa9730.c:      * Wait for MAC reset to have finished. The reset bit is a uto cleared
linux-2.5.64/drivers/net/saa9730.c:                         ("Error: lan_sa9730_stop: MAC reset ti meout\n");
linux-2.5.64/drivers/net/sb1250-mac.c: *           speed - speed to set MAC to (see sbmac_speed_t enum)
linux-2.5.64/drivers/net/sb1250-mac.c: *  Set Ethernet duplex and flow control options for this MA C
linux-2.5.64/drivers/net/sb1250-mac.c:   * those who have their MAC addresses set.
linux-2.5.64/drivers/net/sis900.c: *    SiS635 model, set MAC Reload Bit to load Mac address from APC
linux-2.5.64/drivers/net/sis900.c: *    Set receive filter address to our MAC address
linux-2.5.64/drivers/net/sis900.c: *    sis900_reset: - Reset sis900 MAC 
linux-2.5.64/drivers/net/sis900.c: *    reset sis900 MAC and wait until finished
linux-2.5.64/drivers/net/sungem.c:      /* First, reset MAC RX. */
linux-2.5.64/drivers/net/sungem.c:              printk(KERN_ERR "%s: RX MAC will not disable, rese tting whole "
linux-2.5.64/drivers/net/sungem.c:      /* Clear RX/TX/MAC/XIF config, we will set these up and en able
linux-2.5.64/drivers/net/sungem.c:      /* Setup MAC interrupts.  We want to get all of the intere sting
linux-2.5.64/drivers/net/sunhme.c:MODULE_PARM_DESC(macaddr, "Happy Meal MAC address to set");

Martin McCarthy                 /</         http://www.non-prophet.org
marty@ancient-scotland.co.uk    \>\  http://www.ancient-scotland.co.uk
                                /</    http://www.ehabitat.demon.co.uk