summaryrefslogtreecommitdiff
path: root/src/i830_video.c
AgeCommit message (Collapse)Author
2010-01-02attempt to make this build with xserver 1.7 and later.obsd-2.7Matthieu Herrb
This means removing all the resource manager code.
2009-05-08Fix crash with XV with large virtual displayAlbert Damen
If a virtual display with width > 2048 is used, the first time an XV buffer is needed will result in a BadAlloc error message, but the next time X would crash. Signed-off-by: Eric Anholt <eric@anholt.net> (cherry picked from commit d7ca870e1ce251d42e3689a8e1e7d080ab1325fb)
2009-04-07Don't clip video to CRTC in the case of textured videoCarl Worth
Since we're not limited by a single overlay plane on a single pipe, we want to not clip at all, (so that the correct video appears on both pipes). This fixes bug #20980 which shows a video spanning two pipes being rendered incorrectly. (cherry picked from commit 940c2aad4d174b6609bdc49f8c99a4bc37926516)
2009-04-06Fix new video sync-to-blank code for multi-headCarl Worth
We need to account for a non-zero Y offset for the CRTC. Without this, we don't sync to the correct region, so tearing becomes visible again. (cherry picked from commit 5d9d9a2e466474a0508a15b294a91507ccb3ccc1)
2009-04-06Remove support for 'auto'(-1) value of XV_SYNC_TO_VBLANKCarl Worth
We previously had a heurstic here where we would only sync to vblank for windows that covered more than 25% of the screen. We don't need this anymore since the new approach to sync, (WAIT_FOR_SCANLINE_WINDOW), is not excessively costly for small windows. (cherry picked from commit 3d4ee3cac1d63dfdf7b54c8ba577f3b77637499f)
2009-04-06Use WAIT_FOR_SCAN_LINE instead of WAIT_FOR_VBLANKCarl Worth
Either way, the goal is tear-free video playing. But waiting for a scan-line window not only has the advantage of being cheaper for small windows, but also avoids hanging the GPU in the case of the pipe getting turned off, (by screensaver, for example), while a batch is waiting for a VBLANK that will never occur. This fixes that GPU hang. (cherry picked from commit bc3312fd7c03d09a231dfebfe390fe668ad15d1e)
2009-03-31Fix VT switch with XV overlay video enabled.Kalev Lember
drm_intel_bo_unpin() was called with NULL argument. Signed-off-by: Kalev Lember <kalev@smartlink.ee> (cherry picked from commit 74d0713e002a9781ed00fdd10eb6f75907ae796c)
2009-03-16Fix Xv crash with overlay video.Kalev Lember
Bug #20585. (cherry picked from commit 2026c57cf0a352d9e6f9d208cfb7d4d550614477)
2009-03-06unused variable warning fix.Eric Anholt
Signed-off-by: Eric Anholt <eric@anholt.net>
2009-03-06Use REGION_EQUAL in place of a local implementation.Eric Anholt
Signed-off-by: Eric Anholt <eric@anholt.net>
2009-03-06nuke unused define.Eric Anholt
Signed-off-by: Eric Anholt <eric@anholt.net>
2009-03-06intel: Nuke shared-entity support (zaphod mode).Eric Anholt
It's been broken for years now, and KMS offers a much better chance of getting this working sensibly without making a mess of the 2D driver.
2009-03-06Xv: free tearing on textured videoXiang, Haihao
Add an Xv attribute XV_SYNC_TO_VBLANK which has three values -1(auto), 0(off) and 1(on) to control whether textured adapter synchronizes the screen update to the vblank. The default value is -1(auto).
2009-02-25XvMC: fix broken xvmc on 965Xiang, Haihao
2009-02-24Remove a handful of unused variable warnings.Kristian Høgsberg
2009-02-20Access the Xv buffer through the GTT for the non-KMS case.Kristian Høgsberg
2009-02-20Dont allocate overlay registers in KMS mode.Kristian Høgsberg
2009-02-18Make Xv used a buffer object instead of i830_memory.Kristian Høgsberg
We still pin the buffer object in case of overlay, but for textured video we're now no longer using i830_memory for Xv anymore.
2009-01-06Make i830_allocate_memory take tiling parameters.Keith Packard
This eliminates the separate i830_allocate_memory_tiled function which means that all memory objects will have tiling parameters set correctly. Signed-off-by: Keith Packard <keithp@keithp.com>
2008-12-04Remove the extra memory allocation for 965 video state now that it's all in BOs.Eric Anholt
2008-11-27Merge branch '965-xvmc'Zou Nan hai
Conflicts: src/common.h src/i830_hwmc.c src/i830_video.c
2008-11-05Add an option to make the overlay be the first XV adaptor.Maxim Levitsky
2008-09-29Use uintptr_t instead of uint64_t to hold pointer valueKeith Packard
2008-09-18Bug #17277: fix upscaling limitDavid Schleef
Oh duh (i830_video.c): /* Clamp dst width & height to 7x of src (overlay limit) */ if(drw_w > (src_w * 7)) drw_w = src_w * 7; if(drw_h > (src_h * 7)) drw_h = src_h * 7; The condition I see in the documentation appears to be src_h/drw_h < 8, that is, src_h < 8*drw_h. It appears this was "fixed" incorrectly in e784e152. It seems difficult to believe that this limitation would exist at all for the texture unit.
2008-08-11 [i965-xvmc] bypass copy when put image with xvmcroot
2008-08-08Initial port of kernel modesetting from old intel-kernelmode branchJesse Barnes
Thanks airlied!
2008-08-05Add UXA - the unified memory acceleration architecture.Keith Packard
This eliminates the cost of EXA migration management while providing full pixmap allocation control to the driver. The goal is to make something useful for UMA drivers.
2008-06-28xvmc: Don't copy on xvmc surface in PutImageZhenyu Wang
As xvmc rendering result has already been in fb, we shouldn't do extra copy on it. Although special care is required for i915 xvmc surface pitch alignment, which must be at least 1KB aligned. So video display function should take it into acount instead of always setting Y pitch to be double of U/V pitch.
2008-06-17Add support for Intel 4 series chipsets.Zhenyu Wang
2008-04-23Overlay video doesn't require that the target pixmap be in video memory.Keith Packard
I830PutImage was checking to make sure the target pixmap resided in video memory, but this isn't necessary when using the overlay. Test
2008-04-13Only use FOURCC_XVMC when INTEL_XVMC is definedKeith Packard
The XVMC code uses a magic FOURCC code to signal frame updates, but that code is only defined when the XVMC code is used.
2008-04-13Skip copying on FOURCC_XVMC surfacesKeith Packard
2008-04-10Single memcpy when pitches align on planar image transferKeith Packard
2008-04-10Add planer video decode kernelKeith Packard
Support for planar video reduces bus bandwidth by 25% and also reduces CPU usage during planar->packed conversion.
2008-04-08Bug #15219: Fix default overlay CSC factors, and use BT709 if available.David Schleef
Using the updated factors even when BT709 conversion isn't available (non-965) should still give us better color reproduction. Tested on a 945GM, examining the +/-5% of black bars of videotestsrc.
2008-03-28Disable overlay on new mobile chipsetZhenyu Wang
It's gone, really.
2008-03-26More compile warning fixes.Paulo Cesar Pereira de Andrade
o Check for RANDR_GET_CRTC_INTERFACE before defining functions that are used only if it is defined. o Declare a variable before code, and rename it from ret to xvmc_status to better describe it. o if 0 some static functions not used. o Don't declare some unused variables. o Declare as static some functions that are used only in the file defining it. o Add a default/fallback return True to the Bool function src/xvmc/intel_batchbuffer.c:intelInitBatchBuffer(). o Ansify src/xvmc/xf86dri.c. o Add missing prototype to src/xvmc/xf86dri.h and follow pattern of other headers by adding "extern" before function prototype.
2008-03-24Fix crash triggered by dpms low power mode with hardware overlay runningMaxim Levitsky
When overlay switch crtc, it ignores current crtc dpms mode which might lead to hang.
2008-03-18Merge branch 'master' into xvmcZhenyu Wang
2008-03-14Change OUT_RING and similar calls to OUT_BATCH for batchbuffer mergeEric Anholt
2008-03-13Merge branch 'master' into xvmcZhenyu Wang
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-11Add support for brightness control to i915 textured video output.Eric Anholt
2008-03-11Crack down on warnings.Kristian Høgsberg
Fix printf formatting warnings, wrap a couple of long lines, nuke unused variables, add missing #include <unistd.h>.
2008-03-11Merge branch 'master' into xvmcZhenyu Wang
Conflicts: man/intel.man src/i830_driver.c
2008-03-07Enable hardware overlay on 965Jesse Barnes
Based on Maxim Levitsky's patch for the same. Many thanks to Maxim for discovering that this features still works in recent hardware!
2008-02-25Fix overlay rotationZhenyu Wang
Track current covered crtc rotation in port's private, and fix overlay rotation transform to be against crtc mode coordinate.
2008-02-05Fix build warnings on 64 bitJesse Barnes
Use PRIx32 for printing CARD32 types, and PRIx64 for portably printing uint64_t types. Requires the addition of a new include, inttypes.h, to work. Hope C99 is ok with everybody...
2007-12-25xvmc: consolidate put surface interfacesZhenyu Wang
Make surface list track like context list, and move generic PutSurface code out of i915. So MC driver just needs to fill specific the command params, and we can get one single type of intel xvmc command to issue, ddx driver's put_image_size got removed. Fix last commit with missing XvMCContext assignment. Fix priv_data free with apropriate X11 XFree.
2007-12-20xvmc: add disable xvmc build supportZhenyu Wang
Move xvmc source files under XVMC config