• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-WNDR4500v2-V1.0.0.60_1.0.38/src/linux/linux-2.6/arch/ppc/8xx_io/

Lines Matching refs:fep

288 	struct fec_enet_private *fep;
291 fep = dev->priv;
293 if (test_and_set_bit(0, (void*)&fep->ph_lock) != 0) {
297 if (fep->ph_rxhandler != NULL || fep->ph_txhandler != NULL) {
301 fep->ph_rxhandler = rxfun;
302 fep->ph_txhandler = txfun;
303 fep->ph_proto = proto;
304 fep->ph_regaddr = regaddr;
305 fep->ph_priv = priv;
308 fep->ph_lock = 0;
317 struct fec_enet_private *fep;
320 fep = dev->priv;
322 if (test_and_set_bit(0, (void*)&fep->ph_lock) != 0) {
327 fep->ph_rxhandler = fep->ph_txhandler = NULL;
328 fep->ph_proto = 0;
329 fep->ph_regaddr = NULL;
330 fep->ph_priv = NULL;
332 fep->ph_lock = 0;
345 struct fec_enet_private *fep;
349 fep = dev->priv;
352 if (!fep->link) {
358 bdp = fep->cur_tx;
381 fep->tx_skbuff[fep->skb_cur] = skb;
383 fep->stats.tx_bytes += skb->len;
384 fep->skb_cur = (fep->skb_cur+1) & TX_RING_MOD_MASK;
393 spin_lock_irq(&fep->lock);
410 bdp = fep->tx_bd_base;
417 fep->tx_full = 1;
420 fep->cur_tx = (cbd_t *)bdp;
422 spin_unlock_irq(&fep->lock);
430 struct fec_enet_private *fep = dev->priv;
433 fep->stats.tx_errors++;
440 (unsigned long)fep->cur_tx, fep->tx_full ? " (full)" : "",
441 (unsigned long)fep->dirty_tx,
442 (unsigned long)fep->cur_rx);
444 bdp = fep->tx_bd_base;
455 bdp = fep->rx_bd_base;
467 if (!fep->tx_full)
481 struct fec_enet_private *fep = dev->priv;
484 if (fep->ph_regaddr) regval = *fep->ph_regaddr;
539 struct fec_enet_private *fep;
543 fep = dev->priv;
545 spin_lock(&fep->lock);
546 bdp = fep->dirty_tx;
549 if (bdp == fep->cur_tx && fep->tx_full == 0) break;
551 skb = fep->tx_skbuff[fep->skb_dirty];
556 fep->stats.tx_errors++;
558 fep->stats.tx_heartbeat_errors++;
560 fep->stats.tx_window_errors++;
562 fep->stats.tx_aborted_errors++;
564 fep->stats.tx_fifo_errors++;
566 fep->stats.tx_carrier_errors++;
570 if (fep->ph_txhandler &&
572 == fep->ph_proto) {
573 fep->ph_txhandler((__u8*)skb->data, skb->len,
574 regval, fep->ph_priv);
577 fep->stats.tx_packets++;
588 fep->stats.collisions++;
593 fep->tx_skbuff[fep->skb_dirty] = NULL;
594 fep->skb_dirty = (fep->skb_dirty + 1) & TX_RING_MOD_MASK;
599 bdp = fep->tx_bd_base;
606 if (fep->tx_full) {
607 fep->tx_full = 0;
614 if (fep->ph_regaddr) regval = *fep->ph_regaddr;
617 fep->dirty_tx = (cbd_t *)bdp;
618 spin_unlock(&fep->lock);
634 struct fec_enet_private *fep;
641 fep = dev->priv;
647 bdp = fep->cur_rx;
662 fep->stats.rx_errors++;
665 fep->stats.rx_length_errors++;
668 fep->stats.rx_frame_errors++;
670 fep->stats.rx_crc_errors++;
672 fep->stats.rx_crc_errors++;
680 fep->stats.rx_errors++;
681 fep->stats.rx_frame_errors++;
687 fep->stats.rx_packets++;
689 fep->stats.rx_bytes += pkt_len;
690 data = fep->rx_vaddr[bdp - fep->rx_bd_base];
694 if (fep->ph_rxhandler) {
695 if (((struct ethhdr *)data)->h_proto == fep->ph_proto) {
696 switch (fep->ph_rxhandler(data, pkt_len, regval,
697 fep->ph_priv)) {
704 fep->stats.rx_errors++;
722 fep->stats.rx_dropped++;
742 bdp = fep->rx_bd_base;
754 if (fep->ph_regaddr) regval = *fep->ph_regaddr;
757 fep->cur_rx = (cbd_t *)bdp;
766 struct fec_enet_private *fep;
771 fep = (struct fec_enet_private *)dev->priv;
796 struct fec_enet_private *fep;
803 fep = dev->priv;
804 regval |= fep->phy_addr << 23;
809 spin_lock_irqsave(&fep->lock, flags);
827 spin_unlock_irqrestore(&fep->lock, flags);
845 struct fec_enet_private *fep = dev->priv;
846 volatile uint *s = &(fep->phy_status);
857 fep->link = (*s & PHY_STAT_LINK) ? 1 : 0;
862 struct fec_enet_private *fep = dev->priv;
863 volatile uint *s = &(fep->phy_status);
875 struct fec_enet_private *fep = dev->priv;
876 volatile uint *s = &(fep->phy_status);
903 struct fec_enet_private *fep = dev->priv;
904 volatile uint *s = &(fep->phy_status);
977 struct fec_enet_private *fep = dev->priv;
978 volatile uint *s = &(fep->phy_status);
1055 struct fec_enet_private *fep = dev->priv;
1056 volatile uint *s = &(fep->phy_status);
1130 volatile struct fec_enet_private *fep = dev->priv;
1131 uint s = fep->phy_status;
1143 fep->phy_status = s;
1203 struct fec_enet_private *fep = dev->priv;
1204 volatile uint *s = &(fep->phy_status);
1206 if (!fep->link && !fep->old_link) {
1213 if (!fep->link) {
1239 struct fec_enet_private *fep =
1241 struct net_device *dev = fep->dev;
1242 volatile uint *s = &(fep->phy_status);
1267 fep->sequence_done = 1;
1272 struct fec_enet_private *fep =
1274 struct net_device *dev = fep->dev;
1277 fep->link = (fep->phy_status & PHY_STAT_LINK) ? 1 : 0;
1279 fep->old_link = fep->link;
1281 if (fep->link) {
1283 if (fep->phy_status
1296 struct fec_enet_private *fep = dev->priv;
1298 fep->dev = dev;
1299 INIT_WORK(&fep->phy_task, mii_relink);
1300 schedule_work(&fep->phy_task);
1305 struct fec_enet_private *fep = dev->priv;
1307 fep->dev = dev;
1308 INIT_WORK(&fep->phy_task, mii_display_config);
1309 schedule_work(&fep->phy_task);
1326 struct fec_enet_private *fep;
1329 fep = dev->priv;
1330 fep->phy_id |= (mii_reg & 0xffff);
1333 if(phy_info[i]->id == (fep->phy_id >> 4))
1338 dev->name, fep->phy_id);
1340 fep->phy = phy_info[i];
1341 fep->phy_id_done = 1;
1344 dev->name, fep->phy_addr, fep->phy->name, fep->phy_id);
1353 struct fec_enet_private *fep;
1356 fep = dev->priv;
1362 fep->phy_id = phytype << 16;
1365 fep->phy_addr++;
1366 if (fep->phy_addr < 32) {
1387 struct fec_enet_private *fep = dev->priv;
1402 mii_do_cmd(dev, fep->phy->ack_int);
1420 struct fec_enet_private *fep = dev->priv;
1427 fep->sequence_done = 0;
1428 fep->link = 0;
1430 if (fep->phy) {
1431 mii_do_cmd(dev, fep->phy->ack_int);
1432 mii_do_cmd(dev, fep->phy->config);
1434 while(!fep->sequence_done)
1437 mii_do_cmd(dev, fep->phy->startup);
1443 fep->link = 1;
1463 struct fec_enet_private *fep = (struct fec_enet_private *)dev->priv;
1465 return &fep->stats;
1480 struct fec_enet_private *fep;
1483 fep = (struct fec_enet_private *)dev->priv;
1510 struct fec_enet_private *fep;
1527 dev = alloc_etherdev(sizeof(*fep));
1531 fep = dev->priv;
1583 fep->rx_bd_base = cbd_base;
1584 fep->tx_bd_base = cbd_base + RX_RING_SIZE;
1586 fep->skb_cur = fep->skb_dirty = 0;
1590 bdp = fep->rx_bd_base;
1607 fep->rx_vaddr[k++] = ba;
1620 fep->ph_lock = 0;
1621 fep->ph_rxhandler = fep->ph_txhandler = NULL;
1622 fep->ph_proto = 0;
1623 fep->ph_regaddr = NULL;
1624 fep->ph_priv = NULL;
1685 fecp->fec_mii_speed = fep->phy_speed =
1720 fep->phy_id_done = 0;
1721 fep->phy_addr = 0;
1736 struct fec_enet_private *fep;
1746 fep = dev->priv;
1777 fecp->fec_r_des_start = iopa((uint)(fep->rx_bd_base));
1778 fecp->fec_x_des_start = iopa((uint)(fep->tx_bd_base));
1780 fep->dirty_tx = fep->cur_tx = fep->tx_bd_base;
1781 fep->cur_rx = fep->rx_bd_base;
1785 fep->skb_cur = fep->skb_dirty = 0;
1787 if (fep->tx_skbuff[i] != NULL) {
1788 dev_kfree_skb(fep->tx_skbuff[i]);
1789 fep->tx_skbuff[i] = NULL;
1795 bdp = fep->rx_bd_base;
1811 bdp = fep->tx_bd_base;
1836 fep->full_duplex = duplex;
1845 fecp->fec_mii_speed = fep->phy_speed;
1870 struct fec_enet_private *fep;
1880 fep = dev->priv;
1906 fecp->fec_mii_speed = fep->phy_speed;