diff options
Diffstat (limited to 'drivers/gpu/drm/mgag200/mgag200_fb.c')
-rw-r--r-- | drivers/gpu/drm/mgag200/mgag200_fb.c | 22 |
1 files changed, 3 insertions, 19 deletions
diff --git a/drivers/gpu/drm/mgag200/mgag200_fb.c b/drivers/gpu/drm/mgag200/mgag200_fb.c index 5bded5b74eaf..d2253f639481 100644 --- a/drivers/gpu/drm/mgag200/mgag200_fb.c +++ b/drivers/gpu/drm/mgag200/mgag200_fb.c | |||
@@ -121,9 +121,10 @@ static int mgag200fb_create_object(struct mga_fbdev *afbdev, | |||
121 | return ret; | 121 | return ret; |
122 | } | 122 | } |
123 | 123 | ||
124 | static int mgag200fb_create(struct mga_fbdev *mfbdev, | 124 | static int mgag200fb_create(struct drm_fb_helper *helper, |
125 | struct drm_fb_helper_surface_size *sizes) | 125 | struct drm_fb_helper_surface_size *sizes) |
126 | { | 126 | { |
127 | struct mga_fbdev *mfbdev = (struct mga_fbdev *)helper; | ||
127 | struct drm_device *dev = mfbdev->helper.dev; | 128 | struct drm_device *dev = mfbdev->helper.dev; |
128 | struct drm_mode_fb_cmd2 mode_cmd; | 129 | struct drm_mode_fb_cmd2 mode_cmd; |
129 | struct mga_device *mdev = dev->dev_private; | 130 | struct mga_device *mdev = dev->dev_private; |
@@ -210,23 +211,6 @@ out: | |||
210 | return ret; | 211 | return ret; |
211 | } | 212 | } |
212 | 213 | ||
213 | static int mga_fb_find_or_create_single(struct drm_fb_helper *helper, | ||
214 | struct drm_fb_helper_surface_size | ||
215 | *sizes) | ||
216 | { | ||
217 | struct mga_fbdev *mfbdev = (struct mga_fbdev *)helper; | ||
218 | int new_fb = 0; | ||
219 | int ret; | ||
220 | |||
221 | if (!helper->fb) { | ||
222 | ret = mgag200fb_create(mfbdev, sizes); | ||
223 | if (ret) | ||
224 | return ret; | ||
225 | new_fb = 1; | ||
226 | } | ||
227 | return new_fb; | ||
228 | } | ||
229 | |||
230 | static int mga_fbdev_destroy(struct drm_device *dev, | 214 | static int mga_fbdev_destroy(struct drm_device *dev, |
231 | struct mga_fbdev *mfbdev) | 215 | struct mga_fbdev *mfbdev) |
232 | { | 216 | { |
@@ -257,7 +241,7 @@ static int mga_fbdev_destroy(struct drm_device *dev, | |||
257 | static struct drm_fb_helper_funcs mga_fb_helper_funcs = { | 241 | static struct drm_fb_helper_funcs mga_fb_helper_funcs = { |
258 | .gamma_set = mga_crtc_fb_gamma_set, | 242 | .gamma_set = mga_crtc_fb_gamma_set, |
259 | .gamma_get = mga_crtc_fb_gamma_get, | 243 | .gamma_get = mga_crtc_fb_gamma_get, |
260 | .fb_probe = mga_fb_find_or_create_single, | 244 | .fb_probe = mgag200fb_create, |
261 | }; | 245 | }; |
262 | 246 | ||
263 | int mgag200_fbdev_init(struct mga_device *mdev) | 247 | int mgag200_fbdev_init(struct mga_device *mdev) |