ENC_NODMA
ether_outb(data, EN_CCMD, ENC_NODMA | ENC_TRANS);
ether_outb(data, EN_CCMD, ENC_NODMA);
ether_outb(data, EN_CCMD, ENC_NODMA | ENC_STOP | ENC_PAGE0);
ether_outb(data, EN_CCMD, ENC_NODMA | ENC_STOP | ENC_PAGE0);
if (reg != (ENC_NODMA|ENC_STOP|ENC_PAGE0)) {
dprintf("command register failed: %02x != %02x\n", reg, ENC_NODMA|ENC_STOP);
ether_outb(data, EN_CCMD, ENC_NODMA | ENC_PAGE1 | ENC_STOP);
ether_outb(data, EN_CCMD, ENC_NODMA | ENC_PAGE0 | ENC_STOP);
ether_outb(data, EN_CCMD, ENC_NODMA | ENC_PAGE0);
ether_outb(data, EN_CCMD, ENC_NODMA | ENC_STOP);
ether_outb(data, EN_CCMD, ENC_NODMA | ENC_PAGE1);
ether_outb(data, EN_CCMD, ENC_START | ENC_PAGE0 | ENC_NODMA);
ether_outb(data, EN_CCMD, ENC_STOP | ENC_NODMA);
ether_outb(data, EN_CCMD, ENC_START | ENC_PAGE0 | ENC_NODMA);
ether_outb(data, EN_CCMD, ENC_START | ENC_PAGE0 | ENC_NODMA | ENC_TRANS);