PS3 GPU DRM Driver: Difference between revisions
Jump to navigation
Jump to search
mNo edit summary |
|||
(4 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
[[Category:OtherOS]] | |||
=Introduction= | =Introduction= | ||
* 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. | * 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. | * The problem is that Linux kernel DRM framework is very complex and not well documented. | ||
Line 12: | Line 14: | ||
* Use PS3 AV Manager to set resolution | * Use PS3 AV Manager to set resolution | ||
* '''ps3av_cmd_video_get_monitor_info''' can be used to get current supported resolutions | * '''ps3av_cmd_video_get_monitor_info''' can be used to get current supported resolutions | ||
* It seems that head A is connected to HDMI connector. | |||
==TTM== | ==TTM== | ||
Line 52: | Line 55: | ||
* http://lxr.free-electrons.com/source/drivers/ps3/ps3av.c | * http://lxr.free-electrons.com/source/drivers/ps3/ps3av.c | ||
* http://lxr.free-electrons.com/source/drivers/video/ps3fb.c | * http://lxr.free-electrons.com/source/drivers/video/ps3fb.c | ||
{{Linux}}<noinclude>[[Category:Main]]</noinclude> |
Latest revision as of 02:05, 3 February 2014
Introduction[edit | edit source]
- 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 | edit source]
KMS[edit | edit source]
- 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.
TTM[edit | edit source]
- 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.
Milestones[edit | edit source]
- Create initial driver infrastructure (work in progress)
- Implement unaccelerated framebuffer console
- Add hardware acceleration to framebuffer console
- Implement IOCTLs for user-space applications
- Add PS3 GPU DRM support to libdrm and implement tests for it
- Implement X11 driver for PS3 GPU DRM
- Port some 3D open-source game to PS3 GPU DRM, e.g. quake or doom
Links[edit | edit source]
DRM User-Space[edit | edit source]
DRM Kernel-Space[edit | edit source]
- http://www.ideasonboard.org/media/drm/
- http://lxr.free-electrons.com/source/drivers/gpu/drm/nouveau/
- http://lxr.free-electrons.com/source/drivers/gpu/drm/cirrus/
- http://lxr.free-electrons.com/source/drivers/gpu/drm/mgag200/
- http://lxr.free-electrons.com/source/drivers/staging/omapdrm/
- http://git.kernel.org/?p=linux/kernel/git/mattst88/glint.git;a=tree;f=drivers/gpu/drm/glint
- http://www.x.org/wiki/ttm
- http://lists.freedesktop.org/archives/dri-devel/2010-April/000183.html
- http://www.mail-archive.com/[email protected]/msg50049.html
- http://permalink.gmane.org/gmane.comp.video.dri.devel/47889
PS3 Kernel Drivers[edit | edit source]
- http://lxr.free-electrons.com/source/arch/powerpc/include/asm/ps3av.h
- http://lxr.free-electrons.com/source/drivers/ps3/ps3av.c
- http://lxr.free-electrons.com/source/drivers/video/ps3fb.c