Commit 0843c620 authored by imirkin's avatar imirkin Committed by nouveau
Browse files

remove reference to renouveau, various small updates, add task to add back hw overlay support

parent e0350ba1
......@@ -38,13 +38,14 @@ Finally, we will need to introduce different profiles so as the user can express
* Benchmark: Everything optimized for performance but save power when the user obviously isn't using his computer
* Normal: Should be pretty close to benchmark except that it should try to save power even when in full-use when the user wouldn't experience the difference
* Economy: Try to be conservative and upclock/activate features only when clearly needed
* User: let users write their own "PM scheduler" and plug it to Nouveau (may not be possible)
* User: let users write their own "PM scheduler" and plug it to Nouveau (may not be possible)
Then, we need to know what can be offloaded to PDAEMON and what needs to be running on the HOST. The more is done on PDAEMON, the better since we can react way faster from the hw.
## Video decoding
* Figure out why H.264 and/or MPEG4 part 2 doesn't work on VP3/4.0 cards [NV98:NVC0]
* Decode two frames at once with VP2 (similar to the vp3+ impl) to hopefully improve a/v sync jitter in high-motion videos
* Decode two frames at once with VP2 (similar to the VP3+ impl) to hopefully improve a/v sync jitter in high-motion videos
* Get field_pic_flag=1 H.264 videos to decode properly on VP2. There's some reference frame mismanagement (maybe) going on.
* On VP2, MPEG2 over vdpau shows artifacts, but xvmc works fine. Figure out what the issue is. (Probably related to skipped macroblocks somehow... but how?)
* On VP2, MPEG1 over vdpau shows blocking, as if the IDCT is done with incorrect parameters. The blob shows the same artifacts. XvMC looks perfect. Probably an error in the oddification/something else.
......@@ -52,6 +53,7 @@ Then, we need to know what can be offloaded to PDAEMON and what needs to be runn
## DDX tasks
* Re-add hw video overlay support using the (newly added in 3.13) drm planes for [NV04:NV40].
* [Junior, added 26.4.2011] Review and improve returned error codes in libdrm_nouveau, so that the DDX can say something more specific than just "error creating device" or "error opening device". Could say e.g. "incompatible kernel driver version". - [[PekkaPaalanen|PekkaPaalanen]]
* [Junior] Cleanup the remaining obfuscated parts of the code. In particular, reinstate register names instead of hardcoded constants, also try to reinsert relevant comments or unobfuscated parts from [[http://cvsweb.xfree86.org/cvsweb/xc/programs/Xserver/hw/xfree86/vga256/drivers/nv/?hideattic=0&only_with_tag=xf-3_3_3|http://cvsweb.xfree86.org/cvsweb/xc/programs/Xserver/hw/xfree86/vga256/drivers/nv/?hideattic=0&only_with_tag=xf-3_3_3]]
* optimize core EXA to generate less requests that nv10/20/30 can't handle (namely repeats of 1*N or N*1 surfaces can have their "1" direction replaced with a stretch and N replaced with a loop. those are highly used to draw window borders).
......@@ -64,20 +66,17 @@ Then, we need to know what can be offloaded to PDAEMON and what needs to be runn
## General tasks
* [Junior] cleanup the copyrights so that they mention the authors, add them when needed, check that there is no stuff like "IN NO EVENT SHALL VIA, S3 GRAPHICS, AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM" which isn't quite right (we aren't supposed to discharge VIA or S3 from liability, but the authors). We have to spot all the files bearing such issues, and fix them.
* Get rid of G7x/G8x naming everywhere, replace it with the NVxx naming
* Port the xbox bits [[http://xbox.cvs.sourceforge.net/xbox-linux/kernel-2.6/drivers/video/xbox/|http://xbox.cvs.sourceforge.net/xbox-linux/kernel-2.6/drivers/video/xbox/]] and [[http://xbox.cvs.sourceforge.net/xbox-linux/xf86-video-nvxbox/|http://xbox.cvs.sourceforge.net/xbox-linux/xf86-video-nvxbox/]] to nouveau
## Renouveau tasks
## Reverse-engineering tasks
* [Junior] Figure out how depth handling is different with a 16bit versus 24bit depth buffer. In particular, if depth clear values have to be changed and so on...
* [Junior] Figure out how color buffer handling is different with a 16bit versus 32bit colors.
* Figure out the commands emitted on NV10, NV20, NV30 and NV40 by the following enables : GL_AUTO_NORMAL, GL_COLOR_MATERIAL, GL_COLOR_SUM_EXT, GL_CONVOLUTION_1D, GL_INDEX_LOGIC_OP, GL_LINE_SMOOTH, GL_LINE_STIPPLE,GL_MAP1_COLOR_4, GL_MAP1_INDEX, GL_MAP1_NORMAL, GL_MAP1_TEXTURE_COORD_1, GL_MAP1_TEXTURE_COORD_2, GL_MAP1_TEXTURE_COORD_3, GL_MAP1_TEXTURE_COORD_4, GL_MAP1_VERTEX_3, GL_MAP1_VERTEX_4, GL_MAP2_COLOR_4, GL_MAP2_INDEX, GL_MAP2_NORMAL, GL_MAP2_TEXTURE_COORD_1, GL_MAP2_TEXTURE_COORD_2, GL_MAP2_TEXTURE_COORD_3, GL_MAP2_TEXTURE_COORD_4, GL_MAP2_VERTEX_3, GL_MAP2_VERTEX_4. refer [[GL|GL]] also figure out if those enables are useful to any real OpenGL application.
* unify the NV10_TCL, NV20_TCL and NV30_TCL offset names. Right now there are offsets for similar commands that bear different names.
* [Junior with OpenGL knowledge] write new tests for unexplored extensions, see also [[GL|GL]]
* create a bot that picks up dump tarballs from the irc channel, downloads them, formats them in the right format and uploads them with correct permissions
* [Junior with OpenGL knowledge] Write new tests for unexplored extensions.
* [Junior] merge the xbox commands found in inner.txt into the NV20_TCL_PRIMITIVE object
* Some renouveau tests leak state on each other; try to fix this
## Other items
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment