<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">On 2015年11月12日 14:27, Mark yao wrote:<br>
    </div>
    <blockquote cite="mid:56443151.3020508@rock-chips.com" type="cite">
      <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
      <div class="moz-cite-prefix">On 2015年11月11日 00:56, Thierry Reding
        wrote:<br>
      </div>
      <blockquote cite="mid:20151110165615.GB27962@ulmo" type="cite">
        <pre wrap="">On Tue, Nov 10, 2015 at 03:01:03PM +0000, Liviu Dudau wrote:
</pre>
        <blockquote type="cite">
          <pre wrap="">Hello,

When booting my Juno board with the HDLCD driver that I have converted to
atomic operations I'm getting the following warning:
</pre>
        </blockquote>
        <pre wrap="">Perhaps you can provide pointers to the source code, that might make it
easier for people to spot what's going wrong.

Thierry
</pre>
        <br>
        <fieldset class="mimeAttachmentHeader"></fieldset>
        <br>
        <pre wrap="">_______________________________________________
dri-devel mailing list
<a moz-do-not-send="true" class="moz-txt-link-abbreviated" href="mailto:dri-devel@lists.freedesktop.org">dri-devel@lists.freedesktop.org</a>
<a moz-do-not-send="true" class="moz-txt-link-freetext" href="http://lists.freedesktop.org/mailman/listinfo/dri-devel">http://lists.freedesktop.org/mailman/listinfo/dri-devel</a>
</pre>
      </blockquote>
      Hi Thierry<br>
          I encountered the same problem as Liviu.<br>
          I'm coverting rockchip drm to atomic api, when booting with
      hdmi connected, get under warning:<br>
      <br>
      [    1.300156] WARNING: CPU: 0 PID: 26 at
      drivers/gpu/drm/drm_atomic_helper.c:674
      drm_atomic_helper_update_legacy_modeset_state+0x3c/0x1f8()<br>
      [    1.300161] Modules linked in:<br>
      [    1.300171] CPU: 0 PID: 26 Comm: kworker/0:1 Not tainted
      4.3.0-rc5+ #160<br>
      [    1.300174] Hardware name: Rockchip (Device Tree)<br>
      [    1.300189] Workqueue: events output_poll_execute<br>
      [    1.300224] [<c0015e54>] (unwind_backtrace) from
      [<c00123cc>] (show_stack+0x10/0x14)<br>
      [    1.300241] [<c00123cc>] (show_stack) from
      [<c01a5980>] (dump_stack+0x6c/0x88)<br>
      [    1.300255] [<c01a5980>] (dump_stack) from
      [<c0024050>] (warn_slowpath_common+0x80/0xa8)<br>
      [    1.300265] [<c0024050>] (warn_slowpath_common) from
      [<c0024090>] (warn_slowpath_null+0x18/0x1c)<br>
      [    1.300277] [<c0024090>] (warn_slowpath_null) from
      [<c0221184>]
      (drm_atomic_helper_update_legacy_modeset_state+0x3c/0x1f8)<br>
      [    1.300293] [<c0221184>]
      (drm_atomic_helper_update_legacy_modeset_state) from
      [<c0221548>]
      (drm_atomic_helper_commit_modeset_disables+0x208/0x364)<br>
      [    1.300305] [<c0221548>]
      (drm_atomic_helper_commit_modeset_disables) from
      [<c0222248>] (drm_atomic_helper_commit+0xf8/0x140)<br>
      [    1.300320] [<c0222248>] (drm_atomic_helper_commit) from
      [<c02404cc>] (drm_atomic_commit+0x50/0x60)<br>
      [    1.300333] [<c02404cc>] (drm_atomic_commit) from
      [<c0223180>] (restore_fbdev_mode+0xf4/0x278)<br>
      [    1.300345] [<c0223180>] (restore_fbdev_mode) from
      [<c0224164>]
      (drm_fb_helper_restore_fbdev_mode_unlocked+0x30/0x68)<br>
      [    1.300357] [<c0224164>]
      (drm_fb_helper_restore_fbdev_mode_unlocked) from
      [<c02241d8>] (drm_fb_helper_set_par+0x3c/0x54)<br>
      [    1.300368] [<c02241d8>] (drm_fb_helper_set_par) from
      [<c022411c>] (drm_fb_helper_hotplug_event+0xe4/0xfc)<br>
      [    1.300382] [<c022411c>] (drm_fb_helper_hotplug_event)
      from [<c021ade8>] (drm_kms_helper_hotplug_event+0x24/0x28)<br>
      [    1.300396] [<c021ade8>] (drm_kms_helper_hotplug_event)
      from [<c021af20>] (output_poll_execute+0x134/0x18c)<br>
      [    1.300413] [<c021af20>] (output_poll_execute) from
      [<c00377c0>] (process_one_work+0x1e0/0x318)<br>
      [    1.300426] [<c00377c0>] (process_one_work) from
      [<c0037c70>] (worker_thread+0x378/0x4c4)<br>
      [    1.300438] [<c0037c70>] (worker_thread) from
      [<c003c69c>] (kthread+0xdc/0xf0)<br>
      [    1.300450] [<c003c69c>] (kthread) from
      [<c000f5d8>] (ret_from_fork+0x14/0x3c)<br>
      <br>
      I can't found who can set encoder->crtc value before
      atomic_commit, what's going wrong?<br>
      <br>
      <pre class="moz-signature" cols="72">-- 
Mark Yao</pre>
    </blockquote>
    Hi<br>
       here is the message before warning happen (filtering by "dmesg |
    grep drm"), 
    <meta http-equiv="content-type" content="text/html; charset=utf-8">
    Hope this helps:<br>
    <br>
    [    1.245700] [drm:drm_minor_register] <br>
    [    1.245925] [drm:drm_minor_register] new minor registered 64<br>
    [    1.245934] [drm:drm_minor_register] <br>
    [    1.245942] [drm:drm_minor_register] <br>
    [    1.246099] [drm:drm_minor_register] new minor registered 0<br>
    [    1.272968] rockchip-drm display-subsystem: bound ff940000.vop
    (ops vop_component_ops)<br>
    [    1.294790] rockchip-drm display-subsystem: bound ff930000.vop
    (ops vop_component_ops)<br>
    [    1.295086] rockchip-drm display-subsystem: bound ff980000.hdmi
    (ops dw_hdmi_rockchip_ops)<br>
    [    1.295218] [drm:drm_sysfs_connector_add] adding "HDMI-A-1" to
    sysfs<br>
    [    1.295222] [drm:drm_sysfs_hotplug_event] generating hotplug
    event<br>
    [    1.295268] [drm] Supports vblank timestamp caching Rev 2
    (21.10.2013).<br>
    [    1.295270] [drm] No driver support for vblank timestamp query.<br>
    [    1.295290]
    [drm:drm_helper_probe_single_connector_modes_merge_bits]
    [CONNECTOR:29:HDMI-A-1]<br>
    [    1.295304]
    [drm:drm_helper_probe_single_connector_modes_merge_bits]
    [CONNECTOR:29:HDMI-A-1] status updated from 3 to 1<br>
    [    1.295470] [drm:drm_do_probe_ddc_edid] drm: skipping
    non-existent adapter rk3x-i2c<br>
    [    1.295513] [drm:drm_mode_debug_printmodeline] Modeline
    30:"640x480" 0 25175 640 656 752 800 480 490 492 525 0x40 0xa<br>
    [    1.295518] [drm:drm_mode_prune_invalid] Not using 640x480 mode:
    BAD<br>
    [    1.295531] [drm:drm_mode_debug_printmodeline] Modeline
    33:"848x480" 0 33750 848 864 976 1088 480 486 494 517 0x40 0x5<br>
    [    1.295535] [drm:drm_mode_prune_invalid] Not using 848x480 mode:
    BAD<br>
    [    1.295543]
    [drm:drm_helper_probe_single_connector_modes_merge_bits]
    [CONNECTOR:29:HDMI-A-1] probed modes :<br>
    [    1.295555] [drm:drm_mode_debug_printmodeline] Modeline
    34:"1024x768" 60 65000 1024 1048 1184 1344 768 771 777 806 0x40 0xa<br>
    [    1.295564] [drm:drm_mode_debug_printmodeline] Modeline
    32:"800x600" 60 40000 800 840 968 1056 600 601 605 628 0x40 0x5<br>
    [    1.295573] [drm:drm_mode_debug_printmodeline] Modeline
    31:"800x600" 56 36000 800 824 896 1024 600 601 603 625 0x40 0x5<br>
    [    1.295581] [drm:drm_setup_crtcs] <br>
    [    1.295594] [drm:drm_enable_connectors] connector 29 enabled? yes<br>
    [    1.295601] [drm:drm_target_preferred] looking for cmdline mode
    on connector 29<br>
    [    1.295606] [drm:drm_target_preferred] looking for preferred mode
    on connector 29 0<br>
    [    1.295609] [drm:drm_target_preferred] found mode 1024x768<br>
    [    1.295614] [drm:drm_setup_crtcs] picking CRTCs for 4096x4096
    config<br>
    [    1.295623] [drm:drm_setup_crtcs] desired mode 1024x768 set on
    crtc 20 (0,0)<br>
    [    1.299403] [drm:rockchip_drm_fbdev_create] FB [1024x768]-24
    kvaddr=f0121000 offset=0 size=3145728<br>
    [    1.299512] [drm:drm_sysfs_hotplug_event] generating hotplug
    event<br>
    [    1.299540] [drm:drm_fb_helper_hotplug_event] <br>
    [    1.299546]
    [drm:drm_helper_probe_single_connector_modes_merge_bits]
    [CONNECTOR:29:HDMI-A-1]<br>
    [    1.299712] [drm:drm_do_probe_ddc_edid] drm: skipping
    non-existent adapter rk3x-i2c<br>
    [    1.299750] [drm:drm_mode_debug_printmodeline] Modeline
    35:"640x480" 0 25175 640 656 752 800 480 490 492 525 0x40 0xa<br>
    [    1.299755] [drm:drm_mode_prune_invalid] Not using 640x480 mode:
    BAD<br>
    [    1.299764] [drm:drm_mode_debug_printmodeline] Modeline
    38:"848x480" 0 33750 848 864 976 1088 480 486 494 517 0x40 0x5<br>
    [    1.299769] [drm:drm_mode_prune_invalid] Not using 848x480 mode:
    BAD<br>
    [    1.299776]
    [drm:drm_helper_probe_single_connector_modes_merge_bits]
    [CONNECTOR:29:HDMI-A-1] probed modes :<br>
    [    1.299786] [drm:drm_mode_debug_printmodeline] Modeline
    34:"1024x768" 60 65000 1024 1048 1184 1344 768 771 777 806 0x40 0xa<br>
    [    1.299795] [drm:drm_mode_debug_printmodeline] Modeline
    32:"800x600" 60 40000 800 840 968 1056 600 601 605 628 0x40 0x5<br>
    [    1.299804] [drm:drm_mode_debug_printmodeline] Modeline
    31:"800x600" 56 36000 800 824 896 1024 600 601 603 625 0x40 0x5<br>
    [    1.299811] [drm:drm_setup_crtcs] <br>
    [    1.299818] [drm:drm_enable_connectors] connector 29 enabled? yes<br>
    [    1.299822] [drm:drm_target_preferred] looking for cmdline mode
    on connector 29<br>
    [    1.299827] [drm:drm_target_preferred] looking for preferred mode
    on connector 29 0<br>
    [    1.299831] [drm:drm_target_preferred] found mode 1024x768<br>
    [    1.299836] [drm:drm_setup_crtcs] picking CRTCs for 4096x4096
    config<br>
    [    1.299842] [drm:drm_setup_crtcs] desired mode 1024x768 set on
    crtc 20 (0,0)<br>
    [    1.299857] [drm:drm_atomic_state_init] Allocated atomic state
    ee38ebc0<br>
    [    1.299868] [drm:drm_atomic_get_plane_state] Added [PLANE:18]
    ee38eac0 state to ee38ebc0<br>
    [    1.299875] [drm:drm_atomic_get_plane_state] Added [PLANE:19]
    ee38ea80 state to ee38ebc0<br>
    [    1.299880] [drm:drm_atomic_set_crtc_for_plane] Link plane state
    ee38ea80 to [NOCRTC]<br>
    [    1.299885] [drm:drm_atomic_set_fb_for_plane] Set [NOFB] for
    plane state ee38ea80<br>
    [    1.299892] [drm:drm_atomic_get_plane_state] Added [PLANE:21]
    ee38ea40 state to ee38ebc0<br>
    [    1.299897] [drm:drm_atomic_set_crtc_for_plane] Link plane state
    ee38ea40 to [NOCRTC]<br>
    [    1.299901] [drm:drm_atomic_set_fb_for_plane] Set [NOFB] for
    plane state ee38ea40<br>
    [    1.299907] [drm:drm_atomic_get_plane_state] Added [PLANE:22]
    ee38ea00 state to ee38ebc0<br>
    [    1.299911] [drm:drm_atomic_set_crtc_for_plane] Link plane state
    ee38ea00 to [NOCRTC]<br>
    [    1.299916] [drm:drm_atomic_set_fb_for_plane] Set [NOFB] for
    plane state ee38ea00<br>
    [    1.299922] [drm:drm_atomic_get_plane_state] Added [PLANE:23]
    ee38e9c0 state to ee38ebc0<br>
    [    1.299929] [drm:drm_atomic_get_plane_state] Added [PLANE:24]
    ee38e980 state to ee38ebc0<br>
    [    1.299933] [drm:drm_atomic_set_crtc_for_plane] Link plane state
    ee38e980 to [NOCRTC]<br>
    [    1.299937] [drm:drm_atomic_set_fb_for_plane] Set [NOFB] for
    plane state ee38e980<br>
    [    1.299943] [drm:drm_atomic_get_plane_state] Added [PLANE:26]
    ee38e940 state to ee38ebc0<br>
    [    1.299947] [drm:drm_atomic_set_crtc_for_plane] Link plane state
    ee38e940 to [NOCRTC]<br>
    [    1.299951] [drm:drm_atomic_set_fb_for_plane] Set [NOFB] for
    plane state ee38e940<br>
    [    1.299958] [drm:drm_atomic_get_plane_state] Added [PLANE:27]
    ee38e900 state to ee38ebc0<br>
    [    1.299962] [drm:drm_atomic_set_crtc_for_plane] Link plane state
    ee38e900 to [NOCRTC]<br>
    [    1.299966] [drm:drm_atomic_set_fb_for_plane] Set [NOFB] for
    plane state ee38e900<br>
    [    1.299975] [drm:drm_atomic_get_crtc_state] Added [CRTC:20]
    ee340000 state to ee38ebc0<br>
    [    1.299985] [drm:drm_atomic_set_mode_for_crtc] Set
    [MODE:1024x768] for CRTC state ee340000<br>
    [    1.299990] [drm:drm_atomic_set_crtc_for_plane] Link plane state
    ee38eac0 to [CRTC:20]<br>
    [    1.299995] [drm:drm_framebuffer_reference] ee20f640: FB ID: 33
    (1)<br>
    [    1.300000] [drm:drm_atomic_set_fb_for_plane] Set [FB:33] for
    plane state ee38eac0<br>
    [    1.300008] [drm:drm_atomic_get_connector_state] Added
    [CONNECTOR:29] ee38e8c0 state to ee38ebc0<br>
    [    1.300015] [drm:drm_atomic_add_affected_connectors] Adding all
    current connectors for [CRTC:20] to ee38ebc0<br>
    [    1.300021] [drm:drm_atomic_set_crtc_for_connector] Link
    connector state ee38e8c0 to [CRTC:20]<br>
    [    1.300033] [drm:drm_atomic_get_crtc_state] Added [CRTC:25]
    ee393e00 state to ee38ebc0<br>
    [    1.300038] [drm:drm_atomic_set_mode_for_crtc] Set [NOMODE] for
    CRTC state ee393e00<br>
    [    1.300043] [drm:drm_atomic_set_crtc_for_plane] Link plane state
    ee38e9c0 to [NOCRTC]<br>
    [    1.300047] [drm:drm_atomic_set_fb_for_plane] Set [NOFB] for
    plane state ee38e9c0<br>
    [    1.300053] [drm:drm_atomic_add_affected_connectors] Adding all
    current connectors for [CRTC:20] to ee38ebc0<br>
    [    1.300059] [drm:drm_atomic_add_affected_connectors] Adding all
    current connectors for [CRTC:25] to ee38ebc0<br>
    [    1.300067] [drm:drm_atomic_connectors_for_crtc] State ee38ebc0
    has 1 connectors for [CRTC:20]<br>
    [    1.300071] [drm:drm_atomic_check_only] checking ee38ebc0<br>
    [    1.300079] [drm:drm_atomic_helper_check_modeset] [CRTC:20] mode
    changed<br>
    [    1.300083] [drm:drm_atomic_helper_check_modeset] [CRTC:20]
    enable changed<br>
    [    1.300088] [drm:update_connector_routing] Updating routing for
    [CONNECTOR:29:HDMI-A-1]<br>
    [    1.300095] [drm:update_connector_routing]
    [CONNECTOR:29:HDMI-A-1] using [ENCODER:28:TMDS-28] on [CRTC:20]<br>
    [    1.300100] [drm:drm_atomic_helper_check_modeset] [CRTC:20]
    active changed<br>
    [    1.300105] [drm:drm_atomic_helper_check_modeset] [CRTC:20] needs
    all connectors, enable: y, active: y<br>
    [    1.300111] [drm:drm_atomic_add_affected_connectors] Adding all
    current connectors for [CRTC:20] to ee38ebc0<br>
    [    1.300117] [drm:drm_atomic_connectors_for_crtc] State ee38ebc0
    has 1 connectors for [CRTC:20]<br>
    [    1.300130] [drm:drm_atomic_commit] commiting ee38ebc0<br>
    [    1.300156] WARNING: CPU: 0 PID: 26 at
    drivers/gpu/drm/drm_atomic_helper.c:674
    drm_atomic_helper_update_legacy_modeset_state+0x3c/0x1f8()<br>
    <br>
    <pre class="moz-signature" cols="72">-- 
Mark Yao</pre>
  </body>
</html>