Lines Matching full:emac
5 * Driver for the ARC EMAC 10100 (hardware revision 5)
24 #include "emac.h"
30 * @priv: Pointer to ARC EMAC private data structure.
82 * arc_emac_get_drvinfo - Get EMAC driver information.
107 * arc_emac_tx_clean - clears processed by EMAC Tx BDs.
204 /* Return ownership to EMAC */ in arc_emac_rx()
219 /* Return ownership to EMAC */ in arc_emac_rx()
232 /* Return ownership to EMAC */ in arc_emac_rx()
261 /* Return ownership to EMAC */ in arc_emac_rx()
292 * Under certain conditions EMAC stop reception of incoming packets and
295 * EMAC.
342 * arc_emac_intr - Global interrupt handler for EMAC.
348 * ARC EMAC has only 1 interrupt line, and depending on bits raised in
418 * for the EMAC device and starts the Tx queue.
462 /* Return ownership to EMAC */ in arc_emac_open()
493 /* Enable EMAC */ in arc_emac_open()
545 * This function must be called while EMAC disable
576 * This function must be called while EMAC disable
608 * the EMAC device.
609 * It also disconnects the PHY device associated with the EMAC device.
623 /* Disable EMAC */ in arc_emac_stop()
785 * arc_emac_restart - Restart EMAC
788 * This function do hardware reset of EMAC in order to restore
798 netdev_warn(ndev, "restarting stalled EMAC\n"); in arc_emac_restart()
805 /* Disable EMAC */ in arc_emac_restart()
824 /* Return ownership to EMAC */ in arc_emac_restart()
829 /* Make sure info is visible to EMAC before enable */ in arc_emac_restart()
835 /* Enable EMAC */ in arc_emac_restart()
872 /* Get EMAC registers base address from device tree */ in arc_emac_probe()
923 /* Check for EMAC revision 5 or 7, magic number */ in arc_emac_probe()
925 dev_err(dev, "ARC EMAC not detected, id=0x%x\n", id); in arc_emac_probe()
929 dev_info(dev, "ARC EMAC detected with id: 0x%x\n", id); in arc_emac_probe()
969 dev_dbg(dev, "EMAC Device addr: Rx Ring [0x%x], Tx Ring[%x]\n", in arc_emac_probe()
1032 MODULE_DESCRIPTION("ARC EMAC driver");