RISC OS and NetBSD at the same time!
|
To follow up my work in running two systems on the same soc, I am now bringing up NetBSD on the A53 cpu on RK3399 , while RISC OS is running on A72. Can be quite handy if I get mailboxing to work. NetBSD can be (ab)used for ipv6 and other stuff. |
|
Would love to see that on the Pi :) |
|
I wish I could learn every SoC in the world, but that isn’t possible :( Interrupts and timer is now up in both systems. Interesting .. NetBSD uses GIC in GICv3 mode.. I needed to disable GICD init and some critical things in GICC. As before the RISC OS driver sets affinity of selected IRQ’s to A53. |
|
|
|
Wow! I would assume that to get this to work you are some sort of wizard of code. May I ask what you intend to do with this? Is there a cunning plan afoot? |
|
There are several possibilities. One is to use netbsd for networking, until we have a whiz bang ipv6 stack.. Another one is using it for user stuff , as a complement not having to switch sdcards and so on. |
|
Using it for networking would be a very good interim solution until RISC OS gets its own internal solution. Another question (or two) for you. 1) Are there are any other OS’s that replicate what you are trying to do? |
|
I don’t know exactly, I haven’t seen any. The Genode project does similar things with ARM virtualization, but not running “natively” on the cpu’s.
Is “shared memory communication” a name? I was hoping to use SGI’s (software generated interrupts) which are made for inter core communication, but it seems very complicated (close to impossible) to install a isr for it in a NetBSD driver. So right now I am working on a polling solution. Will test with keyboard,mouse events first. It will be tricky to do networking since it is more timing critical (and needs to be error free). Another question is how to launch NetBSD. I use u-boot now to start RISC OS on the A72 returning to start NetBSD. The best thing would be to be able to start it from RISC OS. I also don’t know how they behaves if started simultaneously. |
|
Basic INTER OS communication first steps: |
|
Fascinating work that you are undertaking. I have no idea how efficient “Shared Memory Communication” is but I think it’s VERY cool. Looking forward to seeing and hearing more on this project. |
|
Of course. But you made a lot of work that could be replicated somewhere else. Do you work on ROCKPro64 or another board? |
|
https://twitter.com/QtARM/status/1243912303998894081 Keyboard input now works. |
|
And XWindows! |
|
Fantastic. The only non RISC OS apps I’m using are Firefox, LibreOffice and Gimp. No less, no more.
Be sure I’ll be buy it day one. |
|
Michael announces casually:
You’ve been busy. |
|
https://twitter.com/QtARM/status/1245239146152591360 Keyboard wasn’t working in X11, now it does. |
|
|
|
Nice! +1 |
|
|
|
I am following this thread with great interest, good work Michael! However I keep wondering who is the master OS, in other words is RISC OS started from netbsd (netbsd is then the master) or the other way round, which makes RISC OS the master? |
|
http://www.update.uu.se/~micken/ronetbsd.html No one is master , both are started at the same time. The plan is to be able to start netbsd from RISC OS. Please read the linked page. |
|
|
|
Hmmm, wasn;t Andrew at R-Comp wanting to do something with things like the ArmBook running both OS’s? |
|
I do :) It would be so cool to record my learning sessions (Firefox, LibreOffice, Gimp) from RISC OS. Of course, HDMI support is needed too (and EMMC please, for speed/reliability). On ARMbook, ARMbook Pro and ARMrock, of course! |