background: https://wiki.linaro.org/ChristianReis?action=AttachFile&do=view&target=embedded-gpu-lca-2011.pdf http://lkcl.net/laptop.html
45nm and the upcoming 28nm geometry is going to allow SoC RISC CPUs to become massively more price as well as power efficient than CISC x86 architecture could ever be. that makes so-called "embedded" CPUs far more important in the immediate future, and preparation is required so that there exists free software infrastructure in place. yet as can clearly be seen in christian's talk, there literally *is* no Free Software 3D SoC Driver - not for one *single* one of the available SoCs, and there do not exist any suitable low-power embedded-compatible GPU ICs [$USD 3m investment is required for the OpenGraphics Project to make an IC, and that's not really going to happen in a hurry]. so all the ATI, NVidia and Intel GMA GPUs are fast about to become overshadowed, whilst everyone has been caught off-guard in the free software community because they've been focussing on these "mainstream" GPUs, which are about to become superseded by *another* batch of proprietary-only GPUs... which cannot be replaced by "designing a new motherboard", because the GPUs are quite literally embedded inside the CPU. so as the embedded 3D GPU space is about 3 years behind the "mainstream" ones in terms of understanding and acceptance of Free Software, it is necessary to go through the entire process *again*, with yet *another* set of companies, whose position is made all the more precarious by virtue of them being the "also-rans" (see Christian's talk, slide 11, "#4 patents") the proposal is therefore to not hang about: begin to reverse-engineer the "top" GPU, PowerVR, which is present in at least 75% of the top-of-the-range ARM embedded CPUs. work has already been done to establish the GPU's on-board RISC instruction set (by a polish free software developer). this work was done "passively" (by analysing the proprietary libraries). the work needs to be continued "actively", and a working OpenGL library created. reverse-engineering requires expensive proprietary disassembly tools (which i have - legally licensed and purchased over 6 years ago), requires absolute infinite f*****g patience and requires absolute undisturbed periods of 100% concentration for weeks at a time in order to maximise effectiveness. progress can often be made rapidly... and then 2-3 weeks can be spent looking for one single wrong bit. that's just the way it is. in reverse-engineering, there are no guarantees - but you have to start somewhere. from personal experience, usually once i initiate a reverse-engineering project, others take it over once it gets to the point where it's "useable", but in this case, the MesaGL software library can substitute for the parts that *aren't* accelerated, thus always (if care is taken) at least providing a working (if non-optimal) 3D SGX accelerated library. the payoff is huge. the list of CPUs with PowerVR includes Texas Instruments top-of-the-range OMAP, AM Sitara and DaVinci CPUs, all of Freescale's top-of-the-range iMX series, all of Samsung's top-of-the-range ARM Cortex A8 and A9 CPUs, Marvell's top-of-the-range armv7-compatible 1.2 to 2ghz CPUs, NXP's new Cortex A9 and (the odd-one-out) Intel's "Poulsbo" GMA500 GPU. the list just goes on and those are just the ones that are in the current 45nm geometry. please bear in mind that not one single one of the proprietary embedded GPU companies will act. period. it is entirely and solely up to the free software community to take action. no action taken will result in no free software driver, and it will stay that way, period. if we're all happy to run proprietary software or google android, no action *need* be taken. assuming that's an unacceptable state of affairs, the only way is reverse-engineering. we have to start somewhere. l. p.s. http://code.google.com/p/gles6410 is another SoC 3D reverse-engineering project and is *not* PowerVR, it is called "FIMD" 3D which, oddly, is only present in 2 CPUs from Samsung - the S3C6410 and the 800mhz S5PC100. Samsung "upgraded" half way through this CPU range (!) so their top-of-the-range 1ghz Cortex A8 part, the S5PC110 *also* uses... PowerVR. as does their new Dual-Core Cortex A9 part, code-named "Orion". _______________________________________________ Celinux-dev mailing list [email protected] http://tree.celinuxforum.org/mailman/listinfo/celinux-dev
