@@ -304,21 +304,11 @@ static int v3d_platform_drm_probe(struct platform_device *pdev)
304304 if (ret )
305305 return ret ;
306306
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-
317307 mmu_debug = V3D_READ (V3D_MMU_DEBUG_INFO );
318308 mask = DMA_BIT_MASK (30 + V3D_GET_FIELD (mmu_debug , V3D_MMU_PA_WIDTH ));
319309 ret = dma_set_mask_and_coherent (dev , mask );
320310 if (ret )
321- goto clk_disable ;
311+ return ret ;
322312
323313 v3d -> va_width = 30 + V3D_GET_FIELD (mmu_debug , V3D_MMU_VA_WIDTH );
324314
@@ -338,14 +328,14 @@ static int v3d_platform_drm_probe(struct platform_device *pdev)
338328 ret = PTR_ERR (v3d -> reset );
339329
340330 if (ret == - EPROBE_DEFER )
341- goto clk_disable ;
331+ return ret ;
342332
343333 v3d -> reset = NULL ;
344334 ret = map_regs (v3d , & v3d -> bridge_regs , "bridge" );
345335 if (ret ) {
346336 dev_err (dev ,
347337 "Failed to get reset control or bridge regs\n" );
348- goto clk_disable ;
338+ return ret ;
349339 }
350340 }
351341
@@ -377,15 +367,14 @@ static int v3d_platform_drm_probe(struct platform_device *pdev)
377367 if (v3d -> ver < 41 ) {
378368 ret = map_regs (v3d , & v3d -> gca_regs , "gca" );
379369 if (ret )
380- goto clk_disable ;
370+ return ret ;
381371 }
382372
383373 v3d -> mmu_scratch = dma_alloc_wc (dev , 4096 , & v3d -> mmu_scratch_paddr ,
384374 GFP_KERNEL | __GFP_NOWARN | __GFP_ZERO );
385375 if (!v3d -> mmu_scratch ) {
386376 dev_err (dev , "Failed to allocate MMU scratch page\n" );
387- ret = - ENOMEM ;
388- goto clk_disable ;
377+ return - ENOMEM ;
389378 }
390379
391380 ret = v3d_gem_init (drm );
@@ -416,8 +405,6 @@ static int v3d_platform_drm_probe(struct platform_device *pdev)
416405 v3d_gem_destroy (drm );
417406dma_free :
418407 dma_free_wc (dev , 4096 , v3d -> mmu_scratch , v3d -> mmu_scratch_paddr );
419- clk_disable :
420- clk_disable_unprepare (v3d -> clk );
421408 return ret ;
422409}
423410
@@ -435,8 +422,6 @@ static void v3d_platform_drm_remove(struct platform_device *pdev)
435422
436423 dma_free_wc (v3d -> drm .dev , 4096 , v3d -> mmu_scratch ,
437424 v3d -> mmu_scratch_paddr );
438-
439- clk_disable_unprepare (v3d -> clk );
440425}
441426
442427static struct platform_driver v3d_platform_driver = {
0 commit comments