<div dir="ltr">Unless someone sees a reason to delay merging this, I plan to merge it today.<div>It is new and should have no impact on anything else. Patches to improve</div><div>style, etc. can be followups.</div><div><br></div><div>--joel</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Aug 13, 2018 at 6:27 AM, Amaan Cheval <span dir="ltr"><<a href="mailto:amaan.cheval@gmail.com" target="_blank">amaan.cheval@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">This patch series includes all of my remaining work so far on the x86_64 BSP. It<br>
supports:<br>
<br>
* Static paging support using 1GiB superpages<br>
* RTEMS interrupts<br>
* A fairly accurate clock driver based on the APIC timer calibrated by the PIT<br>
<br>
ticker.exe passes reliably on -O0 optimization level, and it seems like it<br>
_should_ on -O2 as well, except for the issue I've been describing on this<br>
thread:<br>
<br>
<a href="https://lists.rtems.org/pipermail/devel/2018-August/022825.html" rel="noreferrer" target="_blank">https://lists.rtems.org/<wbr>pipermail/devel/2018-August/<wbr>022825.html</a><br>
<br>
bsps/x86_64/amd64/clock/clock.<wbr>c | 299 ++++++++++++++++++<br>
bsps/x86_64/amd64/config/<wbr>amd64.cfg | 3 +<br>
bsps/x86_64/amd64/<a href="http://headers.am" rel="noreferrer" target="_blank">headers.am</a> | 3 +<br>
bsps/x86_64/amd64/include/<wbr>apic.h | 62 ++++<br>
bsps/x86_64/amd64/include/<wbr>clock.h | 99 ++++++<br>
bsps/x86_64/amd64/include/pic.<wbr>h | 75 +++++<br>
bsps/x86_64/amd64/interrupts/<wbr>idt.c | 151 +++++++++<br>
bsps/x86_64/amd64/interrupts/<wbr>isr_handler.S | 191 +++++++++++<br>
bsps/x86_64/amd64/interrupts/<wbr>pic.c | 76 +++++<br>
bsps/x86_64/amd64/start/<wbr>bspstart.c | 4 +<br>
bsps/x86_64/amd64/start/<wbr>linkcmds | 6 +-<br>
bsps/x86_64/amd64/start/page.c | 172 ++++++++++<br>
bsps/x86_64/<a href="http://headers.am" rel="noreferrer" target="_blank">headers.am</a> | 9 +<br>
bsps/x86_64/include/bsp/irq.h | 46 +++<br>
bsps/x86_64/include/libcpu/<wbr>page.h | 68 ++++<br>
c/src/lib/libbsp/x86_64/amd64/<wbr>Makefile.am | 9 +-<br>
cpukit/score/cpu/x86_64/cpu.c | 17 +-<br>
cpukit/score/cpu/x86_64/<a href="http://headers.am" rel="noreferrer" target="_blank">header<wbr>s.am</a> | 2 +<br>
cpukit/score/cpu/x86_64/<wbr>include/rtems/asm.h | 10 +<br>
.../cpu/x86_64/include/rtems/<wbr>score/cpu.h | 112 +++++--<br>
.../cpu/x86_64/include/rtems/<wbr>score/cpu_asm.h | 104 ++++++<br>
.../cpu/x86_64/include/rtems/<wbr>score/cpuimpl.h | 16 +-<br>
.../cpu/x86_64/include/rtems/<wbr>score/idt.h | 131 ++++++++<br>
.../cpu/x86_64/include/rtems/<wbr>score/x86_64.h | 13 +-<br>
.../cpu/x86_64/x86_64-context-<wbr>initialize.c | 9 +-<br>
.../score/cpu/x86_64/x86_64-<wbr>context-switch.S | 8 +-<br>
26 files changed, 1636 insertions(+), 59 deletions(-)<br>
create mode 100644 bsps/x86_64/amd64/clock/clock.<wbr>c<br>
create mode 100644 bsps/x86_64/amd64/include/<wbr>apic.h<br>
create mode 100644 bsps/x86_64/amd64/include/<wbr>clock.h<br>
create mode 100644 bsps/x86_64/amd64/include/pic.<wbr>h<br>
create mode 100644 bsps/x86_64/amd64/interrupts/<wbr>idt.c<br>
create mode 100644 bsps/x86_64/amd64/interrupts/<wbr>isr_handler.S<br>
create mode 100644 bsps/x86_64/amd64/interrupts/<wbr>pic.c<br>
create mode 100644 bsps/x86_64/amd64/start/page.c<br>
create mode 100644 bsps/x86_64/<a href="http://headers.am" rel="noreferrer" target="_blank">headers.am</a><br>
create mode 100644 bsps/x86_64/include/bsp/irq.h<br>
create mode 100644 bsps/x86_64/include/libcpu/<wbr>page.h<br>
create mode 100644 cpukit/score/cpu/x86_64/<wbr>include/rtems/score/cpu_asm.h<br>
create mode 100644 cpukit/score/cpu/x86_64/<wbr>include/rtems/score/idt.h<br>
<span class="HOEnZb"><font color="#888888"><br>
-- <br>
2.18.0<br>
<br>
</font></span></blockquote></div><br></div>