@@ -930,7 +930,8 @@ static void vc4_hdmi_encoder_post_crtc_powerdown(struct drm_encoder *encoder,
930
930
HDMI_READ (HDMI_VID_CTL ) & ~VC4_HD_VID_CTL_ENABLE );
931
931
932
932
clk_disable_unprepare (vc4_hdmi -> pixel_bvb_clock );
933
- clk_request_done (vc4_hdmi -> bvb_req );
933
+ if (vc4_hdmi -> bvb_req )
934
+ clk_request_done (vc4_hdmi -> bvb_req );
934
935
clk_disable_unprepare (vc4_hdmi -> hsm_clock );
935
936
clk_request_done (vc4_hdmi -> hsm_req );
936
937
clk_disable_unprepare (vc4_hdmi -> pixel_clock );
@@ -1259,7 +1260,8 @@ static void vc4_hdmi_encoder_pre_crtc_configure(struct drm_encoder *encoder,
1259
1260
else
1260
1261
bvb_rate = 75000000 ;
1261
1262
1262
- vc4_hdmi -> bvb_req = clk_request_start (vc4_hdmi -> pixel_bvb_clock , bvb_rate );
1263
+ if (vc4_hdmi -> pixel_bvb_clock )
1264
+ vc4_hdmi -> bvb_req = clk_request_start (vc4_hdmi -> pixel_bvb_clock , bvb_rate );
1263
1265
if (IS_ERR (vc4_hdmi -> bvb_req )) {
1264
1266
DRM_ERROR ("Failed to set pixel bvb clock rate: %ld\n" , PTR_ERR (vc4_hdmi -> bvb_req ));
1265
1267
clk_request_done (vc4_hdmi -> hsm_req );
@@ -1271,7 +1273,8 @@ static void vc4_hdmi_encoder_pre_crtc_configure(struct drm_encoder *encoder,
1271
1273
ret = clk_prepare_enable (vc4_hdmi -> pixel_bvb_clock );
1272
1274
if (ret ) {
1273
1275
DRM_ERROR ("Failed to turn on pixel bvb clock: %d\n" , ret );
1274
- clk_request_done (vc4_hdmi -> bvb_req );
1276
+ if (vc4_hdmi -> bvb_req )
1277
+ clk_request_done (vc4_hdmi -> bvb_req );
1275
1278
clk_request_done (vc4_hdmi -> hsm_req );
1276
1279
clk_disable_unprepare (vc4_hdmi -> hsm_clock );
1277
1280
clk_disable_unprepare (vc4_hdmi -> pixel_clock );
0 commit comments