diff options
author | Aaron Plattner <aplattner@nvidia.com> | 2006-04-07 18:56:04 +0000 |
---|---|---|
committer | Aaron Plattner <aplattner@nvidia.com> | 2006-04-07 18:56:04 +0000 |
commit | 2387bfa5ff5ed82f3f732fb9152c1ea95850a914 (patch) | |
tree | 17cfc3dde93a0c22044778637be2a72338b71993 /hw/xfree86 | |
parent | dc43909219fe2a4d03139638814b89032b2921b9 (diff) |
Bump the ABI versions. Due to Glyph privates and the XV update below, thexorg-server-1_0_99_901XORG-7_0_99_901
video driver ABI needs to be bumped to 1.0. The rest of the ABI minor
versions were bumped to include the LoaderGetABIVersion function.
Add a DrawblePtr argument to the XV hooks. This allows drivers to determine
that the target window is redirected and draw to the appropriate place.
Diffstat (limited to 'hw/xfree86')
-rw-r--r-- | hw/xfree86/common/xf86Module.h | 10 | ||||
-rw-r--r-- | hw/xfree86/common/xf86xv.c | 18 | ||||
-rw-r--r-- | hw/xfree86/common/xf86xv.h | 12 |
3 files changed, 23 insertions, 17 deletions
diff --git a/hw/xfree86/common/xf86Module.h b/hw/xfree86/common/xf86Module.h index fafedba40..a32569980 100644 --- a/hw/xfree86/common/xf86Module.h +++ b/hw/xfree86/common/xf86Module.h @@ -84,11 +84,11 @@ typedef enum { * changed. The minor revision mask is 0x0000FFFF and the major revision * mask is 0xFFFF0000. */ -#define ABI_ANSIC_VERSION SET_ABI_VERSION(0, 2) -#define ABI_VIDEODRV_VERSION SET_ABI_VERSION(0, 8) -#define ABI_XINPUT_VERSION SET_ABI_VERSION(0, 5) -#define ABI_EXTENSION_VERSION SET_ABI_VERSION(0, 2) -#define ABI_FONT_VERSION SET_ABI_VERSION(0, 4) +#define ABI_ANSIC_VERSION SET_ABI_VERSION(0, 3) +#define ABI_VIDEODRV_VERSION SET_ABI_VERSION(1, 0) +#define ABI_XINPUT_VERSION SET_ABI_VERSION(0, 6) +#define ABI_EXTENSION_VERSION SET_ABI_VERSION(0, 3) +#define ABI_FONT_VERSION SET_ABI_VERSION(0, 5) #define MODINFOSTRING1 0xef23fdc5 #define MODINFOSTRING2 0x10dc023a diff --git a/hw/xfree86/common/xf86xv.c b/hw/xfree86/common/xf86xv.c index 0caca8010..ede2e064e 100644 --- a/hw/xfree86/common/xf86xv.c +++ b/hw/xfree86/common/xf86xv.c @@ -748,7 +748,8 @@ xf86XVRegetVideo(XvPortRecPrivatePtr portPriv) WinBox.x1, WinBox.y1, portPriv->vid_w, portPriv->vid_h, portPriv->drw_w, portPriv->drw_h, - &ClipRegion, portPriv->DevPriv.ptr); + &ClipRegion, portPriv->DevPriv.ptr, + portPriv->pDraw); if(ret == Success) portPriv->isOn = XV_ON; @@ -839,7 +840,8 @@ xf86XVReputVideo(XvPortRecPrivatePtr portPriv) WinBox.x1, WinBox.y1, portPriv->vid_w, portPriv->vid_h, portPriv->drw_w, portPriv->drw_h, - &ClipRegion, portPriv->DevPriv.ptr); + &ClipRegion, portPriv->DevPriv.ptr, + portPriv->pDraw); if(ret == Success) portPriv->isOn = XV_ON; @@ -925,7 +927,8 @@ xf86XVReputImage(XvPortRecPrivatePtr portPriv) ret = (*portPriv->AdaptorRec->ReputImage)(portPriv->pScrn, WinBox.x1, WinBox.y1, - &ClipRegion, portPriv->DevPriv.ptr); + &ClipRegion, portPriv->DevPriv.ptr, + portPriv->pDraw); portPriv->isOn = (ret == Success) ? XV_ON : XV_OFF; @@ -1471,7 +1474,8 @@ xf86XVPutStill( ret = (*portPriv->AdaptorRec->PutStill)(portPriv->pScrn, vid_x, vid_y, WinBox.x1, WinBox.y1, vid_w, vid_h, drw_w, drw_h, - &ClipRegion, portPriv->DevPriv.ptr); + &ClipRegion, portPriv->DevPriv.ptr, + pDraw); if((ret == Success) && (portPriv->AdaptorRec->flags & VIDEO_OVERLAID_STILLS)) { @@ -1599,7 +1603,8 @@ xf86XVGetStill( ret = (*portPriv->AdaptorRec->GetStill)(portPriv->pScrn, vid_x, vid_y, WinBox.x1, WinBox.y1, vid_w, vid_h, drw_w, drw_h, - &ClipRegion, portPriv->DevPriv.ptr); + &ClipRegion, portPriv->DevPriv.ptr, + pDraw); GET_STILL_BAILOUT: @@ -1771,7 +1776,8 @@ xf86XVPutImage( ret = (*portPriv->AdaptorRec->PutImage)(portPriv->pScrn, src_x, src_y, WinBox.x1, WinBox.y1, src_w, src_h, drw_w, drw_h, format->id, data, width, height, - sync, &ClipRegion, portPriv->DevPriv.ptr); + sync, &ClipRegion, portPriv->DevPriv.ptr, + pDraw); if((ret == Success) && (portPriv->AdaptorRec->flags & VIDEO_OVERLAID_IMAGES)) { diff --git a/hw/xfree86/common/xf86xv.h b/hw/xfree86/common/xf86xv.h index 316d6c9e5..fbe60cb48 100644 --- a/hw/xfree86/common/xf86xv.h +++ b/hw/xfree86/common/xf86xv.h @@ -82,19 +82,19 @@ typedef struct { typedef int (* PutVideoFuncPtr)( ScrnInfoPtr pScrn, short vid_x, short vid_y, short drw_x, short drw_y, short vid_w, short vid_h, short drw_w, short drw_h, - RegionPtr clipBoxes, pointer data ); + RegionPtr clipBoxes, pointer data, DrawablePtr pDraw ); typedef int (* PutStillFuncPtr)( ScrnInfoPtr pScrn, short vid_x, short vid_y, short drw_x, short drw_y, short vid_w, short vid_h, short drw_w, short drw_h, - RegionPtr clipBoxes, pointer data ); + RegionPtr clipBoxes, pointer data, DrawablePtr pDraw ); typedef int (* GetVideoFuncPtr)( ScrnInfoPtr pScrn, short vid_x, short vid_y, short drw_x, short drw_y, short vid_w, short vid_h, short drw_w, short drw_h, - RegionPtr clipBoxes, pointer data ); + RegionPtr clipBoxes, pointer data, DrawablePtr pDraw ); typedef int (* GetStillFuncPtr)( ScrnInfoPtr pScrn, short vid_x, short vid_y, short drw_x, short drw_y, short vid_w, short vid_h, short drw_w, short drw_h, - RegionPtr clipBoxes, pointer data ); + RegionPtr clipBoxes, pointer data, DrawablePtr pDraw ); typedef void (* StopVideoFuncPtr)(ScrnInfoPtr pScrn, pointer data, Bool Exit); typedef int (* SetPortAttributeFuncPtr)(ScrnInfoPtr pScrn, Atom attribute, INT32 value, pointer data); @@ -107,9 +107,9 @@ typedef int (* PutImageFuncPtr)( ScrnInfoPtr pScrn, short src_x, short src_y, short drw_x, short drw_y, short src_w, short src_h, short drw_w, short drw_h, int image, unsigned char* buf, short width, short height, Bool Sync, - RegionPtr clipBoxes, pointer data ); + RegionPtr clipBoxes, pointer data, DrawablePtr pDraw ); typedef int (* ReputImageFuncPtr)( ScrnInfoPtr pScrn, short drw_x, short drw_y, - RegionPtr clipBoxes, pointer data ); + RegionPtr clipBoxes, pointer data, DrawablePtr pDraw ); typedef int (*QueryImageAttributesFuncPtr)(ScrnInfoPtr pScrn, int image, unsigned short *width, unsigned short *height, int *pitches, int *offsets); |