@@ -124,7 +124,7 @@ static int rockchip_pcie_phy_power_off(struct phy *phy)
124
124
struct rockchip_pcie_phy * rk_phy = to_pcie_phy (inst );
125
125
int err = 0 ;
126
126
127
- mutex_lock (& rk_phy -> pcie_mutex );
127
+ guard ( mutex ) (& rk_phy -> pcie_mutex );
128
128
129
129
regmap_write (rk_phy -> reg_base ,
130
130
rk_phy -> phy_data -> pcie_laneoff ,
@@ -133,7 +133,6 @@ static int rockchip_pcie_phy_power_off(struct phy *phy)
133
133
PHY_LANE_IDLE_A_SHIFT + inst -> index ));
134
134
135
135
if (-- rk_phy -> pwr_cnt ) {
136
- mutex_unlock (& rk_phy -> pcie_mutex );
137
136
return 0 ;
138
137
}
139
138
@@ -146,11 +145,9 @@ static int rockchip_pcie_phy_power_off(struct phy *phy)
146
145
HIWORD_UPDATE (!PHY_LANE_IDLE_OFF ,
147
146
PHY_LANE_IDLE_MASK ,
148
147
PHY_LANE_IDLE_A_SHIFT + inst -> index ));
149
- mutex_unlock (& rk_phy -> pcie_mutex );
150
148
return err ;
151
149
}
152
150
153
- mutex_unlock (& rk_phy -> pcie_mutex );
154
151
return err ;
155
152
}
156
153
@@ -161,18 +158,16 @@ static int rockchip_pcie_phy_power_on(struct phy *phy)
161
158
int err = 0 ;
162
159
u32 status ;
163
160
164
- mutex_lock (& rk_phy -> pcie_mutex );
161
+ guard ( mutex ) (& rk_phy -> pcie_mutex );
165
162
166
163
if (rk_phy -> pwr_cnt ++ ) {
167
- mutex_unlock (& rk_phy -> pcie_mutex );
168
164
return 0 ;
169
165
}
170
166
171
167
err = reset_control_deassert (rk_phy -> phy_rst );
172
168
if (err ) {
173
169
dev_err (& phy -> dev , "deassert phy_rst err %d\n" , err );
174
170
rk_phy -> pwr_cnt -- ;
175
- mutex_unlock (& rk_phy -> pcie_mutex );
176
171
return err ;
177
172
}
178
173
@@ -230,13 +225,11 @@ static int rockchip_pcie_phy_power_on(struct phy *phy)
230
225
goto err_pll_lock ;
231
226
}
232
227
233
- mutex_unlock (& rk_phy -> pcie_mutex );
234
228
return err ;
235
229
236
230
err_pll_lock :
237
231
reset_control_assert (rk_phy -> phy_rst );
238
232
rk_phy -> pwr_cnt -- ;
239
- mutex_unlock (& rk_phy -> pcie_mutex );
240
233
return err ;
241
234
}
242
235
@@ -246,22 +239,19 @@ static int rockchip_pcie_phy_init(struct phy *phy)
246
239
struct rockchip_pcie_phy * rk_phy = to_pcie_phy (inst );
247
240
int err = 0 ;
248
241
249
- mutex_lock (& rk_phy -> pcie_mutex );
242
+ guard ( mutex ) (& rk_phy -> pcie_mutex );
250
243
251
244
if (rk_phy -> init_cnt ++ ) {
252
- mutex_unlock (& rk_phy -> pcie_mutex );
253
245
return 0 ;
254
246
}
255
247
256
248
err = reset_control_assert (rk_phy -> phy_rst );
257
249
if (err ) {
258
250
dev_err (& phy -> dev , "assert phy_rst err %d\n" , err );
259
251
rk_phy -> init_cnt -- ;
260
- mutex_unlock (& rk_phy -> pcie_mutex );
261
252
return err ;
262
253
}
263
254
264
- mutex_unlock (& rk_phy -> pcie_mutex );
265
255
return err ;
266
256
}
267
257
@@ -270,13 +260,12 @@ static int rockchip_pcie_phy_exit(struct phy *phy)
270
260
struct phy_pcie_instance * inst = phy_get_drvdata (phy );
271
261
struct rockchip_pcie_phy * rk_phy = to_pcie_phy (inst );
272
262
273
- mutex_lock (& rk_phy -> pcie_mutex );
263
+ guard ( mutex ) (& rk_phy -> pcie_mutex );
274
264
275
265
if (-- rk_phy -> init_cnt )
276
266
goto err_init_cnt ;
277
267
278
268
err_init_cnt :
279
- mutex_unlock (& rk_phy -> pcie_mutex );
280
269
return 0 ;
281
270
}
282
271
0 commit comments