@@ -304,21 +304,11 @@ static int v3d_platform_drm_probe(struct platform_device *pdev)
304
304
if (ret )
305
305
return ret ;
306
306
307
- v3d -> clk = devm_clk_get_optional (dev , NULL );
308
- if (IS_ERR (v3d -> clk ))
309
- return dev_err_probe (dev , PTR_ERR (v3d -> clk ), "Failed to get V3D clock\n" );
310
-
311
- ret = clk_prepare_enable (v3d -> clk );
312
- if (ret ) {
313
- dev_err (& pdev -> dev , "Couldn't enable the V3D clock\n" );
314
- return ret ;
315
- }
316
-
317
307
mmu_debug = V3D_READ (V3D_MMU_DEBUG_INFO );
318
308
mask = DMA_BIT_MASK (30 + V3D_GET_FIELD (mmu_debug , V3D_MMU_PA_WIDTH ));
319
309
ret = dma_set_mask_and_coherent (dev , mask );
320
310
if (ret )
321
- goto clk_disable ;
311
+ return ret ;
322
312
323
313
v3d -> va_width = 30 + V3D_GET_FIELD (mmu_debug , V3D_MMU_VA_WIDTH );
324
314
@@ -338,14 +328,14 @@ static int v3d_platform_drm_probe(struct platform_device *pdev)
338
328
ret = PTR_ERR (v3d -> reset );
339
329
340
330
if (ret == - EPROBE_DEFER )
341
- goto clk_disable ;
331
+ return ret ;
342
332
343
333
v3d -> reset = NULL ;
344
334
ret = map_regs (v3d , & v3d -> bridge_regs , "bridge" );
345
335
if (ret ) {
346
336
dev_err (dev ,
347
337
"Failed to get reset control or bridge regs\n" );
348
- goto clk_disable ;
338
+ return ret ;
349
339
}
350
340
}
351
341
@@ -377,15 +367,14 @@ static int v3d_platform_drm_probe(struct platform_device *pdev)
377
367
if (v3d -> ver < 41 ) {
378
368
ret = map_regs (v3d , & v3d -> gca_regs , "gca" );
379
369
if (ret )
380
- goto clk_disable ;
370
+ return ret ;
381
371
}
382
372
383
373
v3d -> mmu_scratch = dma_alloc_wc (dev , 4096 , & v3d -> mmu_scratch_paddr ,
384
374
GFP_KERNEL | __GFP_NOWARN | __GFP_ZERO );
385
375
if (!v3d -> mmu_scratch ) {
386
376
dev_err (dev , "Failed to allocate MMU scratch page\n" );
387
- ret = - ENOMEM ;
388
- goto clk_disable ;
377
+ return - ENOMEM ;
389
378
}
390
379
391
380
ret = v3d_gem_init (drm );
@@ -416,8 +405,6 @@ static int v3d_platform_drm_probe(struct platform_device *pdev)
416
405
v3d_gem_destroy (drm );
417
406
dma_free :
418
407
dma_free_wc (dev , 4096 , v3d -> mmu_scratch , v3d -> mmu_scratch_paddr );
419
- clk_disable :
420
- clk_disable_unprepare (v3d -> clk );
421
408
return ret ;
422
409
}
423
410
@@ -435,8 +422,6 @@ static void v3d_platform_drm_remove(struct platform_device *pdev)
435
422
436
423
dma_free_wc (v3d -> drm .dev , 4096 , v3d -> mmu_scratch ,
437
424
v3d -> mmu_scratch_paddr );
438
-
439
- clk_disable_unprepare (v3d -> clk );
440
425
}
441
426
442
427
static struct platform_driver v3d_platform_driver = {
0 commit comments