xref: /aosp_15_r20/external/mesa3d/src/gallium/drivers/i915/TODO (revision 6104692788411f58d303aa86923a9ff6ecaded22)
1*61046927SAndroid Build Coastguard WorkerRandom list of problems with i915g:
2*61046927SAndroid Build Coastguard Worker
3*61046927SAndroid Build Coastguard Worker- What does this button do? Figure out LIS7 with regards to depth offset.
4*61046927SAndroid Build Coastguard Worker
5*61046927SAndroid Build Coastguard Worker- Dies with BadDrawable on GLXFBconfig changes/destruction. Makes piglit totally
6*61046927SAndroid Build Coastguard Worker  unusable :( Upgrading xserver helped here, it doesn't crash anymore. Still
7*61046927SAndroid Build Coastguard Worker  broken, it doesn't update the viewport/get new buffers.
8*61046927SAndroid Build Coastguard Worker
9*61046927SAndroid Build Coastguard Worker- Y-tiling is even more fun. i915c doesn't use it, maybe there's a reason?
10*61046927SAndroid Build Coastguard Worker  Texture sampling from Y-tiled buffers seems to work, though (save above
11*61046927SAndroid Build Coastguard Worker  problems).
12*61046927SAndroid Build Coastguard Worker  RESOLVED: Y-tiling works with the render engine, but not with the blitter.
13*61046927SAndroid Build Coastguard Worker  Use u_blitter and hw clears (PRIM3D_CLEAR_RECT).
14*61046927SAndroid Build Coastguard Worker
15*61046927SAndroid Build Coastguard Worker- src/xvmc/i915_structs.h in xf86-video-intel has a few more bits of various
16*61046927SAndroid Build Coastguard Worker  commands defined. Scavenge them and see what's useful.
17*61046927SAndroid Build Coastguard Worker
18*61046927SAndroid Build Coastguard Worker- Do smarter remapping. Right now we send everything onto tex coords 0-7.
19*61046927SAndroid Build Coastguard Worker  We could also use diffuse/specular and pack two sets of 2D coords in a single
20*61046927SAndroid Build Coastguard Worker  4D. Is it a big problem though? We're more limited by the # of texture
21*61046927SAndroid Build Coastguard Worker  indirections and the # of instructions.
22*61046927SAndroid Build Coastguard Worker
23*61046927SAndroid Build Coastguard Worker- Finish front/back face. We need to add face support to lp_build_system_values_array and use it in draw_llvm.c.
24*61046927SAndroid Build Coastguard Worker
25*61046927SAndroid Build Coastguard Worker- More optimizations, like replacing ADD + MUL with MAD or use DP2ADD.
26*61046927SAndroid Build Coastguard Worker
27*61046927SAndroid Build Coastguard Worker- Replace constants and immediates which are 0,1,-1 or a combination of those with a swizzle.
28*61046927SAndroid Build Coastguard Worker
29*61046927SAndroid Build Coastguard Worker- Schedule instructions to minimize the number of phases. One way is to replace
30*61046927SAndroid Build Coastguard Worker  R registers responsible for a boundary with U registers to avoid phase
31*61046927SAndroid Build Coastguard Worker  boundaries.
32*61046927SAndroid Build Coastguard Worker
33*61046927SAndroid Build Coastguard Worker- Continue a previous primitive when there are no state changes
34*61046927SAndroid Build Coastguard Worker
35*61046927SAndroid Build Coastguard Worker- Fix fragment discard
36*61046927SAndroid Build Coastguard Worker
37*61046927SAndroid Build Coastguard WorkerOther bugs can be found here:
38*61046927SAndroid Build Coastguard Workerhttps://gitlab.freedesktop.org/mesa/mesa/-/issues?scope=all&utf8=%E2%9C%93&state=opened&label_name[]=i915g
39