@@ -117,6 +117,36 @@ static const struct file_operations msm_gpu_fops = {
117
117
.release = msm_gpu_release ,
118
118
};
119
119
120
+ #ifdef CONFIG_DRM_MSM_KMS
121
+ static int msm_fb_show (struct seq_file * m , void * arg )
122
+ {
123
+ struct drm_info_node * node = m -> private ;
124
+ struct drm_device * dev = node -> minor -> dev ;
125
+ struct drm_framebuffer * fb , * fbdev_fb = NULL ;
126
+
127
+ if (dev -> fb_helper && dev -> fb_helper -> fb ) {
128
+ seq_puts (m , "fbcon " );
129
+ fbdev_fb = dev -> fb_helper -> fb ;
130
+ msm_framebuffer_describe (fbdev_fb , m );
131
+ }
132
+
133
+ mutex_lock (& dev -> mode_config .fb_lock );
134
+ list_for_each_entry (fb , & dev -> mode_config .fb_list , head ) {
135
+ if (fb == fbdev_fb )
136
+ continue ;
137
+
138
+ seq_puts (m , "user " );
139
+ msm_framebuffer_describe (fb , m );
140
+ }
141
+ mutex_unlock (& dev -> mode_config .fb_lock );
142
+
143
+ return 0 ;
144
+ }
145
+
146
+ static struct drm_info_list msm_kms_debugfs_list [] = {
147
+ { "fb" , msm_fb_show },
148
+ };
149
+
120
150
/*
121
151
* Display Snapshot:
122
152
*/
@@ -180,6 +210,27 @@ static const struct file_operations msm_kms_fops = {
180
210
.release = msm_kms_release ,
181
211
};
182
212
213
+ static void msm_debugfs_kms_init (struct drm_minor * minor )
214
+ {
215
+ struct drm_device * dev = minor -> dev ;
216
+ struct msm_drm_private * priv = dev -> dev_private ;
217
+
218
+ drm_debugfs_create_files (msm_kms_debugfs_list ,
219
+ ARRAY_SIZE (msm_kms_debugfs_list ),
220
+ minor -> debugfs_root , minor );
221
+ debugfs_create_file ("kms" , 0400 , minor -> debugfs_root ,
222
+ dev , & msm_kms_fops );
223
+
224
+ if (priv -> kms -> funcs -> debugfs_init )
225
+ priv -> kms -> funcs -> debugfs_init (priv -> kms , minor );
226
+
227
+ }
228
+ #else /* ! CONFIG_DRM_MSM_KMS */
229
+ static void msm_debugfs_kms_init (struct drm_minor * minor )
230
+ {
231
+ }
232
+ #endif
233
+
183
234
/*
184
235
* Other debugfs:
185
236
*/
@@ -267,40 +318,11 @@ static int msm_mm_show(struct seq_file *m, void *arg)
267
318
return 0 ;
268
319
}
269
320
270
- static int msm_fb_show (struct seq_file * m , void * arg )
271
- {
272
- struct drm_info_node * node = m -> private ;
273
- struct drm_device * dev = node -> minor -> dev ;
274
- struct drm_framebuffer * fb , * fbdev_fb = NULL ;
275
-
276
- if (dev -> fb_helper && dev -> fb_helper -> fb ) {
277
- seq_printf (m , "fbcon " );
278
- fbdev_fb = dev -> fb_helper -> fb ;
279
- msm_framebuffer_describe (fbdev_fb , m );
280
- }
281
-
282
- mutex_lock (& dev -> mode_config .fb_lock );
283
- list_for_each_entry (fb , & dev -> mode_config .fb_list , head ) {
284
- if (fb == fbdev_fb )
285
- continue ;
286
-
287
- seq_printf (m , "user " );
288
- msm_framebuffer_describe (fb , m );
289
- }
290
- mutex_unlock (& dev -> mode_config .fb_lock );
291
-
292
- return 0 ;
293
- }
294
-
295
321
static struct drm_info_list msm_debugfs_list [] = {
296
322
{"gem" , msm_gem_show },
297
323
{ "mm" , msm_mm_show },
298
324
};
299
325
300
- static struct drm_info_list msm_kms_debugfs_list [] = {
301
- { "fb" , msm_fb_show },
302
- };
303
-
304
326
static int late_init_minor (struct drm_minor * minor )
305
327
{
306
328
int ret ;
@@ -375,20 +397,12 @@ void msm_debugfs_init(struct drm_minor *minor)
375
397
if (priv -> gpu_pdev )
376
398
msm_debugfs_gpu_init (minor );
377
399
378
- if (priv -> kms ) {
379
- drm_debugfs_create_files (msm_kms_debugfs_list ,
380
- ARRAY_SIZE (msm_kms_debugfs_list ),
381
- minor -> debugfs_root , minor );
382
- debugfs_create_file ("kms" , S_IRUSR , minor -> debugfs_root ,
383
- dev , & msm_kms_fops );
384
- }
400
+ if (priv -> kms )
401
+ msm_debugfs_kms_init (minor );
385
402
386
403
debugfs_create_file ("shrink" , S_IRWXU , minor -> debugfs_root ,
387
404
dev , & shrink_fops );
388
405
389
- if (priv -> kms && priv -> kms -> funcs -> debugfs_init )
390
- priv -> kms -> funcs -> debugfs_init (priv -> kms , minor );
391
-
392
406
fault_create_debugfs_attr ("fail_gem_alloc" , minor -> debugfs_root ,
393
407
& fail_gem_alloc );
394
408
fault_create_debugfs_attr ("fail_gem_iova" , minor -> debugfs_root ,
0 commit comments