summaryrefslogtreecommitdiff
path: root/src/i965_render.c
AgeCommit message (Collapse)Author
2008-07-27Fix official name for GM45 chipsetZhenyu Wang
(cherry picked from commit a34a4e3f6420e2b06bbdaa124fe0ccb1bc6a0bd9)
2008-07-27Add support for Intel 4 series chipsets.Zhenyu Wang
(cherry picked from commit 1cfe769c74d1a3a392bf1aaaf5c2dcc8273daf66) (cherry picked from commit 093f65fd04c38e6c1f19889074f9316749959c7a)
2008-04-07Remove extra flushingKeith Packard
(cherry picked from commit 90886f9a602d58b754e9a8d0f1a9c40803d34fa2)
2008-04-07Add projective versions of the PS kernelsKeith Packard
(cherry picked from commit 0836373dc6e2f8612f120074980561f7ac11f6f7)
2008-04-07Shrink WM thread to 32 registers and 1024 scratch space.Keith Packard
Saving registers means we can run more in parallel. (cherry picked from commit bfd803e085e938866efb45c67a79facef78ec399)
2008-04-07Fix composite with mask using new compositing thread codeKeith Packard
Clean up register allocation to never overlap Always write 4 values for each texture vertex. (cherry picked from commit a6492661ae07310128eb73c3ef037c42ce7ab184)
2008-04-07Back to new shaders, fix urb read lengthKeith Packard
(cherry picked from commit 6bb92213374f278387c539bbe05b773e87e11b90)
2008-04-07Use m4 to clean up gen4 asm progs. Start adding projective transform support.Keith Packard
Use macros for register names, modularize functions into separate files. (cherry picked from commit 08500507284f13ad7084eb231b43e117e9728129)
2008-04-07Reimplement wm program for nomask case to handle affine transformsKeith Packard
This involves correctly computing u/v locations based on x/y vectors and line constants computed in new sf program. Also, use fewer instructions to make this go a bit faster (2X for 500x500 composite). (cherry picked from commit 6304b38423f99190a5e54f1a7dcaa75adfad4f2a)
2008-03-24Transformed coord computed using floats. Don't move bilinear composite dst.Keith Packard
The homogeneous coordinate computation in the core server cannot be used for many legal matrices as it overflows. Just use floats in the driver; faster and avoids troubles. When compositing with bilinear filter, don't push the dst coordinates around as that makes the output blurry when pixels are aligned.
2008-03-188xx/9xx can handle textures to 2kx2k. 965 can do 8kx8kKeith Packard
2008-03-14Change OUT_RING and similar calls to OUT_BATCH for batchbuffer mergeEric Anholt
2008-03-11Remove i830+ driver's use of CARD*/INT* types for great justice.Eric Anholt
Several uses are actually left, which are determined by the X Server interfaces we're implementing.
2008-03-11Silence warnings about possible uninitialize use of dst_format.Kristian Høgsberg
Whoa, gcc got a lot smarter about warnings. If iXXX_get_dest_format() doesn't support the picture format passed in it won't initialize the uint32_t pointed to by dst_format and return FALSE. What gcc now can detect is if dst_format is used without checking the return value, it might be used uninitialized. This patch makes sure we always check the return value before using dst_format.
2008-01-09Update PIPELINE_SELECT instruction and surface state format for new chipsetZhenyu Wang
2007-08-10Tiling fixes for 965Jesse Barnes
This should be close to the last set of tiling fixes for 965 chipsets. Prior to this commit, the 965 composite hook didn't take tiling into account, nor did 965 textured video, which caused display corruption. However, there seems to be at least one last bug to squash--on occasion, a configuration with tiling enabled won't properly display text. This is likely another tiling related problem with the composite hook.
2007-08-09i965: increase composite vertex buffer size and alignment to be safeDave Airlie
2007-08-09i965: fix memcpy of the sf_kernel when a mask is neededDave Airlie
2007-08-08Allow 965 composite acceleration to A8 destinations.Carl Worth
Note that this is a slowdown in text rendering due to the high overhead of our compositing setup, but appears to be correct according to rendercheck.
2007-06-27EXA: fallback mask transform on i965Wang Zhenyu
It needs to fix shader programs which hasn't been done yet.
2007-06-25Use local structures for vs_state, sf_state, and wm_stateCarl Worth
2007-06-25Use local structure for src_sampler_state and mask_sampler_stateCarl Worth
2007-06-25Use local structure for mask_surf_stateCarl Worth
2007-06-25Use local structure for src_surf_stateCarl Worth
2007-06-25Use local structure for dest_surf_stateCarl Worth
2007-06-25Use local structure for cc_stateCarl Worth
2007-06-25Remove redundant i830WaitSync from i965_prepare_compositeCarl Worth
There were two calls to i830WaitSync, and between them no state was being changed---just offsets were being computed.
2007-06-12Fix context switching between DRI and X.Eric Anholt
Now, all 3D pipeline consumers in the driver just call IntelEmitInvariantState(), which handles basic state setup, the caching of that state setup, and notifying DRI clients. This also removes a mistaken idle wait in the Render code which was papering over the brokenness in the context switching.
2007-05-30Fix i965 render's draw clip rectangleWang Zhenyu
Use scrn's virtual size is not correct in rotation rendering. This fixes initial rotation problem on i965.
2007-05-18EXA: add render enter helper functionWang Zhenyu
That notify mesa rendering is smashing the state, and check last 3d operation to do sync after we're swapped in or others.
2007-03-22EXA: don't smash vertex header in G965Wang Zhenyu
Originally we smashed vertex header to store texture coordinates, this is working as we only use sf/wm kernel and disable all other stages on pipeline. But better to not do this. This also cleans up vertex elements state and makes vertex buffer order looks "normal".
2007-03-21EXA: try to enable rotation for G965Wang Zhenyu
The new sf/wm should handle the texture sampling only in rotated case. Also fix possible hole in VUE slot.
2007-03-11fixup missing assert includesDave Airlie
2007-02-23Rework the video memory allocation.Eric Anholt
The previous allocator worked in multiple passes, with (at least) one of setting up allocations, another to attempt to adjust those for tiling, and then a pass to set up the offsets and fix them in memory. The new allocator is simpler, allocating memory immediately if possible, setting up tiling up front, and choosing offsets immediately. AGP memory is only allocated to back actual memory used, saving some memory that would have been allocated for padding previous. It will also allow dynamic freeing and reallocation of memory, which will be useful for framebuffer resizing.
2007-02-15EXA: fix i965 default color (0,0,0,1.0) -> (0,0,0,0)Wang Zhenyu
(0,0,0,1.0) is actually black...
2007-02-15EXA: mask componentAlpha supportWang Zhenyu
we're getting load of multiple sf/wm programs for i965, might need to be cleanup in future.
2007-02-07EXA: fix render issue with i965Wang Zhenyu
Fix SF kernel with corrent coeffient work, and correct VUE storage in multi texture case.
2007-01-31Sync before overwriting Render acceleration state on the 965.Eric Anholt
2007-01-31Naming and formatting cleanup in Render acceleration code.Eric Anholt
2007-01-31Move the render code to non-EXA-specific filenames.Eric Anholt