Date: Mon, 13 Oct 2008 12:56:48 -0600 (MDT) From: "M. Warner Losh" <imp@bsdimp.com> To: bms@incunabulum.net Cc: freebsd-embedded@FreeBSD.org Subject: Re: ELF loader problem with CFE on ASUS WL500g Message-ID: <20081013.125648.1239212699.imp@bsdimp.com> In-Reply-To: <48F39798.3010606@incunabulum.net> References: <48F39798.3010606@incunabulum.net>
next in thread | previous in thread | raw e-mail | index | archive | help
In message: <48F39798.3010606@incunabulum.net>
Bruce M Simpson <bms@incunabulum.net> writes:
: Hi,
:
: I just tried to boot the WGT634U kernel on the ASUS WL500g.
:
: CFE version is 1.0.37.
:
: It appears there's yet another problem with the ELF loader there -- it
: now looks at the p_paddr field. As this is out of range for physical
: memory (GNU ld set it the same as p_vaddr), it balks.
I thought you could fix this with linker script tweaks...
: Any suggestions for workarounds? I tried using the GNU ld "MEMORY"
: directive, however, it seems to munge p_vaddr also.
bummer... It sounds a bit like we need to do the normal tricks of
'early' boot loaders: turn on the mmu and then jump to . to transition
from PA to VA addresses...
: It looks like objcopy's --change-section-lma option, with a negative
: offset, would do what I want, however it will need to be scripted to
: work on named sections.
You might try to mock-up a test with a newer version of binutils than
2.15 we're using?
Warner
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20081013.125648.1239212699.imp>
