Lines Matching +full:dp +full:- +full:phy1

2    ns8382x.c: A U-Boot driver for the NatSemi DP8382[01].
19 Written/copyright 1999-2002 by Donald Becker.
38 http://www.national.com/pf/DP/DP83820.html
39 http://www.national.com/pf/DP/DP83821.html
44 * Initial U-Boot Release.
229 /* 1K-base T control register */
269 #define bus_to_phys(a) pci_mem_to_phys((pci_dev_t)dev->priv, a)
270 #define phys_to_bus(a) pci_phys_to_mem((pci_dev_t)dev->priv, a)
275 return le16_to_cpu(*(vu_short *) (addr + dev->iobase)); in INW()
281 return le32_to_cpu(*(vu_long *) (addr + dev->iobase)); in INL()
287 *(vu_short *) ((addr + dev->iobase)) = cpu_to_le16(command); in OUTW()
293 *(vu_long *) ((addr + dev->iobase)) = cpu_to_le32(command); in OUTL()
345 sprintf(dev->name, "dp8382x#%d", card_number); in ns8382x_initialize()
346 dev->iobase = bus_to_phys(iobase); in ns8382x_initialize()
347 dev->priv = (void *) devno; in ns8382x_initialize()
348 dev->init = ns8382x_init; in ns8382x_initialize()
349 dev->halt = ns8382x_disable; in ns8382x_initialize()
350 dev->send = ns8382x_send; in ns8382x_initialize()
351 dev->recv = ns8382x_poll; in ns8382x_initialize()
353 /* ns8382x has a non-standard PM control register in ns8382x_initialize()
365 char *mac = (char *)&dev->enetaddr[i * 2]; in ns8382x_initialize()
374 u32 rev, phy1; in ns8382x_initialize() local
376 phy1 = mdio_read(dev, phyAddress, PHYIDR1); in ns8382x_initialize()
377 if (phy1 == 0x2000) { /*check for 83861/91 */ in ns8382x_initialize()
413 debug("%s: Transceiver 10%s %s duplex.\n", dev->name, in ns8382x_initialize()
417 debug("%s: %02x:%02x:%02x:%02x:%02x:%02x\n", dev->name, in ns8382x_initialize()
418 dev->enetaddr[0], dev->enetaddr[1], in ns8382x_initialize()
419 dev->enetaddr[2], dev->enetaddr[3], in ns8382x_initialize()
420 dev->enetaddr[4], dev->enetaddr[5]); in ns8382x_initialize()
444 Read and write MII registers using software-generated serial MDIO
463 while (--bits >= 0) { in mdio_sync()
478 for (i = 15; i >= 0; i--) { in mdio_read()
486 /* Read the two transition, 16 data, and wire-idle bits. */ in mdio_read()
487 for (i = 19; i > 0; i--) { in mdio_read()
505 for (i = 31; i >= 0; i--) { in mdio_write()
514 for (i = 2; i > 0; i--) { in mdio_write()
551 /*turn off 64 bit ops && Ten-bit interface in ns8382x_init()
552 * && big-endian mode && extended status */ in ns8382x_init()
561 debug("%s: Setting TxConfig Register %#08X\n", dev->name, tx_config); in ns8382x_init()
562 debug("%s: Setting RxConfig Register %#08X\n", dev->name, rx_config); in ns8382x_init()
605 OUTW(dev, dev->enetaddr[i] + (dev->enetaddr[i + 1] << 8), in ns8382x_init_rxfilter()
702 debug("%s: Setting 10%s %s-duplex based on negotiated link" in ns8382x_check_duplex()
703 " capability.\n", dev->name, (gig) ? "00" : (hun) ? "0" : "", in ns8382x_check_duplex()
714 debug("%s: Resetting TxConfig Register %#08X\n", dev->name, tx_config); in ns8382x_check_duplex()
715 debug("%s: Resetting RxConfig Register %#08X\n", dev->name, rx_config); in ns8382x_check_duplex()
728 debug("%s: %setting Mode1000\n", dev->name, (gig) ? "S" : "Uns"); in ns8382x_check_duplex()
767 dev->name, tx_stat); in ns8382x_send()
790 * Returns (copies) the packet to the array dev->packet.
807 length = (rx_status & DSIZE) - CRC_SIZE; in ns8382x_poll()
828 /* re-enable the potentially idle receive state machine */ in ns8382x_poll()