Lines Matching defs:lp

244 	struct r6040_private *lp = netdev_priv(dev);
245 void __iomem *ioaddr = lp->base;
254 struct r6040_private *lp = netdev_priv(dev);
255 void __iomem *ioaddr = lp->base;
262 struct r6040_private *lp = netdev_priv(dev);
266 if (lp->tx_insert_ptr->skb_ptr) {
267 dma_unmap_single(&lp->pdev->dev,
268 le32_to_cpu(lp->tx_insert_ptr->buf),
270 dev_kfree_skb(lp->tx_insert_ptr->skb_ptr);
271 lp->tx_insert_ptr->skb_ptr = NULL;
273 lp->tx_insert_ptr = lp->tx_insert_ptr->vndescp;
279 struct r6040_private *lp = netdev_priv(dev);
283 if (lp->rx_insert_ptr->skb_ptr) {
284 dma_unmap_single(&lp->pdev->dev,
285 le32_to_cpu(lp->rx_insert_ptr->buf),
287 dev_kfree_skb(lp->rx_insert_ptr->skb_ptr);
288 lp->rx_insert_ptr->skb_ptr = NULL;
290 lp->rx_insert_ptr = lp->rx_insert_ptr->vndescp;
313 struct r6040_private *lp = netdev_priv(dev);
315 lp->tx_free_desc = TX_DCNT;
317 lp->tx_remove_ptr = lp->tx_insert_ptr = lp->tx_ring;
318 r6040_init_ring_desc(lp->tx_ring, lp->tx_ring_dma, TX_DCNT);
323 struct r6040_private *lp = netdev_priv(dev);
328 lp->rx_remove_ptr = lp->rx_insert_ptr = lp->rx_ring;
329 r6040_init_ring_desc(lp->rx_ring, lp->rx_ring_dma, RX_DCNT);
332 desc = lp->rx_ring;
340 desc->buf = cpu_to_le32(dma_map_single(&lp->pdev->dev,
346 } while (desc != lp->rx_ring);
356 static void r6040_reset_mac(struct r6040_private *lp)
358 void __iomem *ioaddr = lp->base;
382 struct r6040_private *lp = netdev_priv(dev);
383 void __iomem *ioaddr = lp->base;
389 r6040_reset_mac(lp);
398 iowrite16(lp->tx_ring_dma, ioaddr + MTD_SA0);
399 iowrite16(lp->tx_ring_dma >> 16, ioaddr + MTD_SA1);
402 iowrite16(lp->rx_ring_dma, ioaddr + MRD_SA0);
403 iowrite16(lp->rx_ring_dma >> 16, ioaddr + MRD_SA1);
413 iowrite16(lp->mcr0 | MCR0_RCVEN, ioaddr);
454 struct r6040_private *lp = netdev_priv(dev);
455 void __iomem *ioaddr = lp->base;
462 r6040_reset_mac(lp);
473 struct r6040_private *lp = netdev_priv(dev);
474 struct pci_dev *pdev = lp->pdev;
477 napi_disable(&lp->napi);
480 spin_lock_irq(&lp->lock);
489 spin_unlock_irq(&lp->lock);
494 if (lp->rx_ring) {
495 dma_free_coherent(&pdev->dev, RX_DESC_SIZE, lp->rx_ring,
496 lp->rx_ring_dma);
497 lp->rx_ring = NULL;
500 if (lp->tx_ring) {
501 dma_free_coherent(&pdev->dev, TX_DESC_SIZE, lp->tx_ring,
502 lp->tx_ring_dma);
503 lp->tx_ring = NULL;
650 struct r6040_private *lp = netdev_priv(dev);
651 void __iomem *ioaddr = lp->base;
677 if (likely(napi_schedule_prep(&lp->napi))) {
680 __napi_schedule_irqoff(&lp->napi);
702 struct r6040_private *lp = netdev_priv(dev);
703 void __iomem *ioaddr = lp->base;
732 struct r6040_private *lp = netdev_priv(dev);
733 void __iomem *ioaddr = lp->base;
737 r6040_reset_mac(lp);
748 struct r6040_private *lp = netdev_priv(dev);
761 lp->rx_ring =
762 dma_alloc_coherent(&lp->pdev->dev, RX_DESC_SIZE,
763 &lp->rx_ring_dma, GFP_KERNEL);
764 if (!lp->rx_ring) {
769 lp->tx_ring =
770 dma_alloc_coherent(&lp->pdev->dev, TX_DESC_SIZE,
771 &lp->tx_ring_dma, GFP_KERNEL);
772 if (!lp->tx_ring) {
781 napi_enable(&lp->napi);
787 dma_free_coherent(&lp->pdev->dev, TX_DESC_SIZE, lp->tx_ring,
788 lp->tx_ring_dma);
790 dma_free_coherent(&lp->pdev->dev, RX_DESC_SIZE, lp->rx_ring,
791 lp->rx_ring_dma);
801 struct r6040_private *lp = netdev_priv(dev);
803 void __iomem *ioaddr = lp->base;
810 spin_lock_irqsave(&lp->lock, flags);
813 if (!lp->tx_free_desc) {
814 spin_unlock_irqrestore(&lp->lock, flags);
821 lp->tx_free_desc--;
822 descptr = lp->tx_insert_ptr;
825 descptr->buf = cpu_to_le32(dma_map_single(&lp->pdev->dev, skb->data,
834 lp->tx_insert_ptr = descptr->vndescp;
837 if (!lp->tx_free_desc)
840 spin_unlock_irqrestore(&lp->lock, flags);
847 struct r6040_private *lp = netdev_priv(dev);
848 void __iomem *ioaddr = lp->base;
855 spin_lock_irqsave(&lp->lock, flags);
864 lp->mcr0 = ioread16(ioaddr + MCR0) & ~(MCR0_PROMISC | MCR0_HASH_EN);
868 lp->mcr0 |= MCR0_PROMISC;
873 lp->mcr0 |= MCR0_HASH_EN;
906 lp->mcr0 |= MCR0_HASH_EN;
924 iowrite16(lp->mcr0, ioaddr + MCR0);
927 if (lp->mcr0 & MCR0_HASH_EN) {
934 spin_unlock_irqrestore(&lp->lock, flags);
973 struct r6040_private *lp = netdev_priv(dev);
976 void __iomem *ioaddr = lp->base;
980 if (lp->old_link != phydev->link) {
982 lp->old_link = phydev->link;
986 if (phydev->link && (lp->old_duplex != phydev->duplex)) {
987 lp->mcr0 |= (phydev->duplex == DUPLEX_FULL ? MCR0_FD : 0);
988 iowrite16(lp->mcr0, ioaddr);
991 lp->old_duplex = phydev->duplex;
1000 struct r6040_private *lp = netdev_priv(dev);
1003 phydev = phy_find_first(lp->mii_bus);
1005 dev_err(&lp->pdev->dev, "no PHY found\n");
1013 dev_err(&lp->pdev->dev, "could not attach to PHY\n");
1019 lp->old_link = 0;
1020 lp->old_duplex = -1;
1030 struct r6040_private *lp;
1070 lp = netdev_priv(dev);
1096 lp->base = ioaddr;
1099 spin_lock_init(&lp->lock);
1119 lp->pdev = pdev;
1120 lp->dev = dev;
1123 lp->mcr0 = MCR0_XMTEN | MCR0_RCVEN;
1130 netif_napi_add(dev, &lp->napi, r6040_poll);
1132 lp->mii_bus = mdiobus_alloc();
1133 if (!lp->mii_bus) {
1139 lp->mii_bus->priv = dev;
1140 lp->mii_bus->read = r6040_mdiobus_read;
1141 lp->mii_bus->write = r6040_mdiobus_write;
1142 lp->mii_bus->name = "r6040_eth_mii";
1143 snprintf(lp->mii_bus->id, MII_BUS_ID_SIZE, "%s-%x",
1146 err = mdiobus_register(lp->mii_bus);
1169 mdiobus_unregister(lp->mii_bus);
1171 mdiobus_free(lp->mii_bus);
1173 netif_napi_del(&lp->napi);
1188 struct r6040_private *lp = netdev_priv(dev);
1192 mdiobus_unregister(lp->mii_bus);
1193 mdiobus_free(lp->mii_bus);
1194 netif_napi_del(&lp->napi);
1195 pci_iounmap(pdev, lp->base);