1. 06 5月, 2016 1 次提交
    • S
      drm/fsl-dcu: use bus_flags for pixel clock polarity · 2c80661d
      Stefan Agner 提交于
      The drivers current default configuration drives the pixel data
      on rising edge of the pixel clock. However, most display sample
      data on rising edge... This leads to color shift artefacts visible
      especially at edges.
      
      This patch changes the relevant defines to be useful and actually
      set the bits, and changes pixel clock polarity to drive the pixel
      data on falling edge by default. The patch also adds an explicit
      pixel clock polarity flag to the display introduced with the driver
      (NEC WQVGA "nec,nl4827hc19-05b") using the new bus_flags field to
      retain the initial behavior.
      Signed-off-by: NStefan Agner <stefan@agner.ch>
      2c80661d
  2. 26 4月, 2016 2 次提交
    • S
      drm/fsl-dcu: add TCON driver · fb127b79
      Stefan Agner 提交于
      Add driver for the TCON (timing controller) module. The TCON module
      is a separate module attached after the DCU (display controller
      unit). Each DCU instance has its own, directly connected TCON
      instance. The DCU's RGB and timing signals are passing through
      the TCON module. TCON can provide timing signals for raw TFT panels
      or operate in a bypass mode which leaves all signals unaltered.
      
      The driver currently only supports the bypass mode.
      Acked-by: NRob Herring <robh@kernel.org>
      Signed-off-by: NStefan Agner <stefan@agner.ch>
      fb127b79
    • S
      drm/fsl-dcu: add extra clock for pixel clock · f93500f4
      Stefan Agner 提交于
      The Vybrid DCU variant has two independent clock inputs, one
      for the registers (IPG bus clock) and one for the pixel clock.
      Support this distinction in the DCU DRM driver while staying
      backward compatible for old device trees.
      Acked-by: NRob Herring <robh@kernel.org>
      Signed-off-by: NStefan Agner <stefan@agner.ch>
      f93500f4
  3. 26 2月, 2016 1 次提交
    • S
      drm/fsl-dcu: fix alpha blending · 69855819
      Stefan Agner 提交于
      Fix alpha blending by enabling alpha blending for the whole frame if
      a color mode with alpha channel is selected (DRM_FORMAT_ARGB*). Also
      support color modes without alpha channel (DRM_FORMAT_XRGB*) by just
      not enabling alpha blending on layer level.
      Signed-off-by: NStefan Agner <stefan@agner.ch>
      69855819
  4. 20 8月, 2015 1 次提交
    • J
      drm/layerscape: Add Freescale DCU DRM driver · 109eee2f
      Jianwei Wang 提交于
      This patch add support for Two Dimensional Animation and Compositing
      Engine (2D-ACE) on the Freescale SoCs.
      
      2D-ACE is a Freescale display controller. 2D-ACE describes
      the functionality of the module extremely well its name is a value
      that cannot be used as a token in programming languages.
      Instead the valid token "DCU" is used to tag the register names and
      function names.
      
      The Display Controller Unit (DCU) module is a system master that
      fetches graphics stored in internal or external memory and displays
      them on a TFT LCD panel. A wide range of panel sizes is supported
      and the timing of the interface signals is highly configurable.
      Graphics are read directly from memory and then blended in real-time,
      which allows for dynamic content creation with minimal CPU
      intervention.
      
      The features:
      (1) Full RGB888 output to TFT LCD panel.
      (2) Blending of each pixel using up to 4 source layers
      dependent
      on size of panel.
      (3) Each graphic layer can be placed with one pixel resolution
      in either axis.
      (4) Each graphic layer support RGB565 and RGB888 direct colors
      without alpha channel and BGRA8888 BGRA4444 ARGB1555 direct
      colors
      with an alpha channel and YUV422 format.
      (5) Each graphic layer support alpha blending with 8-bit
      resolution.
      This is a simplified version, only one primary plane, one
      framebuffer, one crtc, one connector and one encoder for TFT
      LCD panel.
      Signed-off-by: NAlison Wang <b18965@freescale.com>
      Signed-off-by: NXiubo Li <lixiubo@cmss.chinamobile.com>
      Signed-off-by: NJianwei Wang <jianwei.wang.chn@gmail.com>
      Acked-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      109eee2f