Lines Matching refs:fep
90 static inline int scc_cr_cmd(struct fs_enet_private *fep, u32 op) in scc_cr_cmd() argument
92 const struct fs_platform_info *fpi = fep->fpi; in scc_cr_cmd()
97 static int do_pd_setup(struct fs_enet_private *fep) in do_pd_setup() argument
99 struct platform_device *ofdev = to_platform_device(fep->dev); in do_pd_setup()
101 fep->interrupt = irq_of_parse_and_map(ofdev->dev.of_node, 0); in do_pd_setup()
102 if (fep->interrupt == NO_IRQ) in do_pd_setup()
105 fep->scc.sccp = of_iomap(ofdev->dev.of_node, 0); in do_pd_setup()
106 if (!fep->scc.sccp) in do_pd_setup()
109 fep->scc.ep = of_iomap(ofdev->dev.of_node, 1); in do_pd_setup()
110 if (!fep->scc.ep) { in do_pd_setup()
111 iounmap(fep->scc.sccp); in do_pd_setup()
126 struct fs_enet_private *fep = netdev_priv(dev); in setup_data() local
128 do_pd_setup(fep); in setup_data()
130 fep->scc.hthi = 0; in setup_data()
131 fep->scc.htlo = 0; in setup_data()
133 fep->ev_napi_rx = SCC_NAPI_RX_EVENT_MSK; in setup_data()
134 fep->ev_napi_tx = SCC_NAPI_TX_EVENT_MSK; in setup_data()
135 fep->ev_rx = SCC_RX_EVENT; in setup_data()
136 fep->ev_tx = SCC_TX_EVENT | SCCE_ENET_TXE; in setup_data()
137 fep->ev_err = SCC_ERR_EVENT_MSK; in setup_data()
144 struct fs_enet_private *fep = netdev_priv(dev); in allocate_bd() local
145 const struct fs_platform_info *fpi = fep->fpi; in allocate_bd()
147 fep->ring_mem_addr = cpm_dpalloc((fpi->tx_ring + fpi->rx_ring) * in allocate_bd()
149 if (IS_ERR_VALUE(fep->ring_mem_addr)) in allocate_bd()
152 fep->ring_base = (void __iomem __force*) in allocate_bd()
153 cpm_dpram_addr(fep->ring_mem_addr); in allocate_bd()
160 struct fs_enet_private *fep = netdev_priv(dev); in free_bd() local
162 if (fep->ring_base) in free_bd()
163 cpm_dpfree(fep->ring_mem_addr); in free_bd()
173 struct fs_enet_private *fep = netdev_priv(dev); in set_promiscuous_mode() local
174 scc_t __iomem *sccp = fep->scc.sccp; in set_promiscuous_mode()
181 struct fs_enet_private *fep = netdev_priv(dev); in set_multicast_start() local
182 scc_enet_t __iomem *ep = fep->scc.ep; in set_multicast_start()
192 struct fs_enet_private *fep = netdev_priv(dev); in set_multicast_one() local
193 scc_enet_t __iomem *ep = fep->scc.ep; in set_multicast_one()
203 scc_cr_cmd(fep, CPM_CR_SET_GADDR); in set_multicast_one()
208 struct fs_enet_private *fep = netdev_priv(dev); in set_multicast_finish() local
209 scc_t __iomem *sccp = fep->scc.sccp; in set_multicast_finish()
210 scc_enet_t __iomem *ep = fep->scc.ep; in set_multicast_finish()
246 struct fs_enet_private *fep = netdev_priv(dev); in restart() local
247 scc_t __iomem *sccp = fep->scc.sccp; in restart()
248 scc_enet_t __iomem *ep = fep->scc.ep; in restart()
249 const struct fs_platform_info *fpi = fep->fpi; in restart()
261 W16(ep, sen_genscc.scc_rbase, fep->ring_mem_addr); in restart()
263 fep->ring_mem_addr + sizeof(cbd_t) * fpi->rx_ring); in restart()
329 scc_cr_cmd(fep, CPM_CR_INIT_TRX); in restart()
355 if (fep->phydev->duplex) in restart()
366 struct fs_enet_private *fep = netdev_priv(dev); in stop() local
367 scc_t __iomem *sccp = fep->scc.sccp; in stop()
374 dev_warn(fep->dev, "SCC timeout on graceful transmit stop\n"); in stop()
384 struct fs_enet_private *fep = netdev_priv(dev); in napi_clear_rx_event() local
385 scc_t __iomem *sccp = fep->scc.sccp; in napi_clear_rx_event()
392 struct fs_enet_private *fep = netdev_priv(dev); in napi_enable_rx() local
393 scc_t __iomem *sccp = fep->scc.sccp; in napi_enable_rx()
400 struct fs_enet_private *fep = netdev_priv(dev); in napi_disable_rx() local
401 scc_t __iomem *sccp = fep->scc.sccp; in napi_disable_rx()
408 struct fs_enet_private *fep = netdev_priv(dev); in napi_clear_tx_event() local
409 scc_t __iomem *sccp = fep->scc.sccp; in napi_clear_tx_event()
416 struct fs_enet_private *fep = netdev_priv(dev); in napi_enable_tx() local
417 scc_t __iomem *sccp = fep->scc.sccp; in napi_enable_tx()
424 struct fs_enet_private *fep = netdev_priv(dev); in napi_disable_tx() local
425 scc_t __iomem *sccp = fep->scc.sccp; in napi_disable_tx()
442 struct fs_enet_private *fep = netdev_priv(dev); in get_int_events() local
443 scc_t __iomem *sccp = fep->scc.sccp; in get_int_events()
450 struct fs_enet_private *fep = netdev_priv(dev); in clear_int_events() local
451 scc_t __iomem *sccp = fep->scc.sccp; in clear_int_events()
458 struct fs_enet_private *fep = netdev_priv(dev); in ev_error() local
460 dev_warn(fep->dev, "SCC ERROR(s) 0x%x\n", int_events); in ev_error()
465 struct fs_enet_private *fep = netdev_priv(dev); in get_regs() local
470 memcpy_fromio(p, fep->scc.sccp, sizeof(scc_t)); in get_regs()
473 memcpy_fromio(p, fep->scc.ep, sizeof(scc_enet_t __iomem *)); in get_regs()
485 struct fs_enet_private *fep = netdev_priv(dev); in tx_restart() local
487 scc_cr_cmd(fep, CPM_CR_RESTART_TX); in tx_restart()