• Home
  • Raw
  • Download

Lines Matching refs:pldat

447 static void __lpc_set_mac(struct netdata_local *pldat, u8 *mac)  in __lpc_set_mac()  argument
453 writel(tmp, LPC_ENET_SA2(pldat->net_base)); in __lpc_set_mac()
455 writel(tmp, LPC_ENET_SA1(pldat->net_base)); in __lpc_set_mac()
457 writel(tmp, LPC_ENET_SA0(pldat->net_base)); in __lpc_set_mac()
459 netdev_dbg(pldat->ndev, "Ethernet MAC address %pM\n", mac); in __lpc_set_mac()
462 static void __lpc_get_mac(struct netdata_local *pldat, u8 *mac) in __lpc_get_mac() argument
467 tmp = readl(LPC_ENET_SA2(pldat->net_base)); in __lpc_get_mac()
470 tmp = readl(LPC_ENET_SA1(pldat->net_base)); in __lpc_get_mac()
473 tmp = readl(LPC_ENET_SA0(pldat->net_base)); in __lpc_get_mac()
478 static void __lpc_params_setup(struct netdata_local *pldat) in __lpc_params_setup() argument
482 if (pldat->duplex == DUPLEX_FULL) { in __lpc_params_setup()
483 tmp = readl(LPC_ENET_MAC2(pldat->net_base)); in __lpc_params_setup()
485 writel(tmp, LPC_ENET_MAC2(pldat->net_base)); in __lpc_params_setup()
486 tmp = readl(LPC_ENET_COMMAND(pldat->net_base)); in __lpc_params_setup()
488 writel(tmp, LPC_ENET_COMMAND(pldat->net_base)); in __lpc_params_setup()
489 writel(LPC_IPGT_LOAD(0x15), LPC_ENET_IPGT(pldat->net_base)); in __lpc_params_setup()
491 tmp = readl(LPC_ENET_MAC2(pldat->net_base)); in __lpc_params_setup()
493 writel(tmp, LPC_ENET_MAC2(pldat->net_base)); in __lpc_params_setup()
494 tmp = readl(LPC_ENET_COMMAND(pldat->net_base)); in __lpc_params_setup()
496 writel(tmp, LPC_ENET_COMMAND(pldat->net_base)); in __lpc_params_setup()
497 writel(LPC_IPGT_LOAD(0x12), LPC_ENET_IPGT(pldat->net_base)); in __lpc_params_setup()
500 if (pldat->speed == SPEED_100) in __lpc_params_setup()
501 writel(LPC_SUPP_SPEED, LPC_ENET_SUPP(pldat->net_base)); in __lpc_params_setup()
503 writel(0, LPC_ENET_SUPP(pldat->net_base)); in __lpc_params_setup()
506 static void __lpc_eth_reset(struct netdata_local *pldat) in __lpc_eth_reset() argument
511 LPC_MAC1_SOFT_RESET), LPC_ENET_MAC1(pldat->net_base)); in __lpc_eth_reset()
513 LPC_COMMAND_RXRESET), LPC_ENET_COMMAND(pldat->net_base)); in __lpc_eth_reset()
516 static int __lpc_mii_mngt_reset(struct netdata_local *pldat) in __lpc_mii_mngt_reset() argument
519 writel(LPC_MCFG_RESET_MII_MGMT, LPC_ENET_MCFG(pldat->net_base)); in __lpc_mii_mngt_reset()
523 LPC_ENET_MCFG(pldat->net_base)); in __lpc_mii_mngt_reset()
528 static inline phys_addr_t __va_to_pa(void *addr, struct netdata_local *pldat) in __va_to_pa() argument
532 phaddr = addr - pldat->dma_buff_base_v; in __va_to_pa()
533 phaddr += pldat->dma_buff_base_p; in __va_to_pa()
550 static void __lpc_txrx_desc_setup(struct netdata_local *pldat) in __lpc_txrx_desc_setup() argument
558 tbuff = PTR_ALIGN(pldat->dma_buff_base_v, 16); in __lpc_txrx_desc_setup()
561 pldat->tx_desc_v = tbuff; in __lpc_txrx_desc_setup()
564 pldat->tx_stat_v = tbuff; in __lpc_txrx_desc_setup()
568 pldat->tx_buff_v = tbuff; in __lpc_txrx_desc_setup()
572 pldat->rx_desc_v = tbuff; in __lpc_txrx_desc_setup()
576 pldat->rx_stat_v = tbuff; in __lpc_txrx_desc_setup()
580 pldat->rx_buff_v = tbuff; in __lpc_txrx_desc_setup()
585 ptxstat = &pldat->tx_stat_v[i]; in __lpc_txrx_desc_setup()
586 ptxrxdesc = &pldat->tx_desc_v[i]; in __lpc_txrx_desc_setup()
589 pldat->tx_buff_v + i * ENET_MAXF_SIZE, pldat); in __lpc_txrx_desc_setup()
596 prxstat = &pldat->rx_stat_v[i]; in __lpc_txrx_desc_setup()
597 ptxrxdesc = &pldat->rx_desc_v[i]; in __lpc_txrx_desc_setup()
600 pldat->rx_buff_v + i * ENET_MAXF_SIZE, pldat); in __lpc_txrx_desc_setup()
610 LPC_ENET_TXDESCRIPTORNUMBER(pldat->net_base)); in __lpc_txrx_desc_setup()
611 writel(__va_to_pa(pldat->tx_desc_v, pldat), in __lpc_txrx_desc_setup()
612 LPC_ENET_TXDESCRIPTOR(pldat->net_base)); in __lpc_txrx_desc_setup()
613 writel(__va_to_pa(pldat->tx_stat_v, pldat), in __lpc_txrx_desc_setup()
614 LPC_ENET_TXSTATUS(pldat->net_base)); in __lpc_txrx_desc_setup()
616 LPC_ENET_RXDESCRIPTORNUMBER(pldat->net_base)); in __lpc_txrx_desc_setup()
617 writel(__va_to_pa(pldat->rx_desc_v, pldat), in __lpc_txrx_desc_setup()
618 LPC_ENET_RXDESCRIPTOR(pldat->net_base)); in __lpc_txrx_desc_setup()
619 writel(__va_to_pa(pldat->rx_stat_v, pldat), in __lpc_txrx_desc_setup()
620 LPC_ENET_RXSTATUS(pldat->net_base)); in __lpc_txrx_desc_setup()
623 static void __lpc_eth_init(struct netdata_local *pldat) in __lpc_eth_init() argument
628 tmp = readl(LPC_ENET_COMMAND(pldat->net_base)); in __lpc_eth_init()
630 writel(tmp, LPC_ENET_COMMAND(pldat->net_base)); in __lpc_eth_init()
631 tmp = readl(LPC_ENET_MAC1(pldat->net_base)); in __lpc_eth_init()
633 writel(tmp, LPC_ENET_MAC1(pldat->net_base)); in __lpc_eth_init()
636 writel(LPC_MAC1_PASS_ALL_RX_FRAMES, LPC_ENET_MAC1(pldat->net_base)); in __lpc_eth_init()
638 LPC_ENET_MAC2(pldat->net_base)); in __lpc_eth_init()
639 writel(ENET_MAXF_SIZE, LPC_ENET_MAXF(pldat->net_base)); in __lpc_eth_init()
644 LPC_ENET_CLRT(pldat->net_base)); in __lpc_eth_init()
645 writel(LPC_IPGR_LOAD_PART2(0x12), LPC_ENET_IPGR(pldat->net_base)); in __lpc_eth_init()
647 if (lpc_phy_interface_mode(&pldat->pdev->dev) == PHY_INTERFACE_MODE_MII) in __lpc_eth_init()
649 LPC_ENET_COMMAND(pldat->net_base)); in __lpc_eth_init()
652 LPC_ENET_COMMAND(pldat->net_base)); in __lpc_eth_init()
653 writel(LPC_SUPP_RESET_RMII, LPC_ENET_SUPP(pldat->net_base)); in __lpc_eth_init()
656 __lpc_params_setup(pldat); in __lpc_eth_init()
659 __lpc_txrx_desc_setup(pldat); in __lpc_eth_init()
663 LPC_ENET_RXFILTER_CTRL(pldat->net_base)); in __lpc_eth_init()
666 pldat->num_used_tx_buffs = 0; in __lpc_eth_init()
667 pldat->last_tx_idx = in __lpc_eth_init()
668 readl(LPC_ENET_TXCONSUMEINDEX(pldat->net_base)); in __lpc_eth_init()
671 writel(0xFFFF, LPC_ENET_INTCLEAR(pldat->net_base)); in __lpc_eth_init()
673 lpc_eth_enable_int(pldat->net_base); in __lpc_eth_init()
676 tmp = readl(LPC_ENET_COMMAND(pldat->net_base)); in __lpc_eth_init()
678 writel(tmp, LPC_ENET_COMMAND(pldat->net_base)); in __lpc_eth_init()
679 tmp = readl(LPC_ENET_MAC1(pldat->net_base)); in __lpc_eth_init()
681 writel(tmp, LPC_ENET_MAC1(pldat->net_base)); in __lpc_eth_init()
684 static void __lpc_eth_shutdown(struct netdata_local *pldat) in __lpc_eth_shutdown() argument
687 __lpc_eth_reset(pldat); in __lpc_eth_shutdown()
688 writel(0, LPC_ENET_MAC1(pldat->net_base)); in __lpc_eth_shutdown()
689 writel(0, LPC_ENET_MAC2(pldat->net_base)); in __lpc_eth_shutdown()
697 struct netdata_local *pldat = bus->priv; in lpc_mdio_read() local
701 writel(((phy_id << 8) | phyreg), LPC_ENET_MADR(pldat->net_base)); in lpc_mdio_read()
702 writel(LPC_MCMD_READ, LPC_ENET_MCMD(pldat->net_base)); in lpc_mdio_read()
705 while (readl(LPC_ENET_MIND(pldat->net_base)) & LPC_MIND_BUSY) { in lpc_mdio_read()
711 lps = readl(LPC_ENET_MRDD(pldat->net_base)); in lpc_mdio_read()
712 writel(0, LPC_ENET_MCMD(pldat->net_base)); in lpc_mdio_read()
720 struct netdata_local *pldat = bus->priv; in lpc_mdio_write() local
723 writel(((phy_id << 8) | phyreg), LPC_ENET_MADR(pldat->net_base)); in lpc_mdio_write()
724 writel(phydata, LPC_ENET_MWTD(pldat->net_base)); in lpc_mdio_write()
727 while (readl(LPC_ENET_MIND(pldat->net_base)) & LPC_MIND_BUSY) { in lpc_mdio_write()
743 struct netdata_local *pldat = netdev_priv(ndev); in lpc_handle_link_change() local
749 spin_lock_irqsave(&pldat->lock, flags); in lpc_handle_link_change()
752 if ((pldat->speed != phydev->speed) || in lpc_handle_link_change()
753 (pldat->duplex != phydev->duplex)) { in lpc_handle_link_change()
754 pldat->speed = phydev->speed; in lpc_handle_link_change()
755 pldat->duplex = phydev->duplex; in lpc_handle_link_change()
760 if (phydev->link != pldat->link) { in lpc_handle_link_change()
762 pldat->speed = 0; in lpc_handle_link_change()
763 pldat->duplex = -1; in lpc_handle_link_change()
765 pldat->link = phydev->link; in lpc_handle_link_change()
770 spin_unlock_irqrestore(&pldat->lock, flags); in lpc_handle_link_change()
773 __lpc_params_setup(pldat); in lpc_handle_link_change()
778 struct netdata_local *pldat = netdev_priv(ndev); in lpc_mii_probe() local
779 struct phy_device *phydev = phy_find_first(pldat->mii_bus); in lpc_mii_probe()
787 if (lpc_phy_interface_mode(&pldat->pdev->dev) == PHY_INTERFACE_MODE_MII) in lpc_mii_probe()
793 lpc_phy_interface_mode(&pldat->pdev->dev)); in lpc_mii_probe()
805 pldat->link = 0; in lpc_mii_probe()
806 pldat->speed = 0; in lpc_mii_probe()
807 pldat->duplex = -1; in lpc_mii_probe()
814 static int lpc_mii_init(struct netdata_local *pldat) in lpc_mii_init() argument
818 pldat->mii_bus = mdiobus_alloc(); in lpc_mii_init()
819 if (!pldat->mii_bus) { in lpc_mii_init()
825 if (lpc_phy_interface_mode(&pldat->pdev->dev) == PHY_INTERFACE_MODE_MII) in lpc_mii_init()
827 LPC_ENET_COMMAND(pldat->net_base)); in lpc_mii_init()
830 LPC_ENET_COMMAND(pldat->net_base)); in lpc_mii_init()
831 writel(LPC_SUPP_RESET_RMII, LPC_ENET_SUPP(pldat->net_base)); in lpc_mii_init()
834 pldat->mii_bus->name = "lpc_mii_bus"; in lpc_mii_init()
835 pldat->mii_bus->read = &lpc_mdio_read; in lpc_mii_init()
836 pldat->mii_bus->write = &lpc_mdio_write; in lpc_mii_init()
837 pldat->mii_bus->reset = &lpc_mdio_reset; in lpc_mii_init()
838 snprintf(pldat->mii_bus->id, MII_BUS_ID_SIZE, "%s-%x", in lpc_mii_init()
839 pldat->pdev->name, pldat->pdev->id); in lpc_mii_init()
840 pldat->mii_bus->priv = pldat; in lpc_mii_init()
841 pldat->mii_bus->parent = &pldat->pdev->dev; in lpc_mii_init()
843 platform_set_drvdata(pldat->pdev, pldat->mii_bus); in lpc_mii_init()
845 if (mdiobus_register(pldat->mii_bus)) in lpc_mii_init()
848 if (lpc_mii_probe(pldat->ndev) != 0) in lpc_mii_init()
854 mdiobus_unregister(pldat->mii_bus); in lpc_mii_init()
855 mdiobus_free(pldat->mii_bus); in lpc_mii_init()
862 struct netdata_local *pldat = netdev_priv(ndev); in __lpc_handle_xmit() local
865 txcidx = readl(LPC_ENET_TXCONSUMEINDEX(pldat->net_base)); in __lpc_handle_xmit()
866 while (pldat->last_tx_idx != txcidx) { in __lpc_handle_xmit()
867 unsigned int skblen = pldat->skblen[pldat->last_tx_idx]; in __lpc_handle_xmit()
870 ptxstat = &pldat->tx_stat_v[pldat->last_tx_idx]; in __lpc_handle_xmit()
874 pldat->num_used_tx_buffs--; in __lpc_handle_xmit()
875 pldat->last_tx_idx++; in __lpc_handle_xmit()
876 if (pldat->last_tx_idx >= ENET_TX_DESC) in __lpc_handle_xmit()
877 pldat->last_tx_idx = 0; in __lpc_handle_xmit()
907 txcidx = readl(LPC_ENET_TXCONSUMEINDEX(pldat->net_base)); in __lpc_handle_xmit()
910 if (pldat->num_used_tx_buffs <= ENET_TX_DESC/2) { in __lpc_handle_xmit()
918 struct netdata_local *pldat = netdev_priv(ndev); in __lpc_handle_recv() local
926 rxconsidx = readl(LPC_ENET_RXCONSUMEINDEX(pldat->net_base)); in __lpc_handle_recv()
928 readl(LPC_ENET_RXPRODUCEINDEX(pldat->net_base))) { in __lpc_handle_recv()
930 prxstat = &pldat->rx_stat_v[rxconsidx]; in __lpc_handle_recv()
965 memcpy(prdbuf, pldat->rx_buff_v + in __lpc_handle_recv()
981 LPC_ENET_RXCONSUMEINDEX(pldat->net_base)); in __lpc_handle_recv()
990 struct netdata_local *pldat = container_of(napi, in lpc_eth_poll() local
992 struct net_device *ndev = pldat->ndev; in lpc_eth_poll()
1003 lpc_eth_enable_int(pldat->net_base); in lpc_eth_poll()
1012 struct netdata_local *pldat = netdev_priv(ndev); in __lpc_eth_interrupt() local
1015 spin_lock(&pldat->lock); in __lpc_eth_interrupt()
1017 tmp = readl(LPC_ENET_INTSTATUS(pldat->net_base)); in __lpc_eth_interrupt()
1019 writel(tmp, LPC_ENET_INTCLEAR(pldat->net_base)); in __lpc_eth_interrupt()
1021 lpc_eth_disable_int(pldat->net_base); in __lpc_eth_interrupt()
1022 if (likely(napi_schedule_prep(&pldat->napi))) in __lpc_eth_interrupt()
1023 __napi_schedule(&pldat->napi); in __lpc_eth_interrupt()
1025 spin_unlock(&pldat->lock); in __lpc_eth_interrupt()
1033 struct netdata_local *pldat = netdev_priv(ndev); in lpc_eth_close() local
1035 if (netif_msg_ifdown(pldat)) in lpc_eth_close()
1036 dev_dbg(&pldat->pdev->dev, "shutting down %s\n", ndev->name); in lpc_eth_close()
1038 napi_disable(&pldat->napi); in lpc_eth_close()
1044 spin_lock_irqsave(&pldat->lock, flags); in lpc_eth_close()
1045 __lpc_eth_reset(pldat); in lpc_eth_close()
1047 writel(0, LPC_ENET_MAC1(pldat->net_base)); in lpc_eth_close()
1048 writel(0, LPC_ENET_MAC2(pldat->net_base)); in lpc_eth_close()
1049 spin_unlock_irqrestore(&pldat->lock, flags); in lpc_eth_close()
1051 clk_disable_unprepare(pldat->clk); in lpc_eth_close()
1058 struct netdata_local *pldat = netdev_priv(ndev); in lpc_eth_hard_start_xmit() local
1065 spin_lock_irq(&pldat->lock); in lpc_eth_hard_start_xmit()
1067 if (pldat->num_used_tx_buffs >= (ENET_TX_DESC - 1)) { in lpc_eth_hard_start_xmit()
1071 spin_unlock_irq(&pldat->lock); in lpc_eth_hard_start_xmit()
1077 txidx = readl(LPC_ENET_TXPRODUCEINDEX(pldat->net_base)); in lpc_eth_hard_start_xmit()
1080 ptxstat = &pldat->tx_stat_v[txidx]; in lpc_eth_hard_start_xmit()
1082 ptxrxdesc = &pldat->tx_desc_v[txidx]; in lpc_eth_hard_start_xmit()
1087 memcpy(pldat->tx_buff_v + txidx * ENET_MAXF_SIZE, skb->data, len); in lpc_eth_hard_start_xmit()
1090 pldat->skblen[txidx] = len; in lpc_eth_hard_start_xmit()
1091 pldat->num_used_tx_buffs++; in lpc_eth_hard_start_xmit()
1097 writel(txidx, LPC_ENET_TXPRODUCEINDEX(pldat->net_base)); in lpc_eth_hard_start_xmit()
1100 if (pldat->num_used_tx_buffs >= (ENET_TX_DESC - 1)) in lpc_eth_hard_start_xmit()
1103 spin_unlock_irq(&pldat->lock); in lpc_eth_hard_start_xmit()
1112 struct netdata_local *pldat = netdev_priv(ndev); in lpc_set_mac_address() local
1119 spin_lock_irqsave(&pldat->lock, flags); in lpc_set_mac_address()
1122 __lpc_set_mac(pldat, ndev->dev_addr); in lpc_set_mac_address()
1124 spin_unlock_irqrestore(&pldat->lock, flags); in lpc_set_mac_address()
1131 struct netdata_local *pldat = netdev_priv(ndev); in lpc_eth_set_multicast_list() local
1137 spin_lock_irqsave(&pldat->lock, flags); in lpc_eth_set_multicast_list()
1140 __lpc_set_mac(pldat, ndev->dev_addr); in lpc_eth_set_multicast_list()
1153 writel(tmp32, LPC_ENET_RXFILTER_CTRL(pldat->net_base)); in lpc_eth_set_multicast_list()
1170 writel(hashlo, LPC_ENET_HASHFILTERL(pldat->net_base)); in lpc_eth_set_multicast_list()
1171 writel(hashhi, LPC_ENET_HASHFILTERH(pldat->net_base)); in lpc_eth_set_multicast_list()
1173 spin_unlock_irqrestore(&pldat->lock, flags); in lpc_eth_set_multicast_list()
1191 struct netdata_local *pldat = netdev_priv(ndev); in lpc_eth_open() local
1194 if (netif_msg_ifup(pldat)) in lpc_eth_open()
1195 dev_dbg(&pldat->pdev->dev, "enabling %s\n", ndev->name); in lpc_eth_open()
1197 ret = clk_prepare_enable(pldat->clk); in lpc_eth_open()
1205 __lpc_eth_reset(pldat); in lpc_eth_open()
1206 __lpc_eth_init(pldat); in lpc_eth_open()
1211 napi_enable(&pldat->napi); in lpc_eth_open()
1230 struct netdata_local *pldat = netdev_priv(ndev); in lpc_eth_ethtool_getmsglevel() local
1232 return pldat->msg_enable; in lpc_eth_ethtool_getmsglevel()
1237 struct netdata_local *pldat = netdev_priv(ndev); in lpc_eth_ethtool_setmsglevel() local
1239 pldat->msg_enable = level; in lpc_eth_ethtool_setmsglevel()
1266 struct netdata_local *pldat; in lpc_eth_drv_probe() local
1300 pldat = netdev_priv(ndev); in lpc_eth_drv_probe()
1301 pldat->pdev = pdev; in lpc_eth_drv_probe()
1302 pldat->ndev = ndev; in lpc_eth_drv_probe()
1304 spin_lock_init(&pldat->lock); in lpc_eth_drv_probe()
1310 pldat->clk = clk_get(&pdev->dev, NULL); in lpc_eth_drv_probe()
1311 if (IS_ERR(pldat->clk)) { in lpc_eth_drv_probe()
1313 ret = PTR_ERR(pldat->clk); in lpc_eth_drv_probe()
1318 ret = clk_prepare_enable(pldat->clk); in lpc_eth_drv_probe()
1323 pldat->net_base = ioremap(res->start, resource_size(res)); in lpc_eth_drv_probe()
1324 if (!pldat->net_base) { in lpc_eth_drv_probe()
1342 pldat->dma_buff_size = (ENET_TX_DESC + ENET_RX_DESC) * (ENET_MAXF_SIZE + in lpc_eth_drv_probe()
1344 pldat->dma_buff_base_v = 0; in lpc_eth_drv_probe()
1346 if (use_iram_for_net(&pldat->pdev->dev)) { in lpc_eth_drv_probe()
1348 if (pldat->dma_buff_size <= lpc32xx_return_iram_size()) in lpc_eth_drv_probe()
1349 pldat->dma_buff_base_v = in lpc_eth_drv_probe()
1356 if (pldat->dma_buff_base_v == 0) { in lpc_eth_drv_probe()
1361 pldat->dma_buff_size = PAGE_ALIGN(pldat->dma_buff_size); in lpc_eth_drv_probe()
1365 pldat->dma_buff_base_v = in lpc_eth_drv_probe()
1366 dma_alloc_coherent(&pldat->pdev->dev, in lpc_eth_drv_probe()
1367 pldat->dma_buff_size, &dma_handle, in lpc_eth_drv_probe()
1369 if (pldat->dma_buff_base_v == NULL) { in lpc_eth_drv_probe()
1374 pldat->dma_buff_base_p = dma_handle; in lpc_eth_drv_probe()
1379 pldat->net_base); in lpc_eth_drv_probe()
1381 netdev_dbg(ndev, "DMA buffer size :%d\n", pldat->dma_buff_size); in lpc_eth_drv_probe()
1383 pldat->dma_buff_base_p); in lpc_eth_drv_probe()
1385 pldat->dma_buff_base_v); in lpc_eth_drv_probe()
1388 __lpc_get_mac(pldat, ndev->dev_addr); in lpc_eth_drv_probe()
1399 __lpc_eth_reset(pldat); in lpc_eth_drv_probe()
1402 __lpc_eth_shutdown(pldat); in lpc_eth_drv_probe()
1405 pldat->msg_enable = NETIF_MSG_LINK; in lpc_eth_drv_probe()
1408 __lpc_mii_mngt_reset(pldat); in lpc_eth_drv_probe()
1412 pldat->link = 0; in lpc_eth_drv_probe()
1413 pldat->speed = 100; in lpc_eth_drv_probe()
1414 pldat->duplex = DUPLEX_FULL; in lpc_eth_drv_probe()
1415 __lpc_params_setup(pldat); in lpc_eth_drv_probe()
1417 netif_napi_add(ndev, &pldat->napi, lpc_eth_poll, NAPI_WEIGHT); in lpc_eth_drv_probe()
1426 ret = lpc_mii_init(pldat); in lpc_eth_drv_probe()
1443 if (!use_iram_for_net(&pldat->pdev->dev) || in lpc_eth_drv_probe()
1444 pldat->dma_buff_size > lpc32xx_return_iram_size()) in lpc_eth_drv_probe()
1445 dma_free_coherent(&pldat->pdev->dev, pldat->dma_buff_size, in lpc_eth_drv_probe()
1446 pldat->dma_buff_base_v, in lpc_eth_drv_probe()
1447 pldat->dma_buff_base_p); in lpc_eth_drv_probe()
1451 iounmap(pldat->net_base); in lpc_eth_drv_probe()
1453 clk_disable_unprepare(pldat->clk); in lpc_eth_drv_probe()
1455 clk_put(pldat->clk); in lpc_eth_drv_probe()
1466 struct netdata_local *pldat = netdev_priv(ndev); in lpc_eth_drv_remove() local
1470 if (!use_iram_for_net(&pldat->pdev->dev) || in lpc_eth_drv_remove()
1471 pldat->dma_buff_size > lpc32xx_return_iram_size()) in lpc_eth_drv_remove()
1472 dma_free_coherent(&pldat->pdev->dev, pldat->dma_buff_size, in lpc_eth_drv_remove()
1473 pldat->dma_buff_base_v, in lpc_eth_drv_remove()
1474 pldat->dma_buff_base_p); in lpc_eth_drv_remove()
1476 iounmap(pldat->net_base); in lpc_eth_drv_remove()
1477 mdiobus_unregister(pldat->mii_bus); in lpc_eth_drv_remove()
1478 mdiobus_free(pldat->mii_bus); in lpc_eth_drv_remove()
1479 clk_disable_unprepare(pldat->clk); in lpc_eth_drv_remove()
1480 clk_put(pldat->clk); in lpc_eth_drv_remove()
1491 struct netdata_local *pldat = netdev_priv(ndev); in lpc_eth_drv_suspend() local
1499 __lpc_eth_shutdown(pldat); in lpc_eth_drv_suspend()
1500 clk_disable_unprepare(pldat->clk); in lpc_eth_drv_suspend()
1506 __lpc_eth_reset(pldat); in lpc_eth_drv_suspend()
1516 struct netdata_local *pldat; in lpc_eth_drv_resume() local
1523 pldat = netdev_priv(ndev); in lpc_eth_drv_resume()
1526 clk_enable(pldat->clk); in lpc_eth_drv_resume()
1529 __lpc_eth_reset(pldat); in lpc_eth_drv_resume()
1530 __lpc_eth_init(pldat); in lpc_eth_drv_resume()