@@ -157,7 +157,6 @@ enum soc_type {
157
157
* @reference_voltage: reference voltage of amplifier
158
158
* in the positive-TC generator block
159
159
* 0 < reference_voltage <= 31
160
- * @regulator: pointer to the TMU regulator structure.
161
160
* @tzd: pointer to thermal_zone_device structure
162
161
* @ntrip: number of supported trip points.
163
162
* @enabled: current status of TMU device
@@ -183,7 +182,6 @@ struct exynos_tmu_data {
183
182
u16 temp_error1 , temp_error2 ;
184
183
u8 gain ;
185
184
u8 reference_voltage ;
186
- struct regulator * regulator ;
187
185
struct thermal_zone_device * tzd ;
188
186
unsigned int ntrip ;
189
187
bool enabled ;
@@ -994,50 +992,40 @@ static int exynos_tmu_probe(struct platform_device *pdev)
994
992
* TODO: Add regulator as an SOC feature, so that regulator enable
995
993
* is a compulsory call.
996
994
*/
997
- data -> regulator = devm_regulator_get_optional (& pdev -> dev , "vtmu" );
998
- if (!IS_ERR (data -> regulator )) {
999
- ret = regulator_enable (data -> regulator );
1000
- if (ret ) {
1001
- dev_err (& pdev -> dev , "failed to enable vtmu\n" );
1002
- return ret ;
1003
- }
1004
- } else {
1005
- ret = PTR_ERR (data -> regulator );
1006
- switch (ret ) {
1007
- case - ENODEV :
1008
- break ;
1009
- case - EPROBE_DEFER :
1010
- return - EPROBE_DEFER ;
1011
- default :
1012
- dev_err (& pdev -> dev , "Failed to get regulator: %d\n" ,
1013
- ret );
1014
- return ret ;
1015
- }
995
+ ret = devm_regulator_get_enable_optional (& pdev -> dev , "vtmu" );
996
+ switch (ret ) {
997
+ case 0 :
998
+ case - ENODEV :
999
+ break ;
1000
+ case - EPROBE_DEFER :
1001
+ return - EPROBE_DEFER ;
1002
+ default :
1003
+ dev_err (& pdev -> dev , "Failed to get enabled regulator: %d\n" ,
1004
+ ret );
1005
+ return ret ;
1016
1006
}
1017
1007
1018
1008
ret = exynos_map_dt_data (pdev );
1019
1009
if (ret )
1020
- goto err_sensor ;
1010
+ return ret ;
1021
1011
1022
1012
data -> clk = devm_clk_get (& pdev -> dev , "tmu_apbif" );
1023
1013
if (IS_ERR (data -> clk )) {
1024
1014
dev_err (& pdev -> dev , "Failed to get clock\n" );
1025
- ret = PTR_ERR (data -> clk );
1026
- goto err_sensor ;
1015
+ return PTR_ERR (data -> clk );
1027
1016
}
1028
1017
1029
1018
data -> clk_sec = devm_clk_get (& pdev -> dev , "tmu_triminfo_apbif" );
1030
1019
if (IS_ERR (data -> clk_sec )) {
1031
1020
if (data -> soc == SOC_ARCH_EXYNOS5420_TRIMINFO ) {
1032
1021
dev_err (& pdev -> dev , "Failed to get triminfo clock\n" );
1033
- ret = PTR_ERR (data -> clk_sec );
1034
- goto err_sensor ;
1022
+ return PTR_ERR (data -> clk_sec );
1035
1023
}
1036
1024
} else {
1037
1025
ret = clk_prepare (data -> clk_sec );
1038
1026
if (ret ) {
1039
1027
dev_err (& pdev -> dev , "Failed to get clock\n" );
1040
- goto err_sensor ;
1028
+ return ret ;
1041
1029
}
1042
1030
}
1043
1031
@@ -1107,10 +1095,6 @@ static int exynos_tmu_probe(struct platform_device *pdev)
1107
1095
err_clk_sec :
1108
1096
if (!IS_ERR (data -> clk_sec ))
1109
1097
clk_unprepare (data -> clk_sec );
1110
- err_sensor :
1111
- if (!IS_ERR (data -> regulator ))
1112
- regulator_disable (data -> regulator );
1113
-
1114
1098
return ret ;
1115
1099
}
1116
1100
@@ -1124,9 +1108,6 @@ static void exynos_tmu_remove(struct platform_device *pdev)
1124
1108
clk_unprepare (data -> clk );
1125
1109
if (!IS_ERR (data -> clk_sec ))
1126
1110
clk_unprepare (data -> clk_sec );
1127
-
1128
- if (!IS_ERR (data -> regulator ))
1129
- regulator_disable (data -> regulator );
1130
1111
}
1131
1112
1132
1113
#ifdef CONFIG_PM_SLEEP
0 commit comments