aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/msm
diff options
context:
space:
mode:
authorVille Syrjälä <ville.syrjala@linux.intel.com>2015-11-11 12:11:29 -0500
committerDaniel Vetter <daniel.vetter@ffwll.ch>2015-11-24 05:47:38 -0500
commit1eb83451ba55d7a8c82b76b1591894ff2d4a95f2 (patch)
tree9e6d333c68f31bbba6ddada85e899adf1f47cf0f /drivers/gpu/drm/msm
parentcc344980c76748e57c9c03100c2a14d36ab00334 (diff)
drm: Pass the user drm_mode_fb_cmd2 as const to .fb_create()
Drivers shouldn't clobber the passed in addfb ioctl parameters. i915 was doing just that. To prevent it from happening again, pass the struct around as const, starting all the way from internal_framebuffer_create(). Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/msm')
-rw-r--r--drivers/gpu/drm/msm/msm_drv.h4
-rw-r--r--drivers/gpu/drm/msm/msm_fb.c4
2 files changed, 4 insertions, 4 deletions
diff --git a/drivers/gpu/drm/msm/msm_drv.h b/drivers/gpu/drm/msm/msm_drv.h
index 3be7a56b14f1..9a713b7a009d 100644
--- a/drivers/gpu/drm/msm/msm_drv.h
+++ b/drivers/gpu/drm/msm/msm_drv.h
@@ -240,9 +240,9 @@ uint32_t msm_framebuffer_iova(struct drm_framebuffer *fb, int id, int plane);
240struct drm_gem_object *msm_framebuffer_bo(struct drm_framebuffer *fb, int plane); 240struct drm_gem_object *msm_framebuffer_bo(struct drm_framebuffer *fb, int plane);
241const struct msm_format *msm_framebuffer_format(struct drm_framebuffer *fb); 241const struct msm_format *msm_framebuffer_format(struct drm_framebuffer *fb);
242struct drm_framebuffer *msm_framebuffer_init(struct drm_device *dev, 242struct drm_framebuffer *msm_framebuffer_init(struct drm_device *dev,
243 struct drm_mode_fb_cmd2 *mode_cmd, struct drm_gem_object **bos); 243 const struct drm_mode_fb_cmd2 *mode_cmd, struct drm_gem_object **bos);
244struct drm_framebuffer *msm_framebuffer_create(struct drm_device *dev, 244struct drm_framebuffer *msm_framebuffer_create(struct drm_device *dev,
245 struct drm_file *file, struct drm_mode_fb_cmd2 *mode_cmd); 245 struct drm_file *file, const struct drm_mode_fb_cmd2 *mode_cmd);
246 246
247struct drm_fb_helper *msm_fbdev_init(struct drm_device *dev); 247struct drm_fb_helper *msm_fbdev_init(struct drm_device *dev);
248 248
diff --git a/drivers/gpu/drm/msm/msm_fb.c b/drivers/gpu/drm/msm/msm_fb.c
index 121713281417..a474d6cf5d9f 100644
--- a/drivers/gpu/drm/msm/msm_fb.c
+++ b/drivers/gpu/drm/msm/msm_fb.c
@@ -138,7 +138,7 @@ const struct msm_format *msm_framebuffer_format(struct drm_framebuffer *fb)
138} 138}
139 139
140struct drm_framebuffer *msm_framebuffer_create(struct drm_device *dev, 140struct drm_framebuffer *msm_framebuffer_create(struct drm_device *dev,
141 struct drm_file *file, struct drm_mode_fb_cmd2 *mode_cmd) 141 struct drm_file *file, const struct drm_mode_fb_cmd2 *mode_cmd)
142{ 142{
143 struct drm_gem_object *bos[4] = {0}; 143 struct drm_gem_object *bos[4] = {0};
144 struct drm_framebuffer *fb; 144 struct drm_framebuffer *fb;
@@ -168,7 +168,7 @@ out_unref:
168} 168}
169 169
170struct drm_framebuffer *msm_framebuffer_init(struct drm_device *dev, 170struct drm_framebuffer *msm_framebuffer_init(struct drm_device *dev,
171 struct drm_mode_fb_cmd2 *mode_cmd, struct drm_gem_object **bos) 171 const struct drm_mode_fb_cmd2 *mode_cmd, struct drm_gem_object **bos)
172{ 172{
173 struct msm_drm_private *priv = dev->dev_private; 173 struct msm_drm_private *priv = dev->dev_private;
174 struct msm_kms *kms = priv->kms; 174 struct msm_kms *kms = priv->kms;