Porting seL4 to STM32MP157

Hi, I want to port seL4 to STM32MP157 platform. I'm reading this: https://docs.sel4.systems/projects/sel4/porting.html and honestly its being a show stopper for me. Any plan to show, step by step (without assumptions) and with a real example, how to do that? Best,

"Hugo" == Hugo V C via Devel <devel@sel4.systems> writes:
Hugo> Hi, I want to port seL4 to STM32MP157 platform. I'm reading Hugo> this: Hugo> https://docs.sel4.systems/projects/sel4/porting.html Hugo> and honestly its being a show stopper for me. Any plan to show, Hugo> step by step (without assumptions) and with a real example, how Hugo> to do that? The first steps are to get U-Boot and Linux running. For ease of development, set up U-Boot to load stuff over TFTP --- you don't have to, but it makes things much faster. Then extract the DTS from the linux kernel source tree you used for the Linux you have running. This wil tell you what drivers are needed --- seL4 needs a timer, an interrupt controller, and a serial device at minimum. As the STM32MP157 is a cortex-A7, these (except the serial) are all already in the source. You'll need to write a serial driver, but these are usually really simple. The DTS for the STM32MP157 boards doesn't have a memory node. You'll need to add one to the DTS you extracted by using an overlay, to describe how much RAM your board has, and its physical address. Then add the board to the hardware_gen.py script, write the CMAKE and platform files based on ones that are similar to your board. The imx7 Sabre is another Cortex A7 that might make a good start to copy. Peter C -- Dr Peter Chubb https://trustworthy.systems/ Trustworthy Systems Group CSE, UNSW Core hours: Mon 8am-3pm; Wed: 8am-5pm; Fri 8am-12pm.

It would be good if you could describe what part of it is a “show stopper” so we can improve the page. Ivan
On 12 Oct 2025, at 03:17, Hugo V.C. via Devel <devel@sel4.systems> wrote:
Hi,
I want to port seL4 to STM32MP157 platform. I'm reading this:
https://docs.sel4.systems/projects/sel4/porting.html
and honestly its being a show stopper for me. Any plan to show, step by step (without assumptions) and with a real example, how to do that?
Best, _______________________________________________ Devel mailing list -- devel@sel4.systems To unsubscribe send an email to devel-leave@sel4.systems
This email and any files transmitted with it may contain confidential information. If you believe you have received this email or any of its contents in error, please notify me immediately by return email and destroy this email. Do not use, disseminate, forward, print or copy any contents of an email received in error.

Hi guys, thank you for your support (thank you Peter for the detailed explanation). Peter, your explanation is exactly what is explained in the "Porting seL4 to a new platform". I already understood everything in that page... The problem (my problem, I have no idea if other people are affected) is every time I read something about seL4, I need to re-educate myself on all the compilation procefures, etc. I personally miss a step by step real example here in this page. It assumes you are already familiar with seL4 development, and you have a ready to use environment. And this may be a false assumption because: 1) it may be the case of someone that directly landed on this page after realizing seL4 is not supported for his platform (in that case the effected visitor needs to guess what path to follow to create a dev environment for seL4, compile some example on a supported platform, then go for the port...). Too many steps. Any marketing expert will agree this makes potential early adopters (future customers) to fly away. 2) it may be the case of someone (like me) that no matter how many times compiles seL4 and works with sources, for some reason (aging? brain damage?) is unable to remember all the stuff related to the procedure of compiling that stuff. And even if I will not fly away, I may add that task to my long queue of TODO tasks, that I order in terms of ROI. In my example, in need to port seL4 to STM32MP157, and I don't have the seL4 compilation process "fresh" as I jump from one technology to other every week, either I'm developing a Windows kernel driver, or an ARM boot loader, or modifying a tcp/ip stack, evaluating other technologies, etc. So, in my case, having a step by step real example of how a platform is ported, helps me a lot i terms of evaluating effort. I mean is not the same I explain to you in a text how to cook "salmorejo" (typical Spanish meal) than creating a video and show you how to do it, with a real example so you can see the texture of the meal, which is the key of the success. Also, IMHO, this page is very important as it will be evaluated by vendors to decide effort to port seL4 to their platforms. A real step by step example would be unvaluable. On Saturday, October 11, 2025, Hugo V.C. <skydivebcn@gmail.com> wrote:
Hi,
I want to port seL4 to STM32MP157 platform. I'm reading this:
https://docs.sel4.systems/projects/sel4/porting.html
and honestly its being a show stopper for me. Any plan to show, step by step (without assumptions) and with a real example, how to do that?
Best,

Thanks for the feedback, I’ve tried to turn into concrete steps in an issue [1] for how to improve it. I agree that a step-by-step walk through would make porting much easier. [1]: https://github.com/seL4/docs/issues/299 Ivan This email and any files transmitted with it may contain confidential information. If you believe you have received this email or any of its contents in error, please notify me immediately by return email and destroy this email. Do not use, disseminate, forward, print or copy any contents of an email received in error.
participants (3)
-
Hugo V.C.
-
Ivan Velickovic
-
Peter Chubb