@@ -179,7 +179,6 @@ static int shmob_drm_plane_disable(struct drm_plane *plane,
179
179
static const struct drm_plane_funcs shmob_drm_plane_funcs = {
180
180
.update_plane = shmob_drm_plane_update ,
181
181
.disable_plane = shmob_drm_plane_disable ,
182
- .destroy = drm_plane_cleanup ,
183
182
};
184
183
185
184
static const uint32_t formats [] = {
@@ -198,19 +197,16 @@ static const uint32_t formats[] = {
198
197
int shmob_drm_plane_create (struct shmob_drm_device * sdev , unsigned int index )
199
198
{
200
199
struct shmob_drm_plane * splane ;
201
- int ret ;
202
200
203
- splane = devm_kzalloc (sdev -> dev , sizeof (* splane ), GFP_KERNEL );
204
- if (splane == NULL )
205
- return - ENOMEM ;
201
+ splane = drmm_universal_plane_alloc (sdev -> ddev , struct shmob_drm_plane ,
202
+ plane , 1 , & shmob_drm_plane_funcs ,
203
+ formats , ARRAY_SIZE (formats ), NULL ,
204
+ DRM_PLANE_TYPE_OVERLAY , NULL );
205
+ if (IS_ERR (splane ))
206
+ return PTR_ERR (splane );
206
207
207
208
splane -> index = index ;
208
209
splane -> alpha = 255 ;
209
210
210
- ret = drm_universal_plane_init (sdev -> ddev , & splane -> plane , 1 ,
211
- & shmob_drm_plane_funcs ,
212
- formats , ARRAY_SIZE (formats ), NULL ,
213
- DRM_PLANE_TYPE_OVERLAY , NULL );
214
-
215
- return ret ;
211
+ return 0 ;
216
212
}
0 commit comments