summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDave Airlie <airlied@gmail.com>2013-02-26 12:47:33 +1000
committerDave Airlie <airlied@gmail.com>2013-02-26 12:47:33 +1000
commit39b5c10ac426db8377389433d4d04f54c8b710ef (patch)
treea50398fc89d315072dd8a4153e889a2592339c57
parentb13a5e7cfead7d4de4d24d86f0eabeae76934fb9 (diff)
qxl: pass qxl instead of surface cache to some functions
This is more preparation work for adding bo abstraction layer. Signed-off-by: Dave Airlie <airlied@redhat.com>
-rw-r--r--src/qxl.h4
-rw-r--r--src/qxl_driver.c2
-rw-r--r--src/qxl_surface.c13
-rw-r--r--src/qxl_uxa.c2
4 files changed, 11 insertions, 10 deletions
diff --git a/src/qxl.h b/src/qxl.h
index 941a2ad..2d1840a 100644
--- a/src/qxl.h
+++ b/src/qxl.h
@@ -346,10 +346,10 @@ int qxl_ring_cons (struct qxl_ring *ring);
* Surface
*/
surface_cache_t * qxl_surface_cache_create (qxl_screen_t *qxl);
-qxl_surface_t * qxl_surface_cache_create_primary (surface_cache_t *qxl,
+qxl_surface_t * qxl_surface_cache_create_primary (qxl_screen_t *qxl,
struct QXLMode *mode);
void * qxl_surface_get_host_bits(qxl_surface_t *surface);
-qxl_surface_t * qxl_surface_create (surface_cache_t *qxl,
+qxl_surface_t * qxl_surface_create (qxl_screen_t *qxl,
int width,
int height,
int bpp);
diff --git a/src/qxl_driver.c b/src/qxl_driver.c
index e488020..9a8de82 100644
--- a/src/qxl_driver.c
+++ b/src/qxl_driver.c
@@ -484,7 +484,7 @@ qxl_create_primary(qxl_screen_t *qxl)
pm->y_mili = 0; // TODO
pm->orientation = 0; // ? supported by us for single head usage? more TODO
- return qxl_surface_cache_create_primary (qxl->surface_cache, &qxl->primary_mode);
+ return qxl_surface_cache_create_primary (qxl, &qxl->primary_mode);
}
static Bool
diff --git a/src/qxl_surface.c b/src/qxl_surface.c
index 84f221b..d95054b 100644
--- a/src/qxl_surface.c
+++ b/src/qxl_surface.c
@@ -315,17 +315,17 @@ qxl_surface_recycle (surface_cache_t *cache, uint32_t id)
* will be the containing virtual size.
*/
qxl_surface_t *
-qxl_surface_cache_create_primary (surface_cache_t *cache,
+qxl_surface_cache_create_primary (qxl_screen_t *qxl,
struct QXLMode *mode)
{
struct QXLRam *ram_header =
- (void *)((unsigned long)cache->qxl->ram + cache->qxl->rom->ram_header_offset);
+ (void *)((unsigned long)qxl->ram + qxl->rom->ram_header_offset);
struct QXLSurfaceCreate *create = &(ram_header->create_surface);
pixman_format_code_t format;
uint8_t *dev_addr;
pixman_image_t *dev_image, *host_image;
qxl_surface_t *surface;
- qxl_screen_t *qxl = cache->qxl;
+ surface_cache_t *cache = qxl->surface_cache;
if (mode->bits == 16)
{
@@ -656,14 +656,15 @@ retry:
}
qxl_surface_t *
-qxl_surface_create (surface_cache_t * cache,
+qxl_surface_create (qxl_screen_t *qxl,
int width,
int height,
int bpp)
{
qxl_surface_t *surface;
+ surface_cache_t *cache = qxl->surface_cache;
- if (!cache->qxl->enable_surfaces)
+ if (!qxl->enable_surfaces)
return NULL;
if ((bpp & 3) != 0)
@@ -1208,7 +1209,7 @@ qxl_surface_cache_replace_all (surface_cache_t *cache, void *data)
int height = pixman_image_get_height (ev->image);
qxl_surface_t *surface;
- surface = qxl_surface_create (cache, width, height, ev->bpp);
+ surface = qxl_surface_create (cache->qxl, width, height, ev->bpp);
assert (surface->host_image);
assert (surface->dev_image);
diff --git a/src/qxl_uxa.c b/src/qxl_uxa.c
index e81df4f..fd70488 100644
--- a/src/qxl_uxa.c
+++ b/src/qxl_uxa.c
@@ -358,7 +358,7 @@ qxl_create_pixmap (ScreenPtr screen, int w, int h, int depth, unsigned usage)
goto fallback;
}
- surface = qxl_surface_create (qxl->surface_cache, w, h, depth);
+ surface = qxl_surface_create (qxl, w, h, depth);
if (surface)
{