/* Unlike newer cards, the MC16/32 have their speed selection circuit connected to the Madge ASICs and not to the TMS380 NSELOUT pins. Set the ASIC bits correctly here, and return zero to leave the TMS NSELOUT bits unaffected.  */
static unsigned short madgemc_setnselout_pins(struct net_device *dev)
/* Unlike newer cards, the MC16/32 have their speed selection circuit connected to the Madge ASICs and not to the TMS380 NSELOUT pins. Set the ASIC bits correctly here, and return zero to leave the TMS NSELOUT bits unaffected.  */
static unsigned short madgemc_setnselout_pins(struct net_device *dev)
{
	unsigned char reg1;
	struct net_local *tp = netdev_priv(dev);
	reg1 = inb(dev->base_addr + MC_CONTROL_REG1);
	if(tp->DataRate == SPEED_16)
		reg1 |= MC_CONTROL_REG1_SPEED_SEL;
	else if (reg1 & MC_CONTROL_REG1_SPEED_SEL)
		reg1 ^= MC_CONTROL_REG1_SPEED_SEL;
	outb(reg1, dev->base_addr + MC_CONTROL_REG1);
	return 0;
}