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 01/27 v2] Blackfin: bfin_mac: force board_get_enetaddr() usage
Date: Wed, 11 Feb 2009 00:57:07 -0500	[thread overview]
Message-ID: <200902110057.08993.vapier@gentoo.org> (raw)
In-Reply-To: <499265E1.4050903@gmail.com>

On Wednesday 11 February 2009 00:45:05 Ben Warren wrote:
> Mike Frysinger wrote:
> > On Tuesday 03 February 2009 14:40:00 Mike Frysinger wrote:
> >> i think we can agree that this does not scale at all.  if, however, we
> >> change the global data to something like:
> >> typedef struct bd_info {
> >> 	...
> >> #ifdef CONFIG_NET_MULTI
> >> 	uchar bi_enetXaddr[CONFIG_NET_MULTI_MAX][6];
> >> # define bi_enetaddr bi_enetXaddr[0]
> >> #else
> >> 	uchar bi_enetaddr[6];
> >> #endif
> >> 	...
> >> };
> >
> > Ben: does this sound reasonable ?  if so, i can start a patch series
> > moving in this direction ...
>
> Thanks for tackling this cluster$%@#.  I'm not crazy about the
> CONFIG_NET_MULTI_MAX, but then I'm not really sure why the ethernet
> addresses exist in global data on boards with CONFIG_NET_MULTI.  The net
> library doesn't use them, most (maybe all?) of the drivers don't look at
> it.  Some common code does, but does it need to?  Maybe it's needed to
> pass to some operating systems?  This is an example of something that
> could use some serious refactoring, but I expect it's an onion with
> many, many layers.  OTOH, if you're going to change the name of a
> variable in global data, you'll find out really fast where it's used.
> Maybe we can gut it completely?  I'm lacking in historical perspective
> and my world view is pretty limited, so hopefully others (read WD) will
> chime in.

i provided a backwards compat define so no code would break:
# define bi_enetaddr bi_enetXaddr[0]

but simply dropping all bi_enet*addr consumption in global data sounds like 
one way of tackling the situation.  i see the structure as kind of a binary 
cache of the environment.  but as a cache, it certainly shows today that it 
gets out of sync and many places use only one or the other.  and with the 
utility functions i proposed, transitioning over to having the env be the only 
storage location wouldnt be too bad at all i dont think.
-mike

  reply	other threads:[~2009-02-11  5:57 UTC|newest]

Thread overview: 73+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-01-29  0:03 [U-Boot] [PATCH 00/27] Blackfin updates for 2009.03 (part 2) Mike Frysinger
2009-01-29  0:03 ` [U-Boot] [PATCH 01/27] Blackfin: bfin_mac: force board_get_enetaddr() usage Mike Frysinger
2009-01-29  5:43   ` Ben Warren
2009-01-29  5:53     ` Mike Frysinger
2009-01-29  6:01       ` Ben Warren
2009-01-29  6:16         ` Mike Frysinger
2009-01-29  6:20           ` Ben Warren
2009-01-29 10:43           ` Wolfgang Denk
2009-01-29  6:59     ` [U-Boot] [PATCH 01/27 v2] " Mike Frysinger
2009-01-29  7:53       ` Ben Warren
2009-01-29 10:45       ` Wolfgang Denk
2009-01-29 16:35         ` Mike Frysinger
2009-01-29 19:03           ` Wolfgang Denk
2009-01-29 20:25             ` Mike Frysinger
2009-01-29 20:41               ` Wolfgang Denk
2009-01-29 21:05                 ` Mike Frysinger
2009-01-29 21:17                   ` Wolfgang Denk
2009-01-29 21:48                     ` Mike Frysinger
2009-01-29 22:18                       ` Wolfgang Denk
2009-01-30  1:23                         ` Mike Frysinger
2009-02-02 20:05                           ` Mike Frysinger
2009-02-02 21:04                             ` Wolfgang Denk
2009-02-03  0:37                               ` Mike Frysinger
2009-02-03  8:16                                 ` Wolfgang Denk
2009-02-03 19:40                                   ` Mike Frysinger
2009-02-10 20:36                                     ` Mike Frysinger
2009-02-11  5:45                                       ` Ben Warren
2009-02-11  5:57                                         ` Mike Frysinger [this message]
2009-02-11 12:17                                         ` Wolfgang Denk
2009-02-11 19:25                                           ` Mike Frysinger
2009-02-11 20:15                                             ` Ben Warren
2009-02-12  1:29                                               ` Mike Frysinger
2009-02-12  6:24                                                 ` Ben Warren
2009-02-12  6:30                                                   ` Mike Frysinger
2009-02-12  7:33                                                 ` Wolfgang Denk
2009-02-12  7:57                                                   ` Mike Frysinger
2009-01-30  0:59                 ` [U-Boot] [PATCH] net: new utility functions eth_{parse, {get, set}env}_enetaddr() Mike Frysinger
2009-01-30  1:09                 ` [U-Boot] [PATCH 01/27 v3] Blackfin: bfin_mac: force boards to setup the MAC themselves Mike Frysinger
2009-01-30  1:09                 ` [U-Boot] [PATCH] Blackfin: bf537-stamp: rewrite MAC-in-flash handling Mike Frysinger
2009-01-29 17:49     ` [U-Boot] [PATCH 01/27] Blackfin: bfin_mac: force board_get_enetaddr() usage Scott Wood
2009-01-29 10:30   ` Wolfgang Denk
2009-01-29  0:03 ` [U-Boot] [PATCH 02/27] Blackfin: bfin_mac: set MDCDIV based on SCLK Mike Frysinger
2009-01-29  5:46   ` Ben Warren
2009-01-29  0:03 ` [U-Boot] [PATCH 03/27] Blackfin: bfin_mac: cleanup MII/PHY functions Mike Frysinger
2009-01-29  5:48   ` Ben Warren
2009-01-29  0:03 ` [U-Boot] [PATCH 04/27] Blackfin: bfin_mac: respect CONFIG_PHY_{ADDR, CLOCK_FREQ} Mike Frysinger
2009-01-29  5:50   ` Ben Warren
2009-01-29  0:03 ` [U-Boot] [PATCH 05/27] Blackfin: bfin_mac: use common debug() Mike Frysinger
2009-01-29  5:51   ` Ben Warren
2009-01-29  0:03 ` [U-Boot] [PATCH 06/27] Blackfin: bfin_mac: convert CONFIG_BFIN_MAC_RMII to CONFIG_RMII Mike Frysinger
2009-01-29  6:03   ` Ben Warren
2009-01-29  0:03 ` [U-Boot] [PATCH 07/27] Blackfin: bfin_mac: cleanup pointer/casts for aliasing issues Mike Frysinger
2009-01-29  6:05   ` Ben Warren
2009-01-29  0:03 ` [U-Boot] [PATCH 08/27] Blackfin: only build post code when CONFIG_POST Mike Frysinger
2009-01-29  0:03 ` [U-Boot] [PATCH 09/27] Blackfin: add driver for on-chip SPI controller Mike Frysinger
2009-01-29  0:03 ` [U-Boot] [PATCH 10/27] Blackfin: dont check baud if it wont actually get used Mike Frysinger
2009-01-29  0:03 ` [U-Boot] [PATCH 11/27] Blackfin: enable --gc-sections Mike Frysinger
2009-01-29  0:03 ` [U-Boot] [PATCH 12/27] Blackfin: cache core/system clock values Mike Frysinger
2009-01-29  0:03 ` [U-Boot] [PATCH 13/27] Blackfin: setup bi_enetaddr for single nets Mike Frysinger
2009-01-29  0:03 ` [U-Boot] [PATCH 14/27] Blackfin: rewrite cache handling functions Mike Frysinger
2009-01-29  0:03 ` [U-Boot] [PATCH 15/27] Blackfin: dma_memcpy(): fix random failures Mike Frysinger
2009-01-29  0:03 ` [U-Boot] [PATCH 16/27] Blackfin: only flag L1 instruction for DMA memcpy Mike Frysinger
2009-01-29  0:03 ` [U-Boot] [PATCH 17/27] Blackfin: use 8/16/32 bit transfer widths in dma_memcpy() Mike Frysinger
2009-01-29  0:03 ` [U-Boot] [PATCH 18/27] Blackfin: fix up EBIU defines Mike Frysinger
2009-01-29  0:03 ` [U-Boot] [PATCH 19/27] Blackfin: build with -mno-fdpic Mike Frysinger
2009-01-29  0:03 ` [U-Boot] [PATCH 20/27] Blackfin: add driver for on-chip NAND controller Mike Frysinger
2009-01-29  0:03 ` [U-Boot] [PATCH 21/27] Blackfin: add driver for on-chip ATAPI controller Mike Frysinger
2009-01-29  0:03 ` [U-Boot] [PATCH 22/27] Blackfin: add port I bits Mike Frysinger
2009-01-29  0:03 ` [U-Boot] [PATCH 23/27] Blackfin: update asm-blackfin/posix_types.h to latest Linux version Mike Frysinger
2009-01-29  0:03 ` [U-Boot] [PATCH 24/27] Blackfin: set default CONFIG_ENV_SPI_CS based on bootrom Mike Frysinger
2009-01-29  0:03 ` [U-Boot] [PATCH 25/27] Blackfin: output booting source when booting Mike Frysinger
2009-01-29  0:03 ` [U-Boot] [PATCH 26/27] Blackfin: add port muxing for BF51x SPI Mike Frysinger
2009-01-29  0:03 ` [U-Boot] [PATCH 27/27] Blackfin: add driver for on-chip MMC/SD controller Mike Frysinger

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=200902110057.08993.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