Imagination PowerVR SDK Blog




i try to develop some kind of a screen-grabber… for the SGX544MP GPU at android.

So i read every dokumentation i had found about this GPU and i looked at the kernel-driver for android (

But still a have some questions:

  1. Does SGX544MP devices use its own graphics memory ( in hardware ) or use it shared-memory ?

  2. When it use shared-memory, the GPU will not use some kind of direct memory access (DMA) for the transfer…it simple use some memory-mapping (which is faster,- i think)

  3. When both assumptions are correct, the current screen-data can found in the systen-memory. Which i can access from kerne-space to grab it.

    Where can i find the curret source-lines in your driver ?

    Thank u




  1. Depends on the implementation but yes. On 99% of devices the memory is shared between the CPU/GPU.

  2. That looks correct to me. The source can be found in the Services KM code.

    You can get the code here:;a=tree;h=refs/heads/img_ddk_1.9;hb=img_ddk_1.9

    Look for the functions: AllocDeviceMem and OSAllocMem

  3. Uhm, I think you are most interested in the display controler driver. It depends on the platform, for example, for OMAP:;a=tree;f=eurasia_km/services4/3rdparty/dc_omapfb3_linux;h=a6ed7ac019353337b63e6b6b796d67cc6850d062;hb=img_ddk_1.9

    I hope this helps :slight_smile: