diff options
author | Connor Behan <connor.behan@gmail.com> | 2015-08-27 01:09:53 -0400 |
---|---|---|
committer | Martin-Éric Racine <martin-eric.racine@iki.fi> | 2015-08-27 09:29:06 +0300 |
commit | aecb0803d318e8100d6024f34a96df225ff738aa (patch) | |
tree | 77ea69f467c367b7c4225be799c8d41652e9bd21 | |
parent | d0d07108b7db4536ec12a45d5b7633b1abb22f60 (diff) |
Fix GX UploadToScreen and DownloadFromScreen
Even though most embedded drivers don't do it, there could be a slight
advantage on a single arch from reimplementing unaccelerated UTS and DFS
since the xserver avoids assembly. This does not remove them, it merely
updates them to work with the latest EXA.
Signed-off-by: Connor Behan <connor.behan@gmail.com>
-rw-r--r-- | src/gx_accel.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/gx_accel.c b/src/gx_accel.c index 2e02a50..41fb7ec 100644 --- a/src/gx_accel.c +++ b/src/gx_accel.c @@ -1489,7 +1489,8 @@ static Bool amd_gx_exa_UploadToScreen(PixmapPtr pDst, int x, int y, int w, int h, char *src, int src_pitch) { - char *dst = pDst->devPrivate.ptr; + GeodeRec *pGeode = GEODEPTR_FROM_PIXMAP(pDst); + char *dst = pGeode->pExa->memoryBase + exaGetPixmapOffset(pDst); int dst_pitch = exaGetPixmapPitch(pDst); int bpp = pDst->drawable.bitsPerPixel; @@ -1504,7 +1505,8 @@ static Bool amd_gx_exa_DownloadFromScreen(PixmapPtr pSrc, int x, int y, int w, int h, char *dst, int dst_pitch) { - char *src = pSrc->devPrivate.ptr; + GeodeRec *pGeode = GEODEPTR_FROM_PIXMAP(pSrc); + char *src = pGeode->pExa->memoryBase + exaGetPixmapOffset(pSrc); int src_pitch = exaGetPixmapPitch(pSrc); int bpp = pSrc->drawable.bitsPerPixel; |