Kim Phillips wrote:
+               /* master reset */
+               err = phydev->bus->write(phydev->bus, 30, 0, 0x175c);
+               if (err < 0)
+                       return err;
+
+               /* data sheet specifies reset period is 2 msec */
+               udelay(3000);
+
+               /* enable IP175C mode */
+               err = phydev->bus->write(phydev->bus, 29, 31, 0x175c);
+               if (err < 0)
+                       return err;

1) use mdelay()

2) write-followed-by-delay does not guarantee the delay, because you have not factored in PCI posting (or other bus delays)


+               /* Set MII0 speed and duplex (in PHY mode) */
+               err = phydev->bus->write(phydev->bus, 29, 22, 0x420);
+               if (err < 0)
+                       return err;
+
+               for (i=0; i<5; i++) {
+                       err = phydev->bus->write(phydev->bus, i, MII_BMCR, 
BMCR_RESET);
+               }
+               udelay(3000);

ditto


+               full_reset_performed = 1;
+       }
+
+       if (phydev->addr != 4) {
+               phydev->state = PHY_RUNNING;
+               phydev->speed = SPEED_100;
+               phydev->duplex = DUPLEX_FULL;
+               phydev->link = 1;
+               netif_carrier_on(phydev->attached_dev);
+       }
+
+       return 0;
+}
+
+static int ip175c_read_status(struct phy_device *phydev)
+{
+       if (phydev->addr == 4) { /* if WAN port */
+               genphy_read_status(phydev);
+       } else {
+               /* Don't need to read status for switch ports */
+               phydev->irq = PHY_IGNORE_INTERRUPT;
+       }
+
+       return 0;
+}
+
+
+static int ip175c_config_aneg(struct phy_device *phydev)
+{
+       if (phydev->addr == 4) { /* if WAN port */
+               genphy_config_aneg(phydev);
+       }

codingstyle: remove braces around single C statements

-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to