1. 17 2月, 2013 1 次提交
    • R
      drm/omap: move out of staging · 8bb0daff
      Rob Clark 提交于
      Now that the omapdss interface has been reworked so that omapdrm can use
      dispc directly, we have been able to fix the remaining functional kms
      issues with omapdrm.  And in the mean time the PM sequencing and many
      other of that open issues have been solved.  So I think it makes sense
      to finally move omapdrm out of staging.
      Signed-off-by: NRob Clark <robdclark@gmail.com>
      8bb0daff
  2. 08 1月, 2013 1 次提交
    • R
      staging: drm/omap: use omapdss low level API · f5f9454c
      Rob Clark 提交于
      This patch changes the omapdrm KMS to bypass the omapdss "compat"
      layer and use the core omapdss API directly.  This solves some layering
      issues that would cause unpin confusion vs GO bit status, because we
      would not know whether a particular pageflip or overlay update has hit
      the screen or not.  Now instead we explicitly manage the GO bits in
      dispc and handle the vblank/framedone interrupts ourself so that we
      always know which buffers are being scanned out at any given time, and
      so on.
      
      As an added bonus, we no longer leave the last overlay buffer pinned
      when the display is disabled, and have been able to add the previously
      missing vblank event handling.
      
      v1: original
      v2: rebased on latest staging-next and omapdss patches from Tomi and
          review comments from Archit Taneja
      Signed-off-by: NRob Clark <robdclark@gmail.com>
      Reviewed-by: NArchit Taneja <archit@ti.com>
      Reviewed-by: NSumit Semwal <sumit.semwal@ti.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      f5f9454c
  3. 15 11月, 2012 1 次提交
  4. 20 7月, 2012 1 次提交
  5. 13 12月, 2011 1 次提交
  6. 27 11月, 2011 1 次提交
    • R
      staging: add omapdrm DRM/KMS driver for TI OMAP platforms · cd5351f4
      Rob Clark 提交于
      A DRM display driver for TI OMAP platform.  Similar to omapfb (fbdev)
      and omap_vout (v4l2 display) drivers in the past, this driver uses the
      DSS2 driver to access the display hardware, including support for
      HDMI, DVI, and various types of LCD panels.  And it implements GEM
      support for buffer allocation (for KMS as well as offscreen buffers
      used by the xf86-video-omap userspace xorg driver).
      
      The driver maps CRTCs to overlays, encoders to overlay-managers, and
      connectors to dssdev's.  Note that this arrangement might change slightly
      when support for drm_plane overlays is added.
      
      For GEM support, non-scanout buffers are using the shmem backed pages
      provided by GEM core (In drm_gem_object_init()).  In the case of scanout
      buffers, which need to be physically contiguous, those are allocated
      with CMA and use drm_gem_private_object_init().
      
      See userspace xorg driver:
      git://github.com/robclark/xf86-video-omap.git
      
      Refer to this link for CMA (Continuous Memory Allocator):
      http://lkml.org/lkml/2011/8/19/302
      
      Links to previous versions of the patch:
      v1: http://lwn.net/Articles/458137/
      v2: http://patches.linaro.org/4156/
      v3: http://patches.linaro.org/4688/
      v4: http://patches.linaro.org/4791/
      
      History:
      
      v5: move headers from include/drm at Greg KH's request, minor rebasing
          on 3.2-rc1, pull in private copies of drm_gem_{get,put}_pages()
          because "drm/gem: add functions to get/put pages" patch is not
          merged yet
      v4: bit of rework of encoder/connector _dpms() code, modeset_init()
          rework to not use nested functions, update TODO.txt
      v3: minor cleanups, improved error handling for dev_load(), some minor
          API changes that will be needed later for tiled buffer support
      v2: replace omap_vram with CMA for scanout buffer allocation, remove
          unneeded functions, use dma_addr_t for physical addresses, error
          handling cleanup, refactor attach/detach pages into common drm
          functions, split non-userspace-facing API into omap_priv.h, remove
          plugin API
      
      v1: original
      Signed-off-by: NRob Clark <rob@ti.com>
      Acked-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      cd5351f4