SGX544MP/ReverseEngineering

From linux-sunxi.org
Jump to: navigation, search

Contents

Current Status

This has just started. Right now I'm trying to find out as much as possible about the GPU and get debug informations from available drivers.

If you want to support please contact embed3d[at]gmail[dot]com.

Getting Debug informations

A83T - Bananapi M3

WIP (Right now I'm working on this!! This is not finished yet!! - embed-3d) :

clone the following repo: https://github.com/embed-3d/BPI-M3-PVR-SGX.git ( It contains a better pvr driver integration and some additional printouts.

Follow the instructions in the Readme.md on my github project.

Right now I just implemented a few debug printouts. A first log could be found here (The messages start with: #PVR_DBG)

If you have any problems/questions please contact me.

Application Debugging

Under /usr/home/local/bin/ is a binary called pdump (at least in the BPI-M3 Images). This application can connect to the PDUMP stream of the kernel driver and writes a detailed log. It generates 3 output files: out2.txt (This is the detailed log, example log), out_drvinfo.txt (this is empty?), and a out2.prm (some binary file, might be the SGX ukernel USE programm). These options are available:

[email protected]:~$ /usr/local/bin/pdump -h
Command line options...
  -h Displays this help.
  -c<start frame[-stop frame]>, start and stop frames for param capture.
    m - Hotkey parameter capture.
  Note: in order for pdump to shut-down automatically, some platforms require the
  target application to generate at least one more frame than is being captured.
  E.G. for 'pdump -c0-3', the application would need to generate at least 5 frames.
  -fo<file name> Output file name excluding extension.
  -sr<Sample rate> Specifies rate at which to grab parameters:
  -kill to close pdump down
  -nodac Disables DAC stream.
  -noref Disables REF stream.
 

In this directory is also test software.

Img tech linux 3.4.x "opensource" driver

Folder structure

eurasia_km/services4/system/sunxi : connector for the system initalization (like clocks, power, ...) eurasia_km/services4/3rdparty/dc_sunxi : connector to the frame buffer eurasia_km/include4/aw : some additional defines

eurasia_km/services4/srvkm/devices/sgx : SGX Hardware functions eurasia_km/services4/srvkm/hwdefs : Hardware defines (seems like this is not complete, see log files)

Links

Enable SGX Debugging

Personal tools
Namespaces

Variants
Actions
Navigation
Tools