Lines Matching full:ioaddr
55 * Function: smc_reset( int ioaddr )
70 static void smc_reset(int ioaddr)
74 SMC_SELECT_BANK(ioaddr, 0);
75 _outw( RCR_SOFTRESET, ioaddr + RCR );
78 SMC_DELAY(ioaddr);
82 _outw(RCR_CLEAR, ioaddr + RCR);
83 _outw(TCR_CLEAR, ioaddr + TCR);
86 SMC_SELECT_BANK(ioaddr, 2);
87 _outw( MC_RESET, ioaddr + MMU_CMD );
92 _outb(0, ioaddr + INT_MASK);
97 * Function: smc_probe( int ioaddr )
100 * Tests to see if a given ioaddr points to an SMC9xxx chip.
105 * (2) compare the ioaddr with the base register's address
110 static int smc_probe( int ioaddr )
117 bank = inw(ioaddr + BANK_SELECT);
123 _outw(0x0, ioaddr + BANK_SELECT);
124 bank = inw(ioaddr + BANK_SELECT);
132 SMC_SELECT_BANK(ioaddr, 1);
133 base_address_register = inw(ioaddr + BASE);
135 if (ioaddr != (base_address_register >> 3 & 0x3E0)) {
137 printf("SMC9000: IOADDR %hX doesn't match configuration (%hX)."
139 ioaddr, base_address_register >> 3 & 0x3E0);
150 SMC_SELECT_BANK(ioaddr, 3);
151 revision_register = inw(ioaddr + REVISION);
156 " %hX, Contact author.\n", ioaddr, revision_register);