@@ -390,28 +390,23 @@ static int mtk_cpu_dvfs_info_init(struct mtk_cpu_dvfs_info *info, int cpu)
390
390
int ret ;
391
391
392
392
cpu_dev = get_cpu_device (cpu );
393
- if (!cpu_dev ) {
394
- dev_err (cpu_dev , "failed to get cpu%d device\n" , cpu );
395
- return - ENODEV ;
396
- }
393
+ if (!cpu_dev )
394
+ return dev_err_probe (cpu_dev , - ENODEV , "failed to get cpu%d device\n" , cpu );
397
395
info -> cpu_dev = cpu_dev ;
398
396
399
397
info -> ccifreq_bound = false;
400
398
if (info -> soc_data -> ccifreq_supported ) {
401
399
info -> cci_dev = of_get_cci (info -> cpu_dev );
402
- if (IS_ERR (info -> cci_dev )) {
403
- ret = PTR_ERR (info -> cci_dev );
404
- dev_err (cpu_dev , "cpu%d: failed to get cci device\n" , cpu );
405
- return - ENODEV ;
406
- }
400
+ if (IS_ERR (info -> cci_dev ))
401
+ return dev_err_probe (cpu_dev , PTR_ERR (info -> cci_dev ),
402
+ "cpu%d: failed to get cci device\n" ,
403
+ cpu );
407
404
}
408
405
409
406
info -> cpu_clk = clk_get (cpu_dev , "cpu" );
410
- if (IS_ERR (info -> cpu_clk )) {
411
- ret = PTR_ERR (info -> cpu_clk );
412
- return dev_err_probe (cpu_dev , ret ,
407
+ if (IS_ERR (info -> cpu_clk ))
408
+ return dev_err_probe (cpu_dev , PTR_ERR (info -> cpu_clk ),
413
409
"cpu%d: failed to get cpu clk\n" , cpu );
414
- }
415
410
416
411
info -> inter_clk = clk_get (cpu_dev , "intermediate" );
417
412
if (IS_ERR (info -> inter_clk )) {
@@ -431,54 +426,60 @@ static int mtk_cpu_dvfs_info_init(struct mtk_cpu_dvfs_info *info, int cpu)
431
426
432
427
ret = regulator_enable (info -> proc_reg );
433
428
if (ret ) {
434
- dev_warn (cpu_dev , "cpu%d: failed to enable vproc\n" , cpu );
429
+ dev_err_probe (cpu_dev , ret , "cpu%d: failed to enable vproc\n" , cpu );
435
430
goto out_free_proc_reg ;
436
431
}
437
432
438
433
/* Both presence and absence of sram regulator are valid cases. */
439
434
info -> sram_reg = regulator_get_optional (cpu_dev , "sram" );
440
435
if (IS_ERR (info -> sram_reg )) {
441
436
ret = PTR_ERR (info -> sram_reg );
442
- if (ret == - EPROBE_DEFER )
437
+ if (ret == - EPROBE_DEFER ) {
438
+ dev_err_probe (cpu_dev , ret ,
439
+ "cpu%d: Failed to get sram regulator\n" , cpu );
443
440
goto out_disable_proc_reg ;
441
+ }
444
442
445
443
info -> sram_reg = NULL ;
446
444
} else {
447
445
ret = regulator_enable (info -> sram_reg );
448
446
if (ret ) {
449
- dev_warn (cpu_dev , "cpu%d: failed to enable vsram\n" , cpu );
447
+ dev_err_probe (cpu_dev , ret , "cpu%d: failed to enable vsram\n" , cpu );
450
448
goto out_free_sram_reg ;
451
449
}
452
450
}
453
451
454
452
/* Get OPP-sharing information from "operating-points-v2" bindings */
455
453
ret = dev_pm_opp_of_get_sharing_cpus (cpu_dev , & info -> cpus );
456
454
if (ret ) {
457
- dev_err (cpu_dev ,
455
+ dev_err_probe (cpu_dev , ret ,
458
456
"cpu%d: failed to get OPP-sharing information\n" , cpu );
459
457
goto out_disable_sram_reg ;
460
458
}
461
459
462
460
ret = dev_pm_opp_of_cpumask_add_table (& info -> cpus );
463
461
if (ret ) {
464
- dev_warn (cpu_dev , "cpu%d: no OPP table\n" , cpu );
462
+ dev_err_probe (cpu_dev , ret , "cpu%d: no OPP table\n" , cpu );
465
463
goto out_disable_sram_reg ;
466
464
}
467
465
468
466
ret = clk_prepare_enable (info -> cpu_clk );
469
- if (ret )
467
+ if (ret ) {
468
+ dev_err_probe (cpu_dev , ret , "cpu%d: failed to enable cpu clk\n" , cpu );
470
469
goto out_free_opp_table ;
470
+ }
471
471
472
472
ret = clk_prepare_enable (info -> inter_clk );
473
- if (ret )
473
+ if (ret ) {
474
+ dev_err_probe (cpu_dev , ret , "cpu%d: failed to enable inter clk\n" , cpu );
474
475
goto out_disable_mux_clock ;
476
+ }
475
477
476
478
if (info -> soc_data -> ccifreq_supported ) {
477
479
info -> vproc_on_boot = regulator_get_voltage (info -> proc_reg );
478
480
if (info -> vproc_on_boot < 0 ) {
479
- ret = info -> vproc_on_boot ;
480
- dev_err (info -> cpu_dev ,
481
- "invalid Vproc value: %d\n" , info -> vproc_on_boot );
481
+ ret = dev_err_probe (info -> cpu_dev , info -> vproc_on_boot ,
482
+ "invalid Vproc value\n" );
482
483
goto out_disable_inter_clock ;
483
484
}
484
485
}
@@ -487,8 +488,8 @@ static int mtk_cpu_dvfs_info_init(struct mtk_cpu_dvfs_info *info, int cpu)
487
488
rate = clk_get_rate (info -> inter_clk );
488
489
opp = dev_pm_opp_find_freq_ceil (cpu_dev , & rate );
489
490
if (IS_ERR (opp )) {
490
- dev_err (cpu_dev , "cpu%d: failed to get intermediate opp\n" , cpu );
491
- ret = PTR_ERR ( opp );
491
+ ret = dev_err_probe (cpu_dev , PTR_ERR ( opp ),
492
+ "cpu%d: failed to get intermediate opp\n" , cpu );
492
493
goto out_disable_inter_clock ;
493
494
}
494
495
info -> intermediate_voltage = dev_pm_opp_get_voltage (opp );
@@ -501,7 +502,7 @@ static int mtk_cpu_dvfs_info_init(struct mtk_cpu_dvfs_info *info, int cpu)
501
502
info -> opp_nb .notifier_call = mtk_cpufreq_opp_notifier ;
502
503
ret = dev_pm_opp_register_notifier (cpu_dev , & info -> opp_nb );
503
504
if (ret ) {
504
- dev_err (cpu_dev , "cpu%d: failed to register opp notifier\n" , cpu );
505
+ dev_err_probe (cpu_dev , ret , "cpu%d: failed to register opp notifier\n" , cpu );
505
506
goto out_disable_inter_clock ;
506
507
}
507
508
@@ -627,11 +628,9 @@ static int mtk_cpufreq_probe(struct platform_device *pdev)
627
628
int cpu , ret ;
628
629
629
630
data = dev_get_platdata (& pdev -> dev );
630
- if (!data ) {
631
- dev_err (& pdev -> dev ,
632
- "failed to get mtk cpufreq platform data\n" );
633
- return - ENODEV ;
634
- }
631
+ if (!data )
632
+ return dev_err_probe (& pdev -> dev , - ENODEV ,
633
+ "failed to get mtk cpufreq platform data\n" );
635
634
636
635
for_each_possible_cpu (cpu ) {
637
636
info = mtk_cpu_dvfs_info_lookup (cpu );
@@ -640,25 +639,22 @@ static int mtk_cpufreq_probe(struct platform_device *pdev)
640
639
641
640
info = devm_kzalloc (& pdev -> dev , sizeof (* info ), GFP_KERNEL );
642
641
if (!info ) {
643
- ret = - ENOMEM ;
642
+ ret = dev_err_probe (& pdev -> dev , - ENOMEM ,
643
+ "Failed to allocate dvfs_info\n" );
644
644
goto release_dvfs_info_list ;
645
645
}
646
646
647
647
info -> soc_data = data ;
648
648
ret = mtk_cpu_dvfs_info_init (info , cpu );
649
- if (ret ) {
650
- dev_err (& pdev -> dev ,
651
- "failed to initialize dvfs info for cpu%d\n" ,
652
- cpu );
649
+ if (ret )
653
650
goto release_dvfs_info_list ;
654
- }
655
651
656
652
list_add (& info -> list_head , & dvfs_info_list );
657
653
}
658
654
659
655
ret = cpufreq_register_driver (& mtk_cpufreq_driver );
660
656
if (ret ) {
661
- dev_err (& pdev -> dev , "failed to register mtk cpufreq driver\n" );
657
+ dev_err_probe (& pdev -> dev , ret , "failed to register mtk cpufreq driver\n" );
662
658
goto release_dvfs_info_list ;
663
659
}
664
660
0 commit comments