Wanted a flying pony. Got a pony.
An open userspace means that I will be able to use the GPU as far into the future as I like. It means that if anything is screwed up on my ARM processor I can see it and fix it (or thank the person that beat me to it.) That's a good thing.
The code blob that is not open is what runs on the GPU. I'd love to have that too so that the OpenGL could possibly be extended beyond what the vendor chooses or it could be ditched as a GPU entirely and used as a big parallel DSP. BroadCom didn't give us that.
Some reasons I can think of:
• GPU litigation – If you don't have a pre-emptive patent arsenal, open sourcing your GPU code and design is like inviting your competitors' lawyers over for tea and depositions.
• Unbuildable – The toolchain to build the GPU code is likely a cobbled together mess of tools, many built to minimally functional in house standards.
• Undocumented – They probably have not spent the hundreds of thousands of dollars to properly document how the GPU works. What documentation exists is possibly not in English.
• Unsafe – It is possible that the GPU has HCF[1] opcodes or sequences, or at the very least hasn't been lightly proven not to. In particular, there could be thermal issues depending how you drive it.
• IP Ownership – Portions of their implementation could be licensed under terms that do not permit release.
EOM
[1] http://en.wikipedia.org/wiki/Halt_and_Catch_Fire
An open userspace means that I will be able to use the GPU as far into the future as I like. It means that if anything is screwed up on my ARM processor I can see it and fix it (or thank the person that beat me to it.) That's a good thing.
The code blob that is not open is what runs on the GPU. I'd love to have that too so that the OpenGL could possibly be extended beyond what the vendor chooses or it could be ditched as a GPU entirely and used as a big parallel DSP. BroadCom didn't give us that.
Some reasons I can think of:
• GPU litigation – If you don't have a pre-emptive patent arsenal, open sourcing your GPU code and design is like inviting your competitors' lawyers over for tea and depositions.
• Unbuildable – The toolchain to build the GPU code is likely a cobbled together mess of tools, many built to minimally functional in house standards.
• Undocumented – They probably have not spent the hundreds of thousands of dollars to properly document how the GPU works. What documentation exists is possibly not in English.
• Unsafe – It is possible that the GPU has HCF[1] opcodes or sequences, or at the very least hasn't been lightly proven not to. In particular, there could be thermal issues depending how you drive it.
• IP Ownership – Portions of their implementation could be licensed under terms that do not permit release.
EOM
[1] http://en.wikipedia.org/wiki/Halt_and_Catch_Fire