Status update time! # Completed: [x] Get my QEMU environment setup - Documented on the RTEMS wiki[1] [x] Read more of RTEMS' no_cpu code, and the BSP porting guide - Read most of the guide - things have been in flux with the refactorings, but I think most of it makes sense, especially after having found the tickets on Trac - the reorganization of folders (to bsps from all over) and simplified build systems are helping make it easier to understand for sure. I haven't quite figured out what initialization happens where since we have a fair number of "init" spots and the delineation isn't crystal clear yet, but I'll ask about that if I don't figure it out soon. (In particular, we've got start.S for boot, boot_card, _CPU_Initialize, etc. - I'll likely know soon enough from looking at other architectures.)
# In progress: [-] Create a stub port and BSP simply to link with testsuite, as Joel suggested to surface any issues with the tools. - I simply copied no_cpu and parts of i386 into x86_64 directory, updated "/c/src/aclocal/rtems-cpu-subdirs.m4" and off I went. - Would we be interested in patches to update no_bsp to make this "port by starting from no_bsp" method easier? For eg. interrupts.h doesn't exist in no_bsp, but is assumed in other parts of RTEMS. I imagine we'll also want no_cpu to be reorganized into the root "bsps" folder (per ticket #3285) to be the go-to reference structure for a new port, so these patches may be better after that does happen to avoid conflicts. (I already sent a patch for a fairly simple issue here[2], but let me know if you'd rather have the others after the reorganization or now - I haven't started work on them per-se, only as a byproduct of trying to get the stub x86_64 port to compile.) - I ran into an issue (seems minor) with the x86_64 tools (gcc); thought I'd put that in its own thread[3], since not everyone may be interested in this status update. [-] Continue to read Intel's manual on system programming (volume 3) - In progress - there's a lot, so I'm skimming a fair bit, looking for key things that I may not have accounted for. # Incomplete: [ ] Read / skim FreeBSD's code for UEFI, APIC support, SMP, etc. - Doing this as soon as I've made enough progress on the stub port mentioned above. [ ] Read / skim UEFI specification [ ] Figure out how testing on community hardware [1] https://devel.rtems.org/wiki/Developer/Simulators/QEMU#QEMUandUEFIusingOVMFEDKII [2] https://lists.rtems.org/pipermail/devel/2018-April/020857.html [3] https://lists.rtems.org/pipermail/devel/2018-April/020858.html _______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel