<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Mar 8, 2016 at 8:46 PM, Saket Sinha <span dir="ltr"><<a href="mailto:saket.sinha89@gmail.com" target="_blank">saket.sinha89@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Joel,<br>
<span class=""><br>
<br>
On Tue, Mar 1, 2016 at 5:40 AM, Joel Sherrill <<a href="mailto:joel@rtems.org">joel@rtems.org</a>> wrote:<br>
><br>
><br>
> On Mon, Feb 29, 2016 at 2:00 PM, Saket Sinha <<a href="mailto:saket.sinha89@gmail.com">saket.sinha89@gmail.com</a>><br>
> wrote:<br>
>><br>
>> On Tue, Mar 1, 2016 at 1:14 AM, Saket Sinha <<a href="mailto:saket.sinha89@gmail.com">saket.sinha89@gmail.com</a>><br>
>> wrote:<br>
>> > Hi,<br>
>> ><br>
>> > Congratulations to the coreboot team for selection in GSOC 2016.<br>
>><br>
>> Sorry for the typo. I meant the RTEMS team. I worked for Coreboot last<br>
>> year so still relate to with GSOC everytime mistakenly.<br>
>><br>
>> ><br>
>> > I am interested in working on x86_64 BSP as GSOC2016 project with<br>
>> > RTEMS and with initial guidance from Joel as to how to get started, I<br>
>> > am working on the same.<br>
>><br>
><br>
> Great! This is a nice project we need.<br>
><br>
> Have you done the RTEMS GSoC hello world project?<br>
><br>
<br>
</span>Yes. I am done with that.<br>
<span class=""><br>
> The x86_64 now has tools for 4.12. It needs a port and a BSP. The BSP can<br>
> share<br>
> with the pc386 but we likely have to address the dependency on legacy<br>
> hardware.<br>
> Some of those issues are captured in the pc386 project page. I have started<br>
> to try<br>
> to fix the dependency on legacy PCI BIOS but there is more like APIC support<br>
> and<br>
> device probes.<br>
><br>
<br>
</span>I have tried building x86_64 with RTEMS source builder just to verify<br>
where we are.<br>
Now my question in how to test it?<br>
Do you want me to run it on a real x86_64 hardware or qemu-x86_64<br>
would be enough to test it ?<br></blockquote><div><br></div><div>For all the initial work, qemu-system-x86_64 will be sufficient. Once it is</div><div>functional enough, it will need to be periodically tested on real HW.</div><div><br></div><div>As a starting point, you will need to add score/cpu/x86_64 and get a</div><div>stub compiling with no BSP. Then you need a simple x86_64 BSP.</div><div>Initially I would recommend focusing on the minimum required to</div><div>run hello world.</div><div><br></div><div>But a lot of the regular pc386 BSP should be sharable and reusable with</div><div>an x86_64 BSP. I see that as a real challenge in this effort. We need</div><div>to decide where to move shared code. Since it is shared between two</div><div>architectures, it is something like libbsp/shared/PC but that is open</div><div>for discussion. For sure, you want to share as much code as possible</div><div>and ensure the pc386 BSP continues to work.</div><div><br></div><div>FWIW I have a series of patches that remove the need for legacy</div><div>PCI BIOS and allow the use of PCI UARTs as the console. But</div><div>there are other general issues impacting both 32 and 64 bit BSPs.</div><div><br></div><div>+ we need APIC support</div><div>+ probe for what's available using ACPI</div><div> - probe for legacy IDE/ATA when not there hangs</div><div> - need to probe for legacy COM ports</div><div><br></div><div>But you have to get by hello world on x86_64 first. <br><br>Work on your proposal so we can fine tune the plan.</div><div><br></div><div>--joel</div></div><br></div></div>