1. 02 May, 2016 27 commits
  2. 29 Apr, 2016 2 commits
    • Dave Airlie's avatar
      Merge branch 'for-next' of http://git.agner.ch/git/linux-drm-fsl-dcu into drm-next · b89359bd
      Dave Airlie authored
      This adds very rudimentary TCON (timing controller for raw LCD displays)
      support to enable the bypass mode in order to use the DCU controller on
      Freescale/NXP Vybrid SoC's.
      
      Additionally the register clock and pixel clock has been separated, but
      are currently still enabled and disabled pairwise.
      
      Other than that, fixes and cleanups accross the driver.
      
      * 'for-next' of http://git.agner.ch/git/linux-drm-fsl-dcu:
        drm/fsl-dcu: increment version and date
        drm/fsl-dcu: implement lastclose callback
        drm/fsl-dcu: disable output polling on driver unload
        drm/fsl-dcu: deallocate fbdev CMA on unload
        drm/fsl-dcu: use variable name dev for struct drm_device
        drm/fsl-dcu: handle missing panel gracefully
        drm/fsl-dcu: detach panel on destroy
        drm/layerscape: reduce excessive stack usage
        drm/fsl-dcu: add TCON driver
        drm/fsl-dcu: use common clock framework for pixel clock divider
        drm/fsl-dcu: add extra clock for pixel clock
        drm/fsl-dcu: disable clock on initialization failure and remove
      b89359bd
    • Dave Airlie's avatar
      Merge tag 'sun4i-drm-for-4.7' of... · d3a8f678
      Dave Airlie authored
      Merge tag 'sun4i-drm-for-4.7' of https://git.kernel.org/pub/scm/linux/kernel/git/mripard/linux into drm-next
      
      Allwinner DRM driver for 4.7
      
      This pull request introduces the sun4i driver, meant to be used on the
      older Allwinner SoCs (A10, A13, A20, A23, A31 and A33).
      
      It currently supports only the A13, which has one of the simplest video
      pipeline. Support for other video components and SoCs will be added
      eventually.
      
      It supports only a RGB or composite output. It doesn't do HDMI, VGA, LVDS
      or power management yet, but that will come in time as well.
      
      * tag 'sun4i-drm-for-4.7' of https://git.kernel.org/pub/scm/linux/kernel/git/mripard/linux:
        MAINTAINERS: Add a maintainer for the Allwinner DRM driver
        drm: sun4i: tv: Add NTSC output standard
        drm: sun4i: tv: Add PAL output standard
        drm: sun4i: Add composite output
        drm: sun4i: Add RGB output
        drm: Add Allwinner A10 Display Engine support
        drm: sun4i: Add DT bindings documentation
        drm: fb: Add seq_file definition
      d3a8f678
  3. 28 Apr, 2016 8 commits
  4. 26 Apr, 2016 3 commits
    • Daniel Vetter's avatar
      drm: Switch blobs to the new generic modeset obj refcounting · 152ef5fa
      Daniel Vetter authored
      Need to move the free function around a bit, but otherwise mostly
      just removing code.
      
      Specifically we can nuke all the _locked variants since the weak idr
      reference is now protected by the idr_mutex, which we never hold
      anywhere expect in the lookup/reg/unreg functions. And those never
      call anything else.
      
      Another benefit of this is that this patch switches the weak reference
      logic from kref_put_mutex to kref_get_unless_zero. And the later is in
      general more flexible wrt accomodating multiple weak references
      protected by different locks, which might or might not come handy
      eventually.
      
      But one consequence of that switch is that we need to acquire the
      blob_lock from the free function for the list_del calls. That's a bit
      tricky to pull off, but works well if we pick the exact same scheme as
      is already used for framebuffers. Most important changes:
      
      - filp list is maintainer by create/destroy_blob ioctls directly
        (already the case, so we can just remove the redundant list_del from
        the free function).
      
      - filp close handler walks the filp-private list lockless - works
        because we know no one else can access it. I copied the same comment
        from the fb code over to explain this.
      
      - Otherwise we need to sufficiently restrict blob_lock critical
        sections to avoid all the unreference calls. Easy to do once the
        blob_lock only protects the list, and no longer the weak reference.
      
      Cc: Dave Airlie <airlied@gmail.com>
      Cc: Daniel Stone <daniels@collabora.com>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@intel.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      152ef5fa
    • Daniel Vetter's avatar
      drm/atomic-helpers: Don't duplicate code in destroy helpers · b0b5511b
      Daniel Vetter authored
      Random drive-by refactoring I spotted.
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@intel.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      b0b5511b
    • Daniel Vetter's avatar
      drm: Fix fb leaks and WARN spew in get/set_prop ioctls · 1649c33b
      Daniel Vetter authored
      Dave Airlie had at least the refcount leak fixed in a later patch (but
      that patch does other things which need a bit more work). But we still
      have the trouble that silly userspace could hit the WARN_ON in
      drm_mode_object_find.
      
      Fix this all up to make sure we don't leak objects, and don't spew
      into demsg.
      
      Fixes: d0f37cf6 ("drm/mode: move framebuffer reference into object.")
      Testcase: igt/kms_addfb_basic/invalid-*-prop*
      Cc: Dave Airlie <airlied@gmail.com>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@intel.com>
      Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
      1649c33b