I have a few Mali devices next up on the chopping block after I finish reversing the VideoCore IV
Hehe. Reversing a GPU is a lot of work. From my experience it usually involves zillions of commands, state bits that subtly change handling, and different instruction sets for different kinds of shaders and other sub-processors... (even figuring texture formats can be lots of work) I can't even imagine starting such a project again, though it was fun, wish I'd still have the time...
Wladimir, I respect your view here - I agree with everything you write. My field of expertise is more ISA encodings, overall functional block architecture and decompilers. Once I hold the encodings, I point at the blob and say there is your source & specification. ie Binary blobs + ISA encodings = specification to me.
Hehe. Reversing a GPU is a lot of work. From my experience it usually involves zillions of commands, state bits that subtly change handling, and different instruction sets for different kinds of shaders and other sub-processors... (even figuring texture formats can be lots of work) I can't even imagine starting such a project again, though it was fun, wish I'd still have the time...
I wish you the best luck of course!