Lines Matching refs:ioaddr
341 static int read_eeprom(void __iomem *ioaddr, int location);
342 static int mdio_read(void __iomem *ioaddr, int phy_id, int location);
343 static void mdio_write(void __iomem *ioaddr, int phy_id, int location, int value);
378 void __iomem *ioaddr; in yellowfin_init_one() local
412 ioaddr = pci_iomap(pdev, bar, YELLOWFIN_SIZE); in yellowfin_init_one()
413 if (!ioaddr) in yellowfin_init_one()
420 dev->dev_addr[i] = ioread8(ioaddr + StnAddr + i); in yellowfin_init_one()
422 int ee_offset = (read_eeprom(ioaddr, 6) == 0xff ? 0x100 : 0); in yellowfin_init_one()
424 dev->dev_addr[i] = read_eeprom(ioaddr, ee_offset + i); in yellowfin_init_one()
428 iowrite32(0x80000000, ioaddr + DMACtrl); in yellowfin_init_one()
436 np->base = ioaddr; in yellowfin_init_one()
487 ioread32(ioaddr + ChipRev), ioaddr, in yellowfin_init_one()
493 int mii_status = mdio_read(ioaddr, phy, 1); in yellowfin_init_one()
496 np->advertising = mdio_read(ioaddr, phy, 4); in yellowfin_init_one()
516 pci_iounmap(pdev, ioaddr); in yellowfin_init_one()
524 static int read_eeprom(void __iomem *ioaddr, int location) in read_eeprom() argument
528 iowrite8(location, ioaddr + EEAddr); in read_eeprom()
529 iowrite8(0x30 | ((location >> 8) & 7), ioaddr + EECtrl); in read_eeprom()
530 while ((ioread8(ioaddr + EEStatus) & 0x80) && --bogus_cnt > 0) in read_eeprom()
532 return ioread8(ioaddr + EERead); in read_eeprom()
539 static int mdio_read(void __iomem *ioaddr, int phy_id, int location) in mdio_read() argument
543 iowrite16((phy_id<<8) + location, ioaddr + MII_Addr); in mdio_read()
544 iowrite16(1, ioaddr + MII_Cmd); in mdio_read()
546 if ((ioread16(ioaddr + MII_Status) & 1) == 0) in mdio_read()
548 return ioread16(ioaddr + MII_Rd_Data); in mdio_read()
551 static void mdio_write(void __iomem *ioaddr, int phy_id, int location, int value) in mdio_write() argument
555 iowrite16((phy_id<<8) + location, ioaddr + MII_Addr); in mdio_write()
556 iowrite16(value, ioaddr + MII_Wr_Data); in mdio_write()
560 if ((ioread16(ioaddr + MII_Status) & 1) == 0) in mdio_write()
569 void __iomem *ioaddr = yp->base; in yellowfin_open() local
573 iowrite32(0x80000000, ioaddr + DMACtrl); in yellowfin_open()
583 iowrite32(yp->rx_ring_dma, ioaddr + RxPtr); in yellowfin_open()
584 iowrite32(yp->tx_ring_dma, ioaddr + TxPtr); in yellowfin_open()
587 iowrite8(dev->dev_addr[i], ioaddr + StnAddr + i); in yellowfin_open()
591 iowrite32(0x00800080, ioaddr + TxIntrSel); /* Interrupt on Tx abort */ in yellowfin_open()
592 iowrite32(0x00800080, ioaddr + TxBranchSel); /* Branch on Tx abort */ in yellowfin_open()
593 iowrite32(0x00400040, ioaddr + TxWaitSel); /* Wait on Tx status */ in yellowfin_open()
594 iowrite32(0x00400040, ioaddr + RxIntrSel); /* Interrupt on Rx done */ in yellowfin_open()
595 iowrite32(0x00400040, ioaddr + RxBranchSel); /* Branch on Rx error */ in yellowfin_open()
596 iowrite32(0x00400040, ioaddr + RxWaitSel); /* Wait on Rx done */ in yellowfin_open()
600 iowrite32(dma_ctrl, ioaddr + DMACtrl); in yellowfin_open()
601 iowrite16(fifo_cfg, ioaddr + FIFOcfg); in yellowfin_open()
603 iowrite32(0x0030FFFF, ioaddr + FlowCtrl); in yellowfin_open()
606 iowrite32(yp->tx_threshold, ioaddr + TxThreshold); in yellowfin_open()
617 iowrite16(0x01CF, ioaddr + Cnfg); in yellowfin_open()
619 iowrite16(0x0018, ioaddr + FrameGap0); /* 0060/4060 for non-MII 10baseT */ in yellowfin_open()
620 iowrite16(0x1018, ioaddr + FrameGap1); in yellowfin_open()
621 iowrite16(0x101C | (yp->full_duplex ? 2 : 0), ioaddr + Cnfg); in yellowfin_open()
626 iowrite16(0x81ff, ioaddr + IntrEnb); /* See enum intr_status_bits */ in yellowfin_open()
627 iowrite16(0x0000, ioaddr + EventStatus); /* Clear non-interrupting events */ in yellowfin_open()
628 iowrite32(0x80008000, ioaddr + RxCtrl); /* Start Rx and Tx channels. */ in yellowfin_open()
629 iowrite32(0x80008000, ioaddr + TxCtrl); in yellowfin_open()
653 void __iomem *ioaddr = yp->base; in yellowfin_timer() local
658 ioread16(ioaddr + IntrStatus)); in yellowfin_timer()
662 int bmsr = mdio_read(ioaddr, yp->phys[0], MII_BMSR); in yellowfin_timer()
663 int lpa = mdio_read(ioaddr, yp->phys[0], MII_LPA); in yellowfin_timer()
671 iowrite16(0x101C | (yp->full_duplex ? 2 : 0), ioaddr + Cnfg); in yellowfin_timer()
686 void __iomem *ioaddr = yp->base; in yellowfin_tx_timeout() local
690 ioread32(ioaddr + TxStatus), in yellowfin_tx_timeout()
691 ioread32(ioaddr + RxStatus)); in yellowfin_tx_timeout()
893 void __iomem *ioaddr; in yellowfin_interrupt() local
898 ioaddr = yp->base; in yellowfin_interrupt()
903 u16 intr_status = ioread16(ioaddr + IntrClear); in yellowfin_interrupt()
915 iowrite32(0x10001000, ioaddr + RxCtrl); /* Wake Rx engine. */ in yellowfin_interrupt()
1028 ioread16(ioaddr + IntrStatus)); in yellowfin_interrupt()
1191 void __iomem *ioaddr = yp->base; in yellowfin_close() local
1198 ioread16(ioaddr + TxStatus), in yellowfin_close()
1199 ioread16(ioaddr + RxStatus), in yellowfin_close()
1200 ioread16(ioaddr + IntrStatus)); in yellowfin_close()
1207 iowrite16(0x0000, ioaddr + IntrEnb); in yellowfin_close()
1210 iowrite32(0x80000000, ioaddr + RxCtrl); in yellowfin_close()
1211 iowrite32(0x80000000, ioaddr + TxCtrl); in yellowfin_close()
1221 ioread32(ioaddr + TxPtr) == (long)&yp->tx_ring[i] ? '>' : ' ', in yellowfin_close()
1234 ioread32(ioaddr + RxPtr) == (long)&yp->rx_ring[i] ? '>' : ' ', in yellowfin_close()
1284 void __iomem *ioaddr = yp->base; in set_rx_mode() local
1285 u16 cfg_value = ioread16(ioaddr + Cnfg); in set_rx_mode()
1288 iowrite16(cfg_value & ~0x1000, ioaddr + Cnfg); in set_rx_mode()
1290 iowrite16(0x000F, ioaddr + AddrMode); in set_rx_mode()
1294 iowrite16(0x000B, ioaddr + AddrMode); in set_rx_mode()
1319 iowrite16(hash_table[i], ioaddr + HashTbl + i*2); in set_rx_mode()
1320 iowrite16(0x0003, ioaddr + AddrMode); in set_rx_mode()
1322 iowrite16(0x0001, ioaddr + AddrMode); in set_rx_mode()
1325 iowrite16(cfg_value | 0x1000, ioaddr + Cnfg); in set_rx_mode()
1344 void __iomem *ioaddr = np->base; in netdev_ioctl() local
1353 data->val_out = mdio_read(ioaddr, data->phy_id & 0x1f, data->reg_num & 0x1f); in netdev_ioctl()
1370 mdio_write(ioaddr, data->phy_id & 0x1f, data->reg_num & 0x1f, data->val_in); in netdev_ioctl()