public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Mike Frysinger <vapier@gentoo.org>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 1/3] net: Adds Fast Ethernet Controller driver for Armada100
Date: Mon, 22 Aug 2011 12:02:26 -0400	[thread overview]
Message-ID: <201108221202.28078.vapier@gentoo.org> (raw)
In-Reply-To: <1313989919-3779-1-git-send-email-ajay.bhargav@einfochips.com>

On Monday, August 22, 2011 01:11:57 Ajay Bhargav wrote:
> +	writel((u32) darmdfec->htpr, &regs->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
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part.
Url : http://lists.denx.de/pipermail/u-boot/attachments/20110822/06a8031c/attachment.pgp 

  parent reply	other threads:[~2011-08-22 16:02 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-08-22  5:11 [U-Boot] [PATCH 1/3] net: Adds Fast Ethernet Controller driver for Armada100 Ajay Bhargav
2011-08-22 12:53 ` Marek Vasut
2011-08-23  5:31   ` Ajay Bhargav
2011-08-23  6:11   ` Ajay Bhargav
2011-08-23 10:33     ` Marek Vasut
2011-08-23 10:29       ` Ajay Bhargav
2011-08-23 11:06         ` Wolfgang Denk
2011-08-23 11:41           ` Ajay Bhargav
2011-08-23 12:59           ` Ajay Bhargav
2011-08-23 13:34             ` Wolfgang Denk
2011-08-23 15:30               ` Ralph Metzler
2011-08-23 17:21                 ` Mike Frysinger
2011-08-23 17:43                 ` Wolfgang Denk
2011-08-24  5:09               ` Ajay Bhargav
2011-08-22 16:02 ` Mike Frysinger [this message]
2011-08-22 16:07   ` Marek Vasut
2011-08-22 16:42     ` Mike Frysinger
2011-08-22 16:45       ` Marek Vasut
2011-08-22 17:11         ` Mike Frysinger
2011-08-22 18:19           ` jason.hobbs at calxeda.com
2011-08-23  5:36   ` Ajay Bhargav

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=201108221202.28078.vapier@gentoo.org \
    --to=vapier@gentoo.org \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox