1. 10 5月, 2016 11 次提交
    • D
      drm/exynos: Nuke dummy fb->dirty callback · 562d5456
      Daniel Vetter 提交于
      It's an optional hook. Might be needed for frontbuffer rendering on
      manual upload displays, but a simple TODO doesn't explain at all what
      needs to be done or why.
      
      Cc: Inki Dae <inki.dae@samsung.com>
      Signed-off-by: NDaniel Vetter <daniel.vetter@intel.com>
      Signed-off-by: NInki Dae <inki.dae@samsung.com>
      562d5456
    • J
      drm/exynos: use directly DMA mapping APIs on g2d · 6aa5e85d
      Joonyoung Shim 提交于
      There is no reason to be wapper functions to use DMA mapping APIs. Use
      directly DMA mapping APIs and remove the wapper functions.
      Signed-off-by: NJoonyoung Shim <jy0922.shim@samsung.com>
      Signed-off-by: NInki Dae <inki.dae@samsung.com>
      6aa5e85d
    • J
      drm/exynos/hdmi: Don't print error on deferral due to regulators · b85881dd
      Javier Martinez Canillas 提交于
      The regulators may not be available just because their driver's probe
      function was just not executed and so the regulators not registered.
      
      So, in this case the Exynos HDMI driver should not print logs since
      a -EPROBE_DEFER is not really an error and that will just pollute
      the kernel log and confuse users.
      
      This patch prevents the following misleading messages to be printed:
      
      [    1.443638] [drm:hdmi_probe] *ERROR* failed to get regulators
      [    1.449326] [drm:hdmi_probe] *ERROR* hdmi_resources_init failed
      Reported-by: NKrzysztof Kozlowski <k.kozlowski@samsung.com>
      Signed-off-by: NJavier Martinez Canillas <javier@osg.samsung.com>
      Signed-off-by: NInki Dae <inki.dae@samsung.com>
      b85881dd
    • J
      drm/exynos: fix imported dma-buf to be mapped · 55b19fc7
      Joonyoung Shim 提交于
      The imported dma-buf should be mapped by sub-system exporting it.
      Signed-off-by: NJoonyoung Shim <jy0922.shim@samsung.com>
      Signed-off-by: NInki Dae <inki.dae@samsung.com>
      55b19fc7
    • J
      drm/exynos: support gem_prime_mmap · 5a0202f7
      Joonyoung Shim 提交于
      This allows exported dma-bufs to be mapped using gem_prime_mmap.
      Signed-off-by: NJoonyoung Shim <jy0922.shim@samsung.com>
      Signed-off-by: NInki Dae <inki.dae@samsung.com>
      5a0202f7
    • T
      drm/exynos: fimd: harden fimd_calc_clkdiv() · fa9971d6
      Tobias Jakobi 提交于
      Don't use the vrefresh field of the DRM mode since this
      one is supposed to only be used for debug purpose.
      Instead use the clock field which should also provide
      much more precise information.
      
      Also sanitize the case in which the clock value
      should be zero. We then just default to the maximum
      clock divisor.
      Signed-off-by: NTobias Jakobi <tjakobi@math.uni-bielefeld.de>
      Reviewed-by: NAndrzej Hajda <a.hajda@samsung.com>
      Signed-off-by: NInki Dae <inki.dae@samsung.com>
      fa9971d6
    • A
      drm/exynos: fix cancel page flip code · fc173ae6
      Andrzej Hajda 提交于
      Driver code did not remove event from the list of pending events before destroy.
      As a result drm core later tried to inspect invalid memory location.
      The patch replaces removal code with call to core helper.
      
      The bug was detected using KASAN:
      
      [   10.107249] ==================================================================
      [   10.107518] BUG: KASAN: use-after-free in drm_release+0xe9c/0x1000 at addr ffffffc089154a18
      [   10.107784] Read of size 8 by task modetest/103
      [   10.107931] =============================================================================
      [   10.113191] BUG kmalloc-128 (Not tainted): kasan: bad access detected
      [   10.119608] -----------------------------------------------------------------------------
      [   10.119608]
      [   10.129243] Disabling lock debugging due to kernel taint
      [   10.134551] INFO: Allocated in drm_mode_page_flip_ioctl+0x500/0xa98 age=4 cpu=0 pid=103
      [   10.142532] 	alloc_debug_processing+0x18c/0x198
      [   10.147043] 	___slab_alloc.constprop.28+0x360/0x380
      [   10.151906] 	__slab_alloc.isra.25.constprop.27+0x54/0xa0
      [   10.157197] 	kmem_cache_alloc_trace+0x370/0x3b0
      [   10.161709] 	drm_mode_page_flip_ioctl+0x500/0xa98
      [   10.166400] 	drm_ioctl+0x4c4/0xb68
      [   10.169787] 	do_vfs_ioctl+0x16c/0xeb8
      [   10.173429] 	SyS_ioctl+0x8c/0xa0
      [   10.176642] 	el0_svc_naked+0x24/0x28
      [   10.180204] INFO: Freed in exynos_drm_crtc_cancel_page_flip+0xe0/0x160 age=0 cpu=0 pid=103
      [   10.188447] 	free_debug_processing+0x174/0x388
      [   10.192871] 	__slab_free+0x2e8/0x438
      [   10.196431] 	kfree+0x350/0x360
      [   10.199469] 	exynos_drm_crtc_cancel_page_flip+0xe0/0x160
      [   10.204762] 	exynos_drm_preclose+0x58/0xa0
      [   10.208844] 	drm_release+0x1f0/0x1000
      [   10.212491] 	__fput+0x1c4/0x5b8
      [   10.215613] 	____fput+0xc/0x18
      [   10.218654] 	task_work_run+0x130/0x198
      [   10.222385] 	do_exit+0x700/0x2278
      [   10.225681] 	do_group_exit+0xe4/0x2c8
      [   10.229327] 	SyS_exit_group+0x1c/0x20
      [   10.232973] 	el0_svc_naked+0x24/0x28
      [   10.236532] INFO: Slab 0xffffffbdc2a45500 objects=32 used=10 fp=0xffffffc089154a00 flags=0x4080
      [   10.245210] INFO: Object 0xffffffc089154a00 @offset=2560 fp=0xffffffc089157600
      [   10.245210]
      ...
      [   10.384532] CPU: 0 PID: 103 Comm: modetest Tainted: G    B           4.5.0-rc3-00748-gd5e2881 #271
      [   10.398325] Call trace:
      [   10.400764] [<ffffffc000091428>] dump_backtrace+0x0/0x328
      [   10.406141] [<ffffffc000091764>] show_stack+0x14/0x20
      [   10.411176] [<ffffffc00089c550>] dump_stack+0xb0/0xe8
      [   10.416210] [<ffffffc000395778>] print_trailer+0xf8/0x160
      [   10.421592] [<ffffffc00039b5cc>] object_err+0x3c/0x50
      [   10.426626] [<ffffffc00039d630>] kasan_report_error+0x248/0x550
      [   10.432527] [<ffffffc00039da50>] __asan_report_load8_noabort+0x40/0x48
      [   10.439039] [<ffffffc000b5b724>] drm_release+0xe9c/0x1000
      [   10.444419] [<ffffffc0003d340c>] __fput+0x1c4/0x5b8
      [   10.449280] [<ffffffc0003d3884>] ____fput+0xc/0x18
      [   10.454055] [<ffffffc000101aa8>] task_work_run+0x130/0x198
      [   10.459522] [<ffffffc0000bc058>] do_exit+0x700/0x2278
      [   10.464557] [<ffffffc0000bdcfc>] do_group_exit+0xe4/0x2c8
      [   10.469939] [<ffffffc0000bdefc>] SyS_exit_group+0x1c/0x20
      [   10.475320] [<ffffffc000087530>] el0_svc_naked+0x24/0x28
      Signed-off-by: NAndrzej Hajda <a.hajda@samsung.com>
      Signed-off-by: NInki Dae <inki.dae@samsung.com>
      fc173ae6
    • A
      drm/exynos/decon5433: do not use unnecessary software trigger · 3f4c8e5c
      Andrzej Hajda 提交于
      Software trigger should not be used if hardware trigger is configured.
      Signed-off-by: NAndrzej Hajda <a.hajda@samsung.com>
      Signed-off-by: NInki Dae <inki.dae@samsung.com>
      3f4c8e5c
    • A
      drm/exynos/decon5433: handle vblank in vblank interrupt · b0bb3d07
      Andrzej Hajda 提交于
      vblank should be signaled to userspace after reading framebuffers not before,
      signaling it in TE interrupt looks wrong. TE triggers reading framebuffers
      so it is the worst moment. Tearing is not observable because hardware prevents
      it, but there are frequently skipped vblank events.
      Signed-off-by: NAndrzej Hajda <a.hajda@samsung.com>
      Signed-off-by: NInki Dae <inki.dae@samsung.com>
      b0bb3d07
    • A
      drm/exynos/hdmi: expose HDMI-PHY clock as pipeline clock · 59b62d3c
      Andrzej Hajda 提交于
      HDMI-PHY clock should be accessible from other components in the pipeline.
      Signed-off-by: NAndrzej Hajda <a.hajda@samsung.com>
      Signed-off-by: NInki Dae <inki.dae@samsung.com>
      59b62d3c
    • D
      Merge tag 'mediatek-drm-2016-05-09' of git://git.pengutronix.de/git/pza/linux into drm-next · 2e726dc4
      Dave Airlie 提交于
      MT8173 DRM support
      
      - device tree binding documentation for all MT8173 display
        subsystem components
      - basic mediatek-drm driver for MT8173 with two optional,
        currently fixed output paths:
      - DSI encoder support for DSI and (via bridge) eDP panels
      - DPI encoder support for output to HDMI bridge
      - necessary clock tree changes for the DPI->HDMI path
      - export mtk-smi functions used by mediatek-drm
      
      * tag 'mediatek-drm-2016-05-09' of git://git.pengutronix.de/git/pza/linux:
        clk: mediatek: remove hdmitx_dig_cts from TOP clocks
        clk: mediatek: Add hdmi_ref HDMI PHY PLL reference clock output
        clk: mediatek: make dpi0_sel propagate rate changes
        drm/mediatek: Add DPI sub driver
        drm/mediatek: Add DSI sub driver
        drm/mediatek: Add DRM Driver for Mediatek SoC MT8173.
        dt-bindings: drm/mediatek: Add Mediatek display subsystem dts binding
        memory: mtk-smi: export mtk_smi_larb_get/put
      2e726dc4
  2. 09 5月, 2016 5 次提交
    • D
      Merge tag 'v4.6-rc7' into drm-next · bafb86f5
      Dave Airlie 提交于
      Merge this back as we've built up a fair few conflicts, and I have
      some newer trees to pull in.
      bafb86f5
    • D
      drm/amdgpu: fix build on aarch64. · ba391646
      Dave Airlie 提交于
      Same fix went in previously for some other files.
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      ba391646
    • D
      Merge branch 'msm-next' of git://people.freedesktop.org/~robclark/linux into drm-next · 2c3d68ab
      Dave Airlie 提交于
      Mostly cleanups, fixes, and 'struct fence' conversion this time
      around, with one reservation patch which is a-b Sumit (which the fence
      conversion patches depend on).
      
      * 'msm-next' of git://people.freedesktop.org/~robclark/linux: (25 commits)
        drm/msm: Drop load/unload drm_driver ops
        drm/msm: Centralize connector registration/unregistration
        drm/msm/hdmi: Prevent gpio_free related kernel warnings
        drm/msm: print offender task name on hangcheck recovery
        drm/msm: fix leak in failed submit path
        drm/msm: de-indent submit_create()
        drm/msm: drop return from gpu->submit()
        drm/msm/mdp4: Don't manage DSI PLL regulators in MDP driver
        drm/msm/edp: Drop regulator_set_voltage call
        drm/msm/dsi: Fix regulator API abuse
        drm/msm: Move call to PTR_ERR_OR_ZERO after reassignment
        drm/msm/mdp: Add support for more RGBX formats
        drm: msm: remove unused variable
        drm/msm: fix ->last_fence() after recover
        drm/msm: 'struct fence' conversion
        drm/msm: remove fence_cbs
        drm/msm: introduce msm_fence_context
        drm/msm: split locking and pinning BO's
        drm/msm/gpu: simplify tracking in-flight bo's
        drm/msm: split out timeout_to_jiffies helper
        ...
      2c3d68ab
    • D
      Merge tag 'topic/drm-misc-2016-05-08' of git://anongit.freedesktop.org/drm-intel into drm-next · 2958cf0e
      Dave Airlie 提交于
      Refcounting is hard, so here's a quick pull request with the one-liner to
      fix up i915. Otherwise just a few other small things I picked up. Plus the
      regression fix from Marten for rmfb behaviour that lingered around forever
      since no testers. Feel free to cherry-pick that over to drm-fixes, but
      given that there's not many who seemed to have cared, meh.
      
      * tag 'topic/drm-misc-2016-05-08' of git://anongit.freedesktop.org/drm-intel:
        drm/i915: Correctly refcount connectors in hw state readou
        drm/panel: Flesh out kerneldoc
        drm: Add gpu.tmpl docbook to MAINTAINERS entry
        drm/core: Do not preserve framebuffer on rmfb, v4.
        drm: Fix up markup fumble
        drm/fb_helper: Fix a few typos
      2958cf0e
    • L
      Linux 4.6-rc7 · 44549e8f
      Linus Torvalds 提交于
      44549e8f
  3. 08 5月, 2016 24 次提交