@@ -827,7 +827,7 @@ drm_atomic_helper_check_wb_encoder_state(struct drm_encoder *encoder,
827827 if (fb -> format -> format == formats [i ])
828828 return 0 ;
829829
830- drm_dbg_kms (encoder -> dev , "Invalid pixel format %p4cc\n" , & fb -> format -> format );
830+ drm_warn (encoder -> dev , "Invalid pixel format %p4cc\n" , & fb -> format -> format );
831831
832832 return - EINVAL ;
833833}
@@ -885,7 +885,7 @@ int drm_atomic_helper_check_plane_state(struct drm_plane_state *plane_state,
885885 }
886886
887887 if (!crtc_state -> enable && !can_update_disabled ) {
888- drm_dbg_kms (plane_state -> plane -> dev ,
888+ drm_warn (plane_state -> plane -> dev ,
889889 "Cannot update plane of a disabled CRTC.\n" );
890890 return - EINVAL ;
891891 }
@@ -896,7 +896,7 @@ int drm_atomic_helper_check_plane_state(struct drm_plane_state *plane_state,
896896 hscale = drm_rect_calc_hscale (src , dst , min_scale , max_scale );
897897 vscale = drm_rect_calc_vscale (src , dst , min_scale , max_scale );
898898 if (hscale < 0 || vscale < 0 ) {
899- drm_dbg_kms (plane_state -> plane -> dev ,
899+ drm_warn (plane_state -> plane -> dev ,
900900 "Invalid scaling of plane\n" );
901901 drm_rect_debug_print ("src: " , & plane_state -> src , true);
902902 drm_rect_debug_print ("dst: " , & plane_state -> dst , false);
@@ -921,7 +921,7 @@ int drm_atomic_helper_check_plane_state(struct drm_plane_state *plane_state,
921921 return 0 ;
922922
923923 if (!can_position && !drm_rect_equals (dst , & clip )) {
924- drm_dbg_kms (plane_state -> plane -> dev ,
924+ drm_warn (plane_state -> plane -> dev ,
925925 "Plane must cover entire CRTC\n" );
926926 drm_rect_debug_print ("dst: " , dst , false);
927927 drm_rect_debug_print ("clip: " , & clip , false);
@@ -1612,9 +1612,17 @@ int drm_atomic_helper_wait_for_fences(struct drm_device *dev,
16121612 * still interrupt the operation. Instead of blocking until the
16131613 * timer expires, make the wait interruptible.
16141614 */
1615- ret = dma_fence_wait (new_plane_state -> fence , pre_swap );
1616- if (ret )
1615+ // ret = dma_fence_wait(new_plane_state->fence, pre_swap);
1616+ // if (ret)
1617+ // return ret;
1618+ ret = dma_fence_wait_timeout (fence , pre_swap , msecs_to_jiffies (5000 ));
1619+ if (ret = 0 ) {
1620+ DRM_ERROR ("drm_atomic_helper_wait_for_fences timeout\n" );
1621+ }
1622+ if (ret < 0 ) {
1623+ DRM_ERROR ("drm_atomic_helper_wait_for_fences error:%d\n" , ret );
16171624 return ret ;
1625+ }
16181626
16191627 dma_fence_put (new_plane_state -> fence );
16201628 new_plane_state -> fence = NULL ;
0 commit comments