/* SiS635 model, set MAC Reload Bit to load Mac address from APC to rfdr. rfdr is accessed through rfcr. MAC address is read into @net_dev->dev_addr.  */
static int __devinit sis635_get_mac_addr(struct pci_dev *pci_dev, struct net_device *net_dev)
/* SiS635 model, set MAC Reload Bit to load Mac address from APC to rfdr. rfdr is accessed through rfcr. MAC address is read into @net_dev->dev_addr.  */
static int __devinit sis635_get_mac_addr(struct pci_dev *pci_dev, struct net_device *net_dev)
{
	long ioaddr = net_dev->base_addr;
	u32 rfcrSave;
	u32 i;
	rfcrSave = inl(rfcr + ioaddr);
	outl(rfcrSave | RELOAD, ioaddr + cr);
	outl(0, ioaddr + cr);
	outl(rfcrSave & ~RFEN, rfcr + ioaddr);
	for (i = 0 ; i < 3 ; i++) {
		outl((i << RFADDR_shift), ioaddr + rfcr);
		*( ((u16 *)net_dev->dev_addr) + i) = inw(ioaddr + rfdr);
	}
	outl(rfcrSave | RFEN, rfcr + ioaddr);
	return 1;
}