Lines Matching refs:INF_3C90X
250 INF_3C90X; variable
282 if (INF_3C90X.CurrentWindow == window) return 0; in a3c90x_internal_SetWindow()
286 INF_3C90X.CurrentWindow = window; in a3c90x_internal_SetWindow()
300 a3c90x_internal_SetWindow(INF_3C90X.IOAddr, winEepromBios0); in a3c90x_internal_ReadEeprom()
359 if (INF_3C90X.isBrev) in a3c90x_internal_WriteEeprom()
403 a3c90x_internal_SetWindow(INF_3C90X.IOAddr, winTxRxOptions3); in a3c90x_reset()
404 cfg = inl(INF_3C90X.IOAddr + regInternalConfig_3_l); in a3c90x_reset()
409 a3c90x_internal_IssueCommand(INF_3C90X.IOAddr, cmdGlobalReset, 0); in a3c90x_reset()
412 while (inw(INF_3C90X.IOAddr + regCommandIntStatus_w) & INT_CMDINPROGRESS); in a3c90x_reset()
417 a3c90x_internal_SetWindow(INF_3C90X.IOAddr, winAddressing2); in a3c90x_reset()
418 outw(0, INF_3C90X.IOAddr + regStationMask_2_3w+0); in a3c90x_reset()
419 outw(0, INF_3C90X.IOAddr + regStationMask_2_3w+2); in a3c90x_reset()
420 outw(0, INF_3C90X.IOAddr + regStationMask_2_3w+4); in a3c90x_reset()
424 a3c90x_internal_SetWindow(INF_3C90X.IOAddr, winTxRxOptions3); in a3c90x_reset()
425 outl(cfg, INF_3C90X.IOAddr + regInternalConfig_3_l); in a3c90x_reset()
430 a3c90x_internal_IssueCommand(INF_3C90X.IOAddr, cmdEnableDcConverter, 0); in a3c90x_reset()
435 a3c90x_internal_IssueCommand(INF_3C90X.IOAddr, cmdTxReset, 0); in a3c90x_reset()
436 while (inw(INF_3C90X.IOAddr + regCommandIntStatus_w) & INT_CMDINPROGRESS) in a3c90x_reset()
438 if (! INF_3C90X.isBrev) in a3c90x_reset()
439 outb(0x01, INF_3C90X.IOAddr + regTxFreeThresh_b); in a3c90x_reset()
440 a3c90x_internal_IssueCommand(INF_3C90X.IOAddr, cmdTxEnable, 0); in a3c90x_reset()
446 if (INF_3C90X.isBrev) in a3c90x_reset()
447 a3c90x_internal_IssueCommand(INF_3C90X.IOAddr, cmdRxReset, 0x04); in a3c90x_reset()
449 a3c90x_internal_IssueCommand(INF_3C90X.IOAddr, cmdRxReset, 0x00); in a3c90x_reset()
450 while (inw(INF_3C90X.IOAddr + regCommandIntStatus_w) & INT_CMDINPROGRESS); in a3c90x_reset()
452 a3c90x_internal_IssueCommand(INF_3C90X.IOAddr, cmdRxEnable, 0); in a3c90x_reset()
454 a3c90x_internal_IssueCommand(INF_3C90X.IOAddr, in a3c90x_reset()
457 a3c90x_internal_IssueCommand(INF_3C90X.IOAddr, in a3c90x_reset()
460 a3c90x_internal_IssueCommand(INF_3C90X.IOAddr, in a3c90x_reset()
493 a3c90x_internal_IssueCommand(INF_3C90X.IOAddr, cmdStallCtl, 2); in a3c90x_transmit()
496 inw(INF_3C90X.IOAddr + regCommandIntStatus_w); in a3c90x_transmit()
497 inw(INF_3C90X.IOAddr + regCommandIntStatus_w); in a3c90x_transmit()
499 while (inw(INF_3C90X.IOAddr+regCommandIntStatus_w) & in a3c90x_transmit()
510 memcpy(hdr.src_addr, INF_3C90X.HWAddr, ETH_ALEN); in a3c90x_transmit()
513 INF_3C90X.TransmitDPD.DnNextPtr = 0; in a3c90x_transmit()
515 INF_3C90X.TransmitDPD.FrameStartHeader = (s + sizeof(hdr)) | 0x8000; in a3c90x_transmit()
516 INF_3C90X.TransmitDPD.HdrAddr = virt_to_bus(&hdr); in a3c90x_transmit()
517 INF_3C90X.TransmitDPD.HdrLength = sizeof(hdr); in a3c90x_transmit()
518 INF_3C90X.TransmitDPD.DataAddr = virt_to_bus(p); in a3c90x_transmit()
519 INF_3C90X.TransmitDPD.DataLength = s + (1<<31); in a3c90x_transmit()
522 outl(virt_to_bus(&(INF_3C90X.TransmitDPD)), in a3c90x_transmit()
523 INF_3C90X.IOAddr + regDnListPtr_l); in a3c90x_transmit()
526 a3c90x_internal_IssueCommand(INF_3C90X.IOAddr, cmdStallCtl, 3); in a3c90x_transmit()
527 while(inl(INF_3C90X.IOAddr + regDnListPtr_l) != 0) in a3c90x_transmit()
532 while (!(inw(INF_3C90X.IOAddr + regCommandIntStatus_w)&0x0004) && in a3c90x_transmit()
536 if (!(inw(INF_3C90X.IOAddr + regCommandIntStatus_w)&0x0004)) in a3c90x_transmit()
542 status = inb(INF_3C90X.IOAddr + regTxStatus_b); in a3c90x_transmit()
545 outb(0x00, INF_3C90X.IOAddr + regTxStatus_b); in a3c90x_transmit()
562 outb(0x00, INF_3C90X.IOAddr + regTxStatus_b); in a3c90x_transmit()
564 a3c90x_internal_IssueCommand(INF_3C90X.IOAddr, cmdTxEnable, 0); in a3c90x_transmit()
570 a3c90x_internal_IssueCommand(INF_3C90X.IOAddr, cmdTxEnable, 0); in a3c90x_transmit()
608 if (!(inw(INF_3C90X.IOAddr + regCommandIntStatus_w)&0x0010)) in a3c90x_poll()
618 INF_3C90X.ReceiveUPD.UpNextPtr = 0; in a3c90x_poll()
619 INF_3C90X.ReceiveUPD.UpPktStatus = 0; in a3c90x_poll()
620 INF_3C90X.ReceiveUPD.DataAddr = virt_to_bus(nic->packet); in a3c90x_poll()
621 INF_3C90X.ReceiveUPD.DataLength = 1536 + (1<<31); in a3c90x_poll()
624 outl(virt_to_bus(&(INF_3C90X.ReceiveUPD)), in a3c90x_poll()
625 INF_3C90X.IOAddr + regUpListPtr_l); in a3c90x_poll()
629 while((INF_3C90X.ReceiveUPD.UpPktStatus & ((1<<14) | (1<<15))) == 0) in a3c90x_poll()
633 if (INF_3C90X.ReceiveUPD.UpPktStatus & (1<<14)) in a3c90x_poll()
635 errcode = INF_3C90X.ReceiveUPD.UpPktStatus; in a3c90x_poll()
652 nic->packetlen = (INF_3C90X.ReceiveUPD.UpPktStatus & 0x1FFF); in a3c90x_poll()
669 outw(cmdRxDisable, INF_3C90X.IOAddr + regCommandIntStatus_w); in a3c90x_disable()
670 outw(cmdTxDisable, INF_3C90X.IOAddr + regCommandIntStatus_w); in a3c90x_disable()
693 INF_3C90X.IOAddr = probeaddrs[0] & ~3; in a3c90x_probe()
694 INF_3C90X.CurrentWindow = 255; in a3c90x_probe()
695 switch (a3c90x_internal_ReadEeprom(INF_3C90X.IOAddr, 0x03)) in a3c90x_probe()
701 INF_3C90X.isBrev = 0; in a3c90x_probe()
712 INF_3C90X.isBrev = 1; in a3c90x_probe()
717 if (INF_3C90X.isBrev) in a3c90x_probe()
721 eeprom[i] = a3c90x_internal_ReadEeprom(INF_3C90X.IOAddr, i); in a3c90x_probe()
727 a3c90x_internal_WriteEeprom(INF_3C90X.IOAddr, 0x13, 0x0160); in a3c90x_probe()
734 a3c90x_internal_WriteEeprom(INF_3C90X.IOAddr, 0x16, 0); in a3c90x_probe()
741 a3c90x_internal_WriteEeprom(INF_3C90X.IOAddr, 0x16, in a3c90x_probe()
750 eeprom[i] = a3c90x_internal_ReadEeprom(INF_3C90X.IOAddr, i); in a3c90x_probe()
763 INF_3C90X.HWAddr[0] = eeprom[0]>>8; in a3c90x_probe()
764 INF_3C90X.HWAddr[1] = eeprom[0]&0xFF; in a3c90x_probe()
765 INF_3C90X.HWAddr[2] = eeprom[1]>>8; in a3c90x_probe()
766 INF_3C90X.HWAddr[3] = eeprom[1]&0xFF; in a3c90x_probe()
767 INF_3C90X.HWAddr[4] = eeprom[2]>>8; in a3c90x_probe()
768 INF_3C90X.HWAddr[5] = eeprom[2]&0xFF; in a3c90x_probe()
769 printf("MAC Address = %!\n", INF_3C90X.HWAddr); in a3c90x_probe()
772 a3c90x_internal_SetWindow(INF_3C90X.IOAddr, winAddressing2); in a3c90x_probe()
773 outw(htons(eeprom[0]), INF_3C90X.IOAddr + regStationAddress_2_3w); in a3c90x_probe()
774 outw(htons(eeprom[1]), INF_3C90X.IOAddr + regStationAddress_2_3w+2); in a3c90x_probe()
775 outw(htons(eeprom[2]), INF_3C90X.IOAddr + regStationAddress_2_3w+4); in a3c90x_probe()
776 outw(0, INF_3C90X.IOAddr + regStationMask_2_3w+0); in a3c90x_probe()
777 outw(0, INF_3C90X.IOAddr + regStationMask_2_3w+2); in a3c90x_probe()
778 outw(0, INF_3C90X.IOAddr + regStationMask_2_3w+4); in a3c90x_probe()
790 a3c90x_internal_SetWindow(INF_3C90X.IOAddr, winTxRxOptions3); in a3c90x_probe()
791 mopt = inw(INF_3C90X.IOAddr + regResetMediaOptions_3_w); in a3c90x_probe()
794 if (! INF_3C90X.isBrev) in a3c90x_probe()
847 if (INF_3C90X.isBrev) in a3c90x_probe()
865 if (INF_3C90X.isBrev) in a3c90x_probe()
875 a3c90x_internal_IssueCommand(INF_3C90X.IOAddr, cmdEnableDcConverter, 0); in a3c90x_probe()
879 a3c90x_internal_SetWindow(INF_3C90X.IOAddr, winTxRxOptions3); in a3c90x_probe()
880 cfg = inl(INF_3C90X.IOAddr + regInternalConfig_3_l); in a3c90x_probe()
883 outl(cfg, INF_3C90X.IOAddr + regInternalConfig_3_l); in a3c90x_probe()
886 a3c90x_internal_IssueCommand(INF_3C90X.IOAddr, cmdTxReset, 0x00); in a3c90x_probe()
887 while (inw(INF_3C90X.IOAddr + regCommandIntStatus_w) & INT_CMDINPROGRESS) in a3c90x_probe()
890 if (!INF_3C90X.isBrev) in a3c90x_probe()
891 outb(0x01, INF_3C90X.IOAddr + regTxFreeThresh_b); in a3c90x_probe()
893 a3c90x_internal_IssueCommand(INF_3C90X.IOAddr, cmdTxEnable, 0); in a3c90x_probe()
899 if (INF_3C90X.isBrev) in a3c90x_probe()
900 a3c90x_internal_IssueCommand(INF_3C90X.IOAddr, cmdRxReset, 0x04); in a3c90x_probe()
902 a3c90x_internal_IssueCommand(INF_3C90X.IOAddr, cmdRxReset, 0x00); in a3c90x_probe()
903 while (inw(INF_3C90X.IOAddr + regCommandIntStatus_w) & INT_CMDINPROGRESS) in a3c90x_probe()
907 a3c90x_internal_IssueCommand(INF_3C90X.IOAddr, cmdSetRxFilter, 0x01 + 0x04); in a3c90x_probe()
908 a3c90x_internal_IssueCommand(INF_3C90X.IOAddr, cmdRxEnable, 0); in a3c90x_probe()
914 a3c90x_internal_IssueCommand(INF_3C90X.IOAddr, cmdSetInterruptEnable, 0); in a3c90x_probe()
915 a3c90x_internal_IssueCommand(INF_3C90X.IOAddr, in a3c90x_probe()
917 a3c90x_internal_IssueCommand(INF_3C90X.IOAddr, in a3c90x_probe()