openwrt_archive/target/linux/brcm2708/patches-4.4/0113-drm-Put-an-optional-field-in-the-driver-struct-for-G.patch
John Crispin 77c76183d6 brcm2708: update linux 4.4 patches to latest version
As usual these patches were extracted from the raspberry pi repo:
https://github.com/raspberrypi/linux/tree/rpi-4.4.y

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>

SVN-Revision: 48966
2016-03-08 18:11:49 +00:00

41 lines
1.2 KiB
Diff

From a71d6ebfcbc401e520fa4a5aa185d027dfbe5ce1 Mon Sep 17 00:00:00 2001
From: Eric Anholt <eric@anholt.net>
Date: Wed, 19 Nov 2014 12:06:38 -0800
Subject: [PATCH 113/170] drm: Put an optional field in the driver struct for
GEM obj struct size.
This allows a driver to derive from the CMA object without copying all
of the code.
Signed-off-by: Eric Anholt <eric@anholt.net>
---
drivers/gpu/drm/drm_gem_cma_helper.c | 5 ++++-
include/drm/drmP.h | 1 +
2 files changed, 5 insertions(+), 1 deletion(-)
--- a/drivers/gpu/drm/drm_gem_cma_helper.c
+++ b/drivers/gpu/drm/drm_gem_cma_helper.c
@@ -58,8 +58,11 @@ __drm_gem_cma_create(struct drm_device *
struct drm_gem_cma_object *cma_obj;
struct drm_gem_object *gem_obj;
int ret;
+ size_t obj_size = (drm->driver->gem_obj_size ?
+ drm->driver->gem_obj_size :
+ sizeof(*cma_obj));
- cma_obj = kzalloc(sizeof(*cma_obj), GFP_KERNEL);
+ cma_obj = kzalloc(obj_size, GFP_KERNEL);
if (!cma_obj)
return ERR_PTR(-ENOMEM);
--- a/include/drm/drmP.h
+++ b/include/drm/drmP.h
@@ -639,6 +639,7 @@ struct drm_driver {
u32 driver_features;
int dev_priv_size;
+ size_t gem_obj_size;
const struct drm_ioctl_desc *ioctls;
int num_ioctls;
const struct file_operations *fops;