1. 16 9月, 2016 9 次提交
  2. 08 9月, 2016 6 次提交
  3. 07 9月, 2016 6 次提交
    • J
      drm/i2c: tda998x: Register ASoC hdmi-codec and add audio DT binding · 7e567624
      Jyri Sarha 提交于
      Register ASoC HDMI codec for audio functionality and adds device tree
      binding for audio configuration.
      
      With the registered HDMI codec the tda998x node can be used like a
      regular codec node in ASoC card configurations. HDMI audio info-frame
      and audio stream header is generated by the ASoC HDMI codec. The codec
      also applies constraints for available sample-rates based on Edid Like
      Data from the display. The device tree binding document has been
      updated [1].
      
      Part of this patch has been inspired by Jean Francoise's "drm/i2c: tda998x:
      Add support of a DT graph of ports"-patch [2]. There may still be some
      identical lines left from the original patch and some of the ideas
      have come from there.
      
      [1] Documentation/devicetree/bindings/display/bridge/tda998x.txt
      [2] http://mailman.alsa-project.org/pipermail/alsa-devel/2015-July/095255.htmlSigned-off-by: NJyri Sarha <jsarha@ti.com>
      Signed-off-by: NRussell King <rmk+kernel@armlinux.org.uk>
      7e567624
    • J
      drm/i2c: tda998x: Improve tda998x_configure_audio() audio related pdata · 95db3b25
      Jyri Sarha 提交于
      Define struct tda998x_audio_params in include/drm/i2c/tda998x.h and
      use it in pdata and for tda998x_configure_audio() parameters. Also
      updates tda998x_write_aif() to take struct hdmi_audio_infoframe *
      directly as a parameter.
      Signed-off-by: NJyri Sarha <jsarha@ti.com>
      Signed-off-by: NRussell King <rmk+kernel@armlinux.org.uk>
      95db3b25
    • M
      Revert "drm: Unify handling of blob and object properties" · 30c06570
      Maarten Lankhorst 提交于
      This reverts commit 77953bd1.
      
      This causes a kernel panic when trying to assign a blob to a property,
      and has obviously never been tested.
      
      Fixes: 77953bd1 ("drm: Unify handling of blob and object properties")
      Signed-off-by: NMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Tested-by: NLiu Ying <gnuiyl@gmail.com>
      Acked-by: NDaniel Stone <daniels@collabora.com>
      Signed-off-by: NJani Nikula <jani.nikula@intel.com>
      Link: http://patchwork.freedesktop.org/patch/msgid/8c0d3482-1bb5-6a15-b105-6bda2b31b5dc@linux.intel.com
      30c06570
    • H
      drm/udl: implement usb_driver suspend/resume. · 737ba109
      Haixia Shi 提交于
      The usb_driver suspend and resume function pointers must be populated
      to prevent forced unbinding of USB interface driver. See usb/core/driver.c:
      unbind_no_pm_drivers_interfaces().
      
      Restore mode and damage the entire frame buffer upon resume.
      
      TEST=suspend and resume with the same UDL device connected
      TEST=suspend with UDL, unplug UDL and resume
      TEST=suspend with UDL, unplug and connect another UDL device then resume
      Signed-off-by: NHaixia Shi <hshi@chromium.org>
      Reviewed-by: NStéphane Marchesin <marcheu@chromium.org>
      [seanpaul fixed checkpatch warnings and gave marcheu his é back]
      Signed-off-by: NSean Paul <seanpaul@chromium.org>
      Link: http://patchwork.freedesktop.org/patch/msgid/1472593821-38429-2-git-send-email-hshi@chromium.org
      737ba109
    • X
      drm: fix signed integer overflow · ae0119f5
      Xie XiuQi 提交于
      Use 1UL for unsigned long, or we'll meet a overflow issue with UBSAN.
      
      [   15.589489] UBSAN: Undefined behaviour in drivers/gpu/drm/drm_hashtab.c:145:35
      [   15.589500] signed integer overflow:
      [   15.589999] -2147483648 - 1 cannot be represented in type 'int'
      [   15.590434] CPU: 2 PID: 294 Comm: plymouthd Not tainted 3.10.0-327.28.3.el7.x86_64 #1
      [   15.590653] Hardware name: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 01/07/2011
      [   15.591001]  1ffff1000670fe83 000000000d6b385e ffff88003387f3e0 ffffffff81ee3140
      [   15.591028]  ffff88003387f3f8 ffffffff81ee31fd ffffffffa032f460 ffff88003387f560
      [   15.591044]  ffffffff81ee46e2 0000002d00000009 0000000000000001 0000000041b58ab3
      [   15.591059] Call Trace:
      [   15.591078]  [<ffffffff81ee3140>] dump_stack+0x1e/0x20
      [   15.591093]  [<ffffffff81ee31fd>] ubsan_epilogue+0x12/0x55
      [   15.591109]  [<ffffffff81ee46e2>] handle_overflow+0x1ba/0x215
      [   15.591126]  [<ffffffff81ee4528>] ? __ubsan_handle_negate_overflow+0x162/0x162
      [   15.591146]  [<ffffffff8103416c>] ? print_context_stack+0x9c/0x160
      [   15.591163]  [<ffffffff81031df2>] ? dump_trace+0x252/0x750
      [   15.591181]  [<ffffffff81739023>] ? __list_add+0x93/0x160
      [   15.591197]  [<ffffffff81ee4798>] __ubsan_handle_sub_overflow+0x2a/0x31
      [   15.591261]  [<ffffffffa0282140>] drm_ht_just_insert_please+0x1e0/0x200 [drm]
      [   15.591290]  [<ffffffffa0528c7a>] ttm_base_object_init+0x10a/0x270 [ttm]
      [   15.591316]  [<ffffffffa052a34c>] ttm_vt_lock+0x28c/0x3a0 [ttm]
      [   15.591343]  [<ffffffffa052a0c0>] ? ttm_write_lock+0x180/0x180 [ttm]
      [   15.591362]  [<ffffffff81419526>] ? kasan_unpoison_shadow+0x36/0x50
      [   15.591379]  [<ffffffff81419526>] ? kasan_unpoison_shadow+0x36/0x50
      [   15.591396]  [<ffffffff81419526>] ? kasan_unpoison_shadow+0x36/0x50
      [   15.591413]  [<ffffffff81419526>] ? kasan_unpoison_shadow+0x36/0x50
      [   15.591442]  [<ffffffffa061cbe1>] vmw_master_set+0x121/0x470 [vmwgfx]
      [   15.591459]  [<ffffffff811773a5>] ? __init_waitqueue_head+0x45/0x70
      [   15.591487]  [<ffffffffa061cac0>] ? vmw_master_drop+0x310/0x310 [vmwgfx]
      [   15.591535]  [<ffffffffa026946a>] drm_open+0x92a/0xc00 [drm]
      [   15.591563]  [<ffffffffa0619ff0>] ? vmw_driver_open+0x170/0x170 [vmwgfx]
      [   15.591610]  [<ffffffffa0268b40>] ? drm_poll+0xe0/0xe0 [drm]
      [   15.591661]  [<ffffffffa02797b4>] drm_stub_open+0x224/0x330 [drm]
      [   15.591711]  [<ffffffffa0279590>] ? drm_minor_acquire+0x240/0x240 [drm]
      [   15.591727]  [<ffffffff8145fa8a>] chrdev_open+0x1fa/0x3f0
      [   15.591742]  [<ffffffff8145f890>] ? cdev_put+0x50/0x50
      [   15.591761]  [<ffffffff814f6dc3>] ? __fsnotify_parent+0x53/0x210
      [   15.591778]  [<ffffffff8144fde1>] do_dentry_open+0x351/0x670
      [   15.591792]  [<ffffffff8145f890>] ? cdev_put+0x50/0x50
      [   15.591807]  [<ffffffff814503c2>] vfs_open+0xa2/0x170
      [   15.591824]  [<ffffffff8147b5df>] do_last+0xccf/0x2c80
      [   15.591842]  [<ffffffff8147a910>] ? filename_create+0x320/0x320
      [   15.591858]  [<ffffffff81472549>] ? path_init+0x1b9/0xa90
      [   15.591875]  [<ffffffff81472390>] ? mountpoint_last+0x9a0/0x9a0
      [   15.591894]  [<ffffffff815f9ccf>] ? selinux_file_alloc_security+0xcf/0x130
      [   15.591911]  [<ffffffff8147d777>] path_openat+0x1e7/0xcc0
      [   15.591927]  [<ffffffff81031df2>] ? dump_trace+0x252/0x750
      [   15.591943]  [<ffffffff8147d590>] ? do_last+0x2c80/0x2c80
      [   15.591959]  [<ffffffff81739023>] ? __list_add+0x93/0x160
      [   15.591974]  [<ffffffff8104b48d>] ? save_stack_trace+0x7d/0xb0
      [   15.591989]  [<ffffffff81480824>] do_filp_open+0xa4/0x160
      [   15.592004]  [<ffffffff81480780>] ? user_path_mountpoint_at+0x50/0x50
      [   15.592022]  [<ffffffff8149d755>] ? __alloc_fd+0x175/0x300
      [   15.592039]  [<ffffffff81453127>] do_sys_open+0x1b7/0x3f0
      [   15.592054]  [<ffffffff81452f70>] ? filp_open+0x80/0x80
      [   15.592070]  [<ffffffff81453392>] SyS_open+0x32/0x40
      [   15.592088]  [<ffffffff81f08989>] system_call_fastpath+0x16/0x1b
      Signed-off-by: NXie XiuQi <xiexiuqi@huawei.com>
      [seanpaul tweaked subject to remove "gpu/"]
      Signed-off-by: NSean Paul <seanpaul@chromium.org>
      Link: http://patchwork.freedesktop.org/patch/msgid/1473152138-25335-1-git-send-email-xiexiuqi@huawei.com
      ae0119f5
    • M
      drm/atomic: Reject properties not part of the object. · 4e9951d9
      Maarten Lankhorst 提交于
      The legacy setprop ioctl doesn't attempt to set properties
      that are not enumerated on the object. The atomic ioctl does,
      fix this by validating first.
      Signed-off-by: NMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
      Signed-off-by: NSean Paul <seanpaul@chromium.org>
      Link: http://patchwork.freedesktop.org/patch/msgid/1473062773-5045-1-git-send-email-maarten.lankhorst@linux.intel.com
      4e9951d9
  4. 02 9月, 2016 8 次提交
  5. 01 9月, 2016 1 次提交
  6. 31 8月, 2016 1 次提交
    • P
      drm: drm_probe_helper: Fix output_poll_work scheduling · 339fd362
      Peter Ujfalusi 提交于
      drm_kms_helper_poll_enable_locked() should check if we have delayed event
      pending and if we have, schedule the work to run without delay.
      
      Currently the output_poll_work is only scheduled if any of the connectors
      have DRM_CONNECTOR_POLL_CONNECT or DRM_CONNECTOR_POLL_DISCONNECT with
      DRM_OUTPUT_POLL_PERIOD delay. It does not matter if we have delayed event
      already registered to be handled. The detection will be delayd by
      DRM_OUTPUT_POLL_PERIOD in any case.
      Furthermore if none of the connectors are marked as POLL_CONNECT or
      POLL_DISCONNECT because all connectors are either POLL_HPD or they are
      always connected: the output_poll_work will not run at all even if we
      have delayed event marked.
      
      When none of the connectors require polling, their initial status change
      from unknown to connected/disconnected is not going to be handled until
      the first kms application starts or if we have fb console enabled.
      
      Note that in general the output poll work should be enabled already
      when this happens, but at driver load usually the first probe happens
      before the output polling is enabled. This patch fixes this case.
      Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com>
      [danvet: Note when exactly this is an issue, since the probe code
      schedules the poll work itself already.]
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      Link: http://patchwork.freedesktop.org/patch/msgid/20160831110905.31289-1-peter.ujfalusi@ti.com
      339fd362
  7. 30 8月, 2016 2 次提交
  8. 29 8月, 2016 7 次提交