----- "Mike Frysinger" <vap...@gentoo.org> wrote: > On Monday, August 22, 2011 01:11:57 Ajay Bhargav wrote: > > + writel((u32) darmdfec->htpr, ®s->htpr); > > do you really need to cast it yourself ? seems to show up a lot in > this file. > > > +#ifdef ETH_DUMP_REGS > > + eth_dump_regs(dev); > > +#endif > > use #ifdef DEBUG > > > + while (cmd_sts & BUF_OWNED_BY_DMA) { > > ... > > + }; > > no semi-colon needed > > > +int armada100_fec_initialize() > > +{ > > ... > > + darmdfec->regs = (void *) ARMD1_FEC_BASE; > > make the reg base a parameter to armada100_fec_initialize() > > > + darmdfec = malloc(sizeof(struct armdfec_device)); > > sizeof(*darmdfec) > > > > + while (!eth_getenv_enetaddr(s, dev->enetaddr)) { > > + /* Generate Private MAC addr if not set */ > > + dev->enetaddr[0] = 0x00; > > + dev->enetaddr[1] = 0x50; > > + dev->enetaddr[2] = 0x43; > > +#if defined(CONFIG_SKIP_LOCAL_MAC_RANDOMIZATION) > > + /* Generate fixed lower MAC half */ > > + dev->enetaddr[3] = 0x11; > > + dev->enetaddr[4] = 0x22; > > + dev->enetaddr[5] = 0x33; > > +#else > > + /* Generate random lower MAC half */ > > + dev->enetaddr[3] = get_random_byte((u8)read_timer()); > > + dev->enetaddr[4] = get_random_byte(dev->enetaddr[3]); > > + dev->enetaddr[5] = get_random_byte(dev->enetaddr[4]); > > +#endif > > + eth_setenv_enetaddr(s, dev->enetaddr); > > + } > > NAK on this whole thing. initialize dev->write_hwaddr and that is the > only > thing you should do. the higher eth layers will take care of calling > that as > necessary. > > > + dev->init = (void *) armdfec_init; > > + dev->halt = (void *) armdfec_halt; > > + dev->send = (void *) armdfec_send; > > + dev->recv = (void *) armdfec_recv; > > drop the (void*) casts. either you dont need them, or your funcs here > are > wrong and need fixing. > > > +#if defined(CONFIG_PHY_BASE_ADR) > > + miiphy_write(dev->name, PHY_ADR_REQ, PHY_ADR_REQ, > > + (u16) CONFIG_PHY_BASE_ADR); > > +#else > > + /* Search phy address from range 0-31 */ > > + phy_adr = ethernet_phy_detect(dev); > > + if (phy_adr < 0) { > > + printf("Error: PHY not detected at address range 0-31\n"); > > + return -1; > > + } else { > > + debug("PHY detected at addr %d\n", phy_adr); > > + miiphy_write(dev->name, PHY_ADR_REQ, PHY_ADR_REQ, > > + (u16) phy_adr); > > + } > > +#endif > > this should be done in the armdfec_init() func, not the initialize > func > -mike
Hi Mike, Thank you for comments.. I will make the required changes. Regards, Ajay Bhargav _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot