Imagination PowerVR SDK Blog

MarkoMueller


#1

Hi,

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 (http://review.omapzoom.org/device/ti/proprietary-open).



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

    Marko

#2

Hello,


  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:

    http://git.omapzoom.org/?p=repo/graphics/pvrkm.git;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:

    http://git.omapzoom.org/?p=repo/graphics/pvrkm.git;a=tree;f=eurasia_km/services4/3rdparty/dc_omapfb3_linux;h=a6ed7ac019353337b63e6b6b796d67cc6850d062;hb=img_ddk_1.9



    I hope this helps :slight_smile:



    Cheers,

    Guillem