1. 23 2月, 2015 1 次提交
  2. 08 1月, 2015 1 次提交
    • R
      imx-drm: core: handling of DI clock flags to ipu_crtc_mode_set() · d50141d8
      Russell King 提交于
      We do not need to track the state of the IPU DI's clock flags by having
      each display bridge calling back into imx-drm-core, and then back out
      into ipuv3-crtc.c.
      
      ipuv3-crtc can instead just scan the list of encoders to retrieve their
      type, and build up a picture of which types of encoders are attached.
      We can then use this information to configure the IPU DI clocking mode
      without any uncertainty - if we have multiple bridges connected to the
      same DI, if one of them requires a synchronous DI clock, that's what we
      must use.
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
      d50141d8
  3. 07 1月, 2015 1 次提交
  4. 26 11月, 2014 1 次提交
    • P
      drm: imx: Move imx-drm driver out of staging · 6556f7f8
      Philipp Zabel 提交于
      The imx-drm driver was put into staging mostly for the following reasons,
      all of which have been addressed or superseded:
       - convert the irq driver to use linear irq domains
       - work out the device tree bindings, this lead to the common of_graph
         bindings being used
       - factor out common helper functions, this mostly resulted in the
         component framework and drm of_graph helpers.
      
      Before adding new fixes, and certainly before adding new features,
      move it into its proper place below drivers/gpu/drm.
      Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      6556f7f8
  5. 05 11月, 2014 1 次提交
  6. 04 11月, 2014 1 次提交
  7. 20 10月, 2014 2 次提交
  8. 24 9月, 2014 1 次提交
    • S
      imx-drm: imx-drm-core: add basic suspend/resume support · bfe945c8
      Shawn Guo 提交于
      HDMI currently stops working after a system suspend/resume cycle.  The
      cause is that the mode setting states in hardware gets lost and isn't
      restored across the suspend/resume cycle.
      
      The patch adds a very basic suspend/resume support to imx-drm driver,
      and calls drm_helper_resume_force_mode() in .resume hook to restore the
      mode setting states, so that HDMI can continue working after a system
      suspend/resume cycle.
      
      Since the suspend/resume hook can be called with drm_device pointer
      being NULL from driver data, we need a check on the pointer in the
      hooks.  And to avoid using a stale pointer from driver data, it also
      clears driver data in .unload hook.
      Signed-off-by: NShawn Guo <shawn.guo@freescale.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      bfe945c8
  9. 10 9月, 2014 1 次提交
  10. 17 8月, 2014 2 次提交
  11. 08 8月, 2014 1 次提交
    • D
      Revert "drm: drop redundant drm_file->is_master" · 7963e9db
      Dave Airlie 提交于
      This reverts commit 48ba8137.
      
      Thanks to Chris:
      "drm_file->is_master is not synomous with having drm_file->master ==
      drm_file->minor->master. This is because drm_file->master is the same
      for all drm_files of the same generation and so when there is a master,
      every drm_file believes itself to be the master. Confusion ensues and
      things go pear shaped when one file is closed and there is no master
      anymore."
      
      Conflicts:
      	drivers/gpu/drm/drm_drv.c
      	drivers/gpu/drm/drm_stub.c
      7963e9db
  12. 05 8月, 2014 1 次提交
    • D
      drm: drop redundant drm_file->is_master · 48ba8137
      David Herrmann 提交于
      The drm_file->is_master field is redundant as it's equivalent to:
          drm_file->master && drm_file->master == drm_file->minor->master
      
      1) "=>"
        Whenever we set drm_file->is_master, we also set:
            drm_file->minor->master = drm_file->master;
      
        Whenever we clear drm_file->is_master, we also call:
            drm_master_put(&drm_file->minor->master);
        which implicitly clears it to NULL.
      
      2) "<="
        minor->master cannot be set if it is non-NULL. Therefore, it stays as
        is unless a file drops it.
      
        If minor->master is NULL, it is only set by places that also adjust
        drm_file->is_master.
      
      Therefore, we can safely drop is_master and replace it by an inline helper
      that matches:
          drm_file->master && drm_file->master == drm_file->minor->master
      Reviewed-by: NAlex Deucher <alexander.deucher@amd.com>
      Reviewed-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      Signed-off-by: NDavid Herrmann <dh.herrmann@gmail.com>
      48ba8137
  13. 05 7月, 2014 1 次提交
  14. 19 6月, 2014 1 次提交
  15. 04 6月, 2014 1 次提交
  16. 26 4月, 2014 1 次提交
  17. 22 4月, 2014 1 次提交
    • A
      drm: make mode_valid callback optional · f9b0e251
      Andrzej Hajda 提交于
      Many drm connectors do not need mode validation.
      The patch makes this callback optional and removes dumb implementations.
      
      v2: Rebase:
      - imx move to a shared (but still dummy) ->mode_valid implementation.
      - probe helpers have been extracted to drm_probe_helper.c
      
      Signed-off-by: Andrzej Hajda <a.hajda@samsung.com> (v1)
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      f9b0e251
  18. 19 4月, 2014 2 次提交
  19. 08 3月, 2014 2 次提交
    • P
      staging: imx-drm-core: use of_graph_parse_endpoint · b6babdd9
      Philipp Zabel 提交于
      Using of_graph_parse_endpoint recovers the port id from an endpoint device
      tree node. This just replaces an open coded read of the "reg" property.
      Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      b6babdd9
    • P
      staging: imx-drm-core: Use OF graph to find components and connections between encoder and crtcs · 655b43cc
      Philipp Zabel 提交于
      This patch adds support to find the involved components connected to
      the IPU display interface ports using the OF graph bindings documented
      in Documentation/devicetree/bindings/media/video-interfaces.txt.
      It makes use of the of_graph (formerly v4l2_of) parsing helpers and
      thus depends on the patch that moves those out to drivers/of.
      
      Each display interface needs to have an associated port node in the
      device tree. We can associate this node with the crtc platform device
      and use it to find the crtc corresponding to a given port node instead
      of using a combination of parent device node and id number, as before.
      
      Explicitly converting the void* cookie to the port device tree node
      allows to get rid of the ipu_id and di_id fields. The multiplexer
      setting on i.MX6 now can be obtained from the port id (reg property)
      in the device tree.
      
      The imx-drm node now needs a ports property that contains phandles
      to each of the IPU display interface port nodes. From there, all
      attached encoders are scanned and enabled encoders are added to a
      waiting list.
      The bind order makes sure that once all components are probed, crtcs
      are bound before encoders, so that imx_drm_encoder_parse_of can be
      called from the encoder bind callbacks.
      
      For parsing the OF graph, temporary copies of the V4L2 OF graph
      helpers are used, that can be removed again once those are available
      at a generic place.
      Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
      Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
      655b43cc
  20. 28 2月, 2014 1 次提交
  21. 24 2月, 2014 16 次提交