On Wed, Jun 17, 2009 at 10:15 AM, Marc Jones<[email protected]> wrote: > On Wed, Jun 17, 2009 at 11:05 AM, ron minnich<[email protected]> wrote: >> -fpic is the wrong way to go ... can we talk about this relocatable >> code a bit? I need to catch up. > > > The code is a PCI option ROM that can be copied and run at some > arbitrary location between 0xC0000 and 0x100000. For 16bit code the > segment would be loaded and there is no problem. I don't know the > right way to do this for 32bit flat mode code.
I think we need to seek a common solution, and after discussion with segher from a while back I think -fpic and -fpie as we do it in v3 are rather questionable. What we should look to do is a run command which sets a new entry in the gdt and does a ljmp which sets CS to that entry. Then we link with that code to run at 0. This is what FILO does and it works well. thanks ron -- coreboot mailing list: [email protected] http://www.coreboot.org/mailman/listinfo/coreboot

