Without all the register information it is a bit hard to figure out how to use the VC4 stuff.
That would be the lowest baremetal layer but in Raspbain there are many layers above that.
Eventually they maybe reverse engineered or documented.
These are called abstraction layers or obstruction layers for those who want to know the hardware.
The Videocore 4 runs a ThreedX real time operating system called vcos.
https://www.raspberrypi.org/forums/view ... 3&t=113850
Just need to understand everything here?
To access the media stuff on the VC4 the MMAL, multi media abstraction layer is used.
https://www.raspberrypi.org/forums/view ... 1&p=846239
This would explain some early VC code that ran the Nucleus OS and now runs ThreedX.The RTOS on the GPU changed at one point which as you can imagine was painful. vcos helped with that)
But does this mean the VCOS stuff is just another abstraction layer?
https://www.raspberrypi.org/forums/view ... s#p1184836
Confirmed, another obstruction layerVCOS was developed as an abstraction layer to abstract away OS type functionality to a stadnard API that we could use in ThreadX, Linux and Windows (and others). Stands for VideoCore OS.
MMAL was developed as an 'easier' to use OpenMAX IL layer, stands for Multimedia Abstraction Layer IIRC.
AFAIK, the JPEG blocks register set has never been released. I think there is an non-OpenMAX API to it, but that only runs on the Videocore. You should check the bottom levels of the MMAL/OpenMAX JPEG components to see how it works. When someone comes in who knows about it I'll ask.
Any way clues on where to check, if this abstraction layer can be used does it need, does it still need those library .so, ,dll type files?
I'm really starting to hate finding myself having been here before
https://www.raspberrypi.org/forums/view ... s#p1130317
LK, Little Kernel, get that running on the VC4, replace the closed source ThreedX VCOS?
Interesting is the VC5 does look like it has a MMU, lack of a MMU is a reason Linux does not get ported to chips, ucLinux was invented for them
Even if LK was got running, could it do the secret sauce stuff based on those undocumented registers and hardwareblocks?
If LK used the same abstraction layer as the ThreedX VC4 then some of the hardware stuff like jpeg could be done in NEON on a Pi 3?
Or not? So much to learn.
Anyway a link to baremetal camera stuff, which i have found before to.
https://www.raspberrypi.org/forums/view ... a#p1130143
So a search on VCOS has led to some interesting things, LK on the VC4 and baremetal camera.
LK on bcm28xx, might be worth a play
Another QEMU use case?
Could Ultibo do this?
Next platform for Ultibo is the VC4/5? Is there anything Ultibo cannot do one day?
Videocore compilers, who makes them? any open source versions?