1. 23 11月, 2017 1 次提交
    • V
      drm/edid: Allow HDMI infoframe without VIC or S3D · f1781e9b
      Ville Syrjälä 提交于
      Appedix F of HDMI 2.0 says that some HDMI sink may fail to switch from
      3D to 2D mode in a timely fashion if the source simply stops sending the
      HDMI infoframe. The suggested workaround is to keep sending the
      infoframe even when strictly not necessary (ie. no VIC and no S3D).
      HDMI 1.4 does allow for this behaviour, stating that sending the
      infoframe is optional in this case.
      
      The infoframe was first specified in HDMI 1.4, so in theory sinks
      predating that may not appreciate us sending an uknown infoframe
      their way. To avoid regressions let's try to determine if the sink
      supports the infoframe or not. Unfortunately there's no direct way
      to do that, so instead we'll just check if we managed to parse any
      HDMI 1.4 4k or stereo modes from the EDID, and if so we assume the
      sink will accept the infoframe. Also if the EDID contains the HDMI
      2.0 HDMI Forum VSDB we can assume the sink is prepared to receive
      the infoframe.
      
      v2: Fix getting has_hdmi_infoframe from display_info
          Always fail constructing the infoframe if the display
          possibly can't handle it
      
      Cc: Shashank Sharma <shashank.sharma@intel.com>
      Cc: Andrzej Hajda <a.hajda@samsung.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Signed-off-by: NVille Syrjälä <ville.syrjala@linux.intel.com>
      Reviewed-by: NShashank Sharma <shashank.sharma@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20171113170427.4150-3-ville.syrjala@linux.intel.com
      f1781e9b
  2. 22 11月, 2017 2 次提交
  3. 21 11月, 2017 10 次提交
  4. 20 11月, 2017 2 次提交
  5. 17 11月, 2017 2 次提交
  6. 16 11月, 2017 5 次提交
  7. 15 11月, 2017 6 次提交
  8. 14 11月, 2017 7 次提交
  9. 13 11月, 2017 1 次提交
    • E
      drm/rockchip: analogix_dp: Use mutex rather than spinlock · 44419ce7
      Emil Renner Berthing 提交于
      On the Samsung Chromebook Plus I get this error with 4.14-rc3:
      
      BUG: scheduling while atomic: kworker/3:1/50/0x00000002
      Modules linked in:
      CPU: 3 PID: 50 Comm: kworker/3:1 Not tainted 4.14.0-0.rc3-kevin #2
      Hardware name: Google Kevin (DT)
      Workqueue: events analogix_dp_psr_work
      Call trace:
      [<ffffff80080873b0>] dump_backtrace+0x0/0x320
      [<ffffff80080876e4>] show_stack+0x14/0x20
      [<ffffff8008606d38>] dump_stack+0x9c/0xbc
      [<ffffff80080c6b5c>] __schedule_bug+0x4c/0x70
      [<ffffff80086188c0>] __schedule+0x3f0/0x458
      [<ffffff8008618960>] schedule+0x38/0xa0
      [<ffffff800861c20c>] schedule_hrtimeout_range_clock+0x84/0xe8
      [<ffffff800861c2a0>] schedule_hrtimeout_range+0x10/0x18
      [<ffffff800861bcec>] usleep_range+0x64/0x78
      [<ffffff8008415a6c>] analogix_dp_transfer+0x16c/0x340
      [<ffffff8008412550>] analogix_dpaux_transfer+0x10/0x18
      [<ffffff80083ceb14>] drm_dp_dpcd_access+0x4c/0xf0
      [<ffffff80083cf614>] drm_dp_dpcd_write+0x1c/0x28
      [<ffffff8008413b98>] analogix_dp_disable_psr+0x60/0xa8
      [<ffffff800840da3c>] analogix_dp_psr_work+0x4c/0x90
      [<ffffff80080bb09c>] process_one_work+0x1d4/0x348
      [<ffffff80080bb258>] worker_thread+0x48/0x478
      [<ffffff80080c11fc>] kthread+0x12c/0x130
      [<ffffff8008084290>] ret_from_fork+0x10/0x18
      
      Changing rockchip_dp_device::psr_lock to a mutex rather
      than spinlock seems to fix the issue.
      Signed-off-by: NEmil Renner Berthing <kernel@esmil.dk>
      Tested-by: NEnric Balletbo i Serra <enric.balletbo@collabora.com>
      Signed-off-by: NMark Yao <mark.yao@rock-chips.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20171004175346.11956-1-kernel@esmil.dk
      44419ce7
  10. 11 11月, 2017 4 次提交