Raspberry Pi OpenSource VideoCore AccessPosted: October 24, 2012
The Pi Foundation today announced they availability of the VideoCore client side libraries as OpenSource!
And the crowd just keeps moving along…
What’s the big deal? Well, the way the Raspberry Pi is arranged, there are essentially two ‘cores’ cooperating on a chip to form the hardware of the Raspberry Pi. One of those cores, “VideoCore”, is highly proprietary, and handles all the lowest level video and audio for the Raspberry Pi. If you were running a typical PC, this would be similar to the arrangement of a CPU (intel) and a GPU (nVidia) running in the same machine. The CPU generally takes care of the “operating system”, and anything having to do with video gets communicated to the GPU, and magic happens.
Most users don’t care about this level of detail. Typically, the libraries that communicate with the GPU are highly proprietary to the vendor who produced them. nVidia does not open Source the drivers for their chips. They just provide a binary blob to the OS, and leave it at that.
This same situation was occuring here with Broadcom. It’s not a big deal to most users, but, when you’re trying to sell the Raspberry Pi as an “educational tool”, and half the system is basically off limits, it kind of hurts the credibility of the whole mission. So, now they’ve gone and made that code available to the masses.
Now, of course if you just want to put something together in Pygame, then your world has not shifted one bit. You’ll never program down at this level. But, let’s say you’re trying to put together an OS distribution. Well then things start to get interesting. You can better integrate X, or XBMC with the lowest level high performance part of the hardware, without having to poke your way along in the dark with an undocumented API. You can get right down there in the chips and create the bestest interop between the ‘CPU’ and the ‘GPU’.
What will it mean? Probably nothing in the very short term. In the long run, it will mean that people who really care about such things will have the tools they need to eek the most performance out of this System on Chip as possible.
I think the whole Raspberry Pi thing is a master stroke for Broadcom. They are typically a behind the scenes provider of low level chips. The Pi is giving them a bully pulpit upon which they can advertise their wares. Making this stuff open source doesn’t diminish their intellectual property in the least, and doesn’t give anything to their competitors. It does get a bunch of maniacal programmers focused on programming their VideoCore, which without such a move would remain an obscure opaque part of their offerings.
It’s a fun time to be a progammer!