All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mike Frysinger <vapier@gentoo.org>
To: u-boot@lists.denx.de
Subject: [U-Boot-Users] [Patch] Disable icache before call the first line of kernel in do_bootelf().
Date: Mon, 28 Jan 2008 21:14:13 -0500	[thread overview]
Message-ID: <200801282114.14393.vapier@gentoo.org> (raw)
In-Reply-To: <20070813155047.C419424041@gemini.denx.de>

On Monday 13 August 2007, Wolfgang Denk wrote:
> in message <200708131052.44472.vapier@gentoo.org> you wrote:
> > so using weak hooks is OK now ?  i think it'd be good to migrate all of
> > the
>
> It always has been OK - just nobody bothered to use it. [And I didn't
> even know about it when I started working on PPCBoot.]
>
> > ugly boote/bootm/etc... cruft to external weaks and let arches define
> > their own
>
> Yes, a few #ifdef's can be eliminated that way.

unfortunately, using weak symbols and overriding elsewhere doesnt look like 
it's possible currently due to the way ld searches archives.  for example, if 
i do something like:
common/cmd_elf.c:
__attribute__((weak)) do_bootelf_setup() { ... current code ... }
do_bootelf() {
	...
	do_bootelf_setup();
	...

and then i want to override this with a Blackfin version:
lib_blackfin/bootelf_setup.c:
do_bootelf_setup() { ... }

but since the linking process looks like:
ld ... --start-group ... \
	... lib_blackfin/libblackfin.a ... \
	... common/libcommon.a ... \
	--end-group ...
ld will pick the weak symbol provided by libcommon.a even though a strong 
symbol is also available in libblackfin.a :(

so our only realistic options are:
 - create another static archive in common/ for weak symbols and specify it 
just before libcommon.a
 - live with #ifdef's, but minimize the crappy situation by splitting out just 
the relevant code so the main bootelf function stays clean
-mike
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 827 bytes
Desc: This is a digitally signed message part.
Url : http://lists.denx.de/pipermail/u-boot/attachments/20080128/a3885df1/attachment.pgp 

  parent reply	other threads:[~2008-01-29  2:14 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-08-08  5:50 [U-Boot-Users] [Patch] Disable icache before call the first line of kernel in do_bootelf() Sonic Zhang
2007-08-08  6:50 ` Wolfgang Denk
2007-08-08  7:21   ` Michal Simek
2007-08-08 15:47   ` [U-Boot-Users] [Patch] Disable icache before call the firstline " Robin Getz
2007-08-08 15:54     ` Wolfgang Denk
2007-08-08 18:19       ` Stefan Roese
2007-08-08  7:33 ` [U-Boot-Users] [Patch] Disable icache before call the first line " Sonic Zhang
2007-08-08 15:41   ` Wolfgang Denk
2007-08-13 14:52     ` Mike Frysinger
2007-08-13 15:50       ` Wolfgang Denk
2007-08-13 16:21         ` Mike Frysinger
2008-01-29  2:14         ` Mike Frysinger [this message]
2008-01-29 22:35           ` Wolfgang Denk
2008-01-30  0:12             ` Mike Frysinger
2008-01-30 15:36               ` Johannes Stezenbach
2008-02-01 15:42                 ` Mike Frysinger
2008-02-01 15:44         ` [U-Boot-Users] [patch] allow ports to override bootelf behavior Mike Frysinger
2008-04-13 22:01           ` Wolfgang Denk
2008-02-01 15:58         ` [U-Boot-Users] [patch] allow ports to override go behavior Mike Frysinger
2008-02-01 16:36           ` Mike Frysinger
2008-04-13 22:01             ` Wolfgang Denk
2008-04-13 22:01           ` Wolfgang Denk

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=200801282114.14393.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.