x86_64 port and BSP (GSoC 2018)

Chris Johns chrisj at rtems.org
Tue Mar 20 02:53:50 UTC 2018

On 19/03/2018 18:36, Amaan Cheval wrote:
> Thanks for checking the tool status!
> TLS support for the tool seems okay to me as well - I see the TLS program header
> and the "T" flag for the ".tbss" section header, as you'd expect in the ELF. I
> haven't looked into the run-time support for TLS in RTEMS yet - is there
> something I need to dig into there?
> How do we determine if we need multilib support?

GCC should be able to dump it configuration, try adding `--print-multi-lib`.

>>  I'd encourage you to flesh out
>> the plan for one of the "bonus" areas for this phase. That way, if you
>> reach it, you will be prepared to undertake it without having to think
>> too hard about the design aspects.
> I've added a few bullets about SMP support and it's SMP-specific APIC related tasks.

This requires bringing code in from FreeBSD which includes Intel code to manage
these tables.

>> FYI one step I do for new ports is to get to the point where I can link all tests with stubs or first quick cuts at the port and bsp. 
> That's a good tip! I've added that to the phase 1 deliverable, since it seems
> like an important step - I'll aim to get here much sooner, though.
>> I have always thought the first part of this project would be to get 
>> an UEFI "hello world" running on Qemu. That is the entry point to the
>> BSP and as Chris pointed out, there is a fair amount of work just
>> to ensure you can do prints to the optional video and later serial port.
> The UEFI "hello world" would be achievable through a minimal BSP (primarily
> boot/init code) and stubs for the rest (console, idle thread clock, fake
> context-switching & ISR handling), right?

In theory. We need to resolve the way we build the UEFI header as listed in the
ticket for this task.

>> All that should be doable and testable on qemu.
> Sweet! A question about hardware requirements; how do you guys usually test and
> debug hardware problems? 

What is involved in booting on qemu with UEFI + 64bit?

> Is there any equipment I'll likely need or should look
> into (JTAG)?

Not that I know of. Intel has a different JTAG like protocol on it's Atom
devices available under NDA some commercial debuggers support.

Qemu is nice because you get a built in debugger that lets you step around these
early bootloader instructions.

> Besides, what should I verify about the computers I do have, besides them having
> UEFI firmware?

Not too much. Being about to run on a Minnow board would be nice.


More information about the devel mailing list