summaryrefslogtreecommitdiff
path: root/lib/igt_fb.h
diff options
context:
space:
mode:
authorVille Syrjälä <ville.syrjala@linux.intel.com>2018-07-17 18:32:38 +0300
committerVille Syrjälä <ville.syrjala@linux.intel.com>2018-09-27 23:15:58 +0300
commit2238361afbfee71827e2ee6e71fc43f1a39dcefe (patch)
tree87a679513a25bf93ac774dcea3d8e8ffc7910d63 /lib/igt_fb.h
parentef43fce48d55eb0d37f9fb2f97785228dc844584 (diff)
lib/igt_fb: Pass around igt_fb internally
Instead of passing around a boatload of integers everywhere let's just pass around the igt_fb struct. That obviously means we have to populate it first sufficiently, to which end we'll add a small helper. Later on the stride/size calculations will consult the already pre-populated igt_fb and fill in the rest as needed. This makes the whole thing a lot less error prone as it's impossible to accidentally pass the arguments in the wrong order when there's just the one of them, and it's a pointer. v2: Rebase due to uint64_t size Cc: Paulo Zanoni <paulo.r.zanoni@intel.com> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Diffstat (limited to 'lib/igt_fb.h')
-rw-r--r--lib/igt_fb.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/igt_fb.h b/lib/igt_fb.h
index 2343fe50..35bf307a 100644
--- a/lib/igt_fb.h
+++ b/lib/igt_fb.h
@@ -47,12 +47,12 @@
* @drm_format: DRM FOURCC code
* @width: width in pixels
* @height: height in pixels
- * @stride: line stride in bytes
* @tiling: tiling mode as a DRM framebuffer modifier
* @size: size in bytes of the underlying backing storage
* @cairo_surface: optionally attached cairo drawing surface
* @domain: current domain for cache flushing tracking on i915.ko
* @num_planes: Amount of planes on this fb. >1 for planar formats.
+ * @strides: line stride for each plane in bytes
* @offsets: Offset for each plane in bytes.
* @plane_bpp: The bpp for each plane.
* @plane_width: The width for each plane.
@@ -70,12 +70,12 @@ typedef struct igt_fb {
int height;
enum igt_color_encoding color_encoding;
enum igt_color_range color_range;
- unsigned int stride;
uint64_t tiling;
uint64_t size;
cairo_surface_t *cairo_surface;
unsigned int domain;
unsigned int num_planes;
+ uint32_t strides[4];
uint32_t offsets[4];
unsigned int plane_bpp[4];
unsigned int plane_width[4];