@@ -964,7 +964,8 @@ static void vc4_hdmi_encoder_post_crtc_powerdown(struct drm_encoder *encoder,
964
964
HDMI_READ (HDMI_VID_CTL ) & ~VC4_HD_VID_CTL_ENABLE );
965
965
966
966
clk_disable_unprepare (vc4_hdmi -> pixel_bvb_clock );
967
- clk_request_done (vc4_hdmi -> bvb_req );
967
+ if (vc4_hdmi -> bvb_req )
968
+ clk_request_done (vc4_hdmi -> bvb_req );
968
969
clk_disable_unprepare (vc4_hdmi -> hsm_clock );
969
970
clk_request_done (vc4_hdmi -> hsm_req );
970
971
clk_disable_unprepare (vc4_hdmi -> pixel_clock );
@@ -1286,7 +1287,8 @@ static void vc4_hdmi_encoder_pre_crtc_configure(struct drm_encoder *encoder,
1286
1287
else
1287
1288
bvb_rate = 75000000 ;
1288
1289
1289
- vc4_hdmi -> bvb_req = clk_request_start (vc4_hdmi -> pixel_bvb_clock , bvb_rate );
1290
+ if (vc4_hdmi -> pixel_bvb_clock )
1291
+ vc4_hdmi -> bvb_req = clk_request_start (vc4_hdmi -> pixel_bvb_clock , bvb_rate );
1290
1292
if (IS_ERR (vc4_hdmi -> bvb_req )) {
1291
1293
DRM_ERROR ("Failed to set pixel bvb clock rate: %ld\n" , PTR_ERR (vc4_hdmi -> bvb_req ));
1292
1294
clk_request_done (vc4_hdmi -> hsm_req );
@@ -1298,7 +1300,8 @@ static void vc4_hdmi_encoder_pre_crtc_configure(struct drm_encoder *encoder,
1298
1300
ret = clk_prepare_enable (vc4_hdmi -> pixel_bvb_clock );
1299
1301
if (ret ) {
1300
1302
DRM_ERROR ("Failed to turn on pixel bvb clock: %d\n" , ret );
1301
- clk_request_done (vc4_hdmi -> bvb_req );
1303
+ if (vc4_hdmi -> bvb_req )
1304
+ clk_request_done (vc4_hdmi -> bvb_req );
1302
1305
clk_request_done (vc4_hdmi -> hsm_req );
1303
1306
clk_disable_unprepare (vc4_hdmi -> hsm_clock );
1304
1307
clk_disable_unprepare (vc4_hdmi -> pixel_clock );
0 commit comments