PS3 GPU DRM Driver

From PS3 Developer wiki
Jump to: navigation, search


  • You can stop reading here if you think DRM has something common with games or piracy :)
  • We really need a proper GPU DRM driver for PS3.
  • The problem is that Linux kernel DRM framework is very complex and not well documented.

Linux Kernel DRM Framework[edit]


  • CRTC -> Encoder -> Connector
  • PS3 has 2 connectors: HDMI and AV multi
  • Use PS3 AV Manager to set resolution
  • ps3av_cmd_video_get_monitor_info can be used to get current supported resolutions
  • It seems that head A is connected to HDMI connector.


  • Manages memory: video memory, GART memory and system memory.
  • Nouveau DRM driver e.g. manages video memory globally per device. We cannot do it because each context has its own video memory.


  1. Create initial driver infrastructure (work in progress)
  2. Implement unaccelerated framebuffer console
  3. Add hardware acceleration to framebuffer console
  4. Implement IOCTLs for user-space applications
  5. Add PS3 GPU DRM support to libdrm and implement tests for it
  6. Implement X11 driver for PS3 GPU DRM
  7. Port some 3D open-source game to PS3 GPU DRM, e.g. quake or doom


DRM User-Space[edit]

DRM Kernel-Space[edit]

PS3 Kernel Drivers[edit]