1. 28 6月, 2018 1 次提交
  2. 19 3月, 2018 1 次提交
  3. 12 3月, 2018 1 次提交
  4. 02 3月, 2018 1 次提交
  5. 22 1月, 2018 1 次提交
  6. 05 1月, 2018 1 次提交
  7. 08 12月, 2017 1 次提交
  8. 30 11月, 2017 1 次提交
  9. 18 10月, 2017 3 次提交
  10. 17 10月, 2017 1 次提交
    • M
      drm/sun4i: Implement endpoint parsing using kfifo · 8b11aafa
      Maxime Ripard 提交于
      The commit da82b878 ("drm/sun4i: add components in breadth first
      traversal order") implemented a breadth first traversal of our device tree
      nodes graph. However, it was relying on the kernel linked lists, and those
      are not really safe for addition.
      
      Indeed, in a single pipeline stage, your first stage (ie, the mixer or
      fronted) will be queued, and it will be the final iteration of that list as
      far as list_for_each_entry_safe is concerned. Then, during that final
      iteration, we'll queue another element (the TCON or the backend) that
      list_for_each_entry_safe will not account for, and we will leave the loop
      without having iterated over all the elements. And since we won't have
      built our components list properly, the DRM driver will be left
      non-functional.
      
      We can instead use a kfifo to queue and enqueue components in-order, as was
      the original intention. This also has the benefit of removing any dynamic
      allocation, making the error handling path simpler too. The only thing
      we're losing is the ability to tell whether an element has already been
      queued, but that was only needed to remove spurious logs, and therefore
      purely cosmetic.
      
      This means that this commit effectively reverses e8afb7b6 ("drm/sun4i:
      don't add components that are already in the queue").
      
      Fixes: da82b878 ("drm/sun4i: add components in breadth first traversal order")
      Reviewed-by: NChen-Yu Tsai <wens@csie.org>
      Signed-off-by: NMaxime Ripard <maxime.ripard@free-electrons.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/4ecb323e787918208f6a5d9f0ebba12c62583c98.1508231063.git-series.maxime.ripard@free-electrons.com
      8b11aafa
  11. 16 10月, 2017 1 次提交
  12. 09 9月, 2017 2 次提交
    • C
      drm/sun4i: call drm_vblank_init with correct number of crtcs · 070badfa
      Chen-Yu Tsai 提交于
      If we want to have vblank on both pipelines at the same time, we need
      to call drm_vblank_init with num_crtcs = 2.
      
      Instead, since the crtc init calls correctly set mode_config.num_crtc,
      we can move the drm_vblank_init call to after the crtc init code is
      called, which is the component bind part. Then we can just pass
      mode_config.num_crtc in.
      Signed-off-by: NChen-Yu Tsai <wens@csie.org>
      Signed-off-by: NMaxime Ripard <maxime.ripard@free-electrons.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20170908075016.18657-8-wens@csie.org
      070badfa
    • C
      drm/sun4i: add components in breadth first traversal order · da82b878
      Chen-Yu Tsai 提交于
      The encoder drivers use drm_of_find_possible_crtcs to get upstream
      crtcs from the device tree using of_graph. For the results to be
      correct, encoders must be probed/bound after _all_ crtcs have been
      created. The existing code uses a depth first recursive traversal
      of the of_graph, which means the encoders downstream of the TCON
      get add right after the first TCON. The second TCON or CRTC will
      never be properly associated with encoders connected to it.
      
      Other platforms, such as Rockchip, deal with this by probing all
      CRTCs first, then all subsequent components. This is easy to do
      since the CRTCs correspond to just one device node, and are the
      first nodes in the pipeline.
      
      However with Allwinner SoCs, the function of the CRTC is split
      between the display backend (DE 1.0) or mixer (DE 2.0), which does
      scan-out and compositing, and the TCON, which generates the display
      timing signals. Further complicating the process, there may be a
      Dynamic Range Controller between the backend and the TCON. Also, the
      backend is preceded by the frontend, with a Display Enhancement Unit
      possibly in between.
      
      In a dual display pipeline setup, both frontends can feed either
      backend, and both backends can feed either TCON. We want all
      components of the same type to be added before the next type in the
      pipeline. Fortunately, the pipelines are perfectly symmetric, i.e.
      components of the same type are at the same depth when counted from
      the frontend. The only exception is the third pipeline in the A80
      SoC, which we do not support anyway.
      
      Hence we can use a breadth first search traversal order to add
      components. We do not need to check for duplicates. The component
      matching system handles this for us.
      Signed-off-by: NChen-Yu Tsai <wens@csie.org>
      Signed-off-by: NMaxime Ripard <maxime.ripard@free-electrons.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20170908075016.18657-3-wens@csie.org
      da82b878
  13. 29 7月, 2017 1 次提交
  14. 26 7月, 2017 1 次提交
    • R
      drm: Convert to using %pOF instead of full_name · 4bf99144
      Rob Herring 提交于
      Now that we have a custom printf format specifier, convert users of
      full_name to use %pOF instead. This is preparation to remove storing
      of the full path string for each node.
      Signed-off-by: NRob Herring <robh@kernel.org>
      Cc: Russell King <linux@armlinux.org.uk>
      Cc: David Airlie <airlied@linux.ie>
      Cc: Daniel Vetter <daniel.vetter@intel.com>
      Cc: Jani Nikula <jani.nikula@linux.intel.com>
      Cc: Sean Paul <seanpaul@chromium.org>
      Cc: Inki Dae <inki.dae@samsung.com>
      Cc: Joonyoung Shim <jy0922.shim@samsung.com>
      Cc: Seung-Woo Kim <sw0312.kim@samsung.com>
      Cc: Kyungmin Park <kyungmin.park@samsung.com>
      Cc: Kukjin Kim <kgene@kernel.org>
      Cc: Krzysztof Kozlowski <krzk@kernel.org>
      Cc: Javier Martinez Canillas <javier@osg.samsung.com>
      Cc: Xinliang Liu <z.liuxinliang@hisilicon.com>
      Cc: Rongrong Zou <zourongrong@gmail.com>
      Cc: Xinwei Kong <kong.kongxinwei@hisilicon.com>
      Cc: Chen Feng <puck.chen@hisilicon.com>
      Cc: CK Hu <ck.hu@mediatek.com>
      Cc: Philipp Zabel <p.zabel@pengutronix.de>
      Cc: Matthias Brugger <matthias.bgg@gmail.com>
      Cc: Neil Armstrong <narmstrong@baylibre.com>
      Cc: Carlo Caione <carlo@caione.org>
      Cc: Kevin Hilman <khilman@baylibre.com>
      Cc: Thierry Reding <thierry.reding@gmail.com>
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Cc: Mark Yao <mark.yao@rock-chips.com>
      Cc: Heiko Stuebner <heiko@sntech.de>
      Cc: Maxime Ripard <maxime.ripard@free-electrons.com>
      Cc: Chen-Yu Tsai <wens@csie.org>
      Cc: Jyri Sarha <jsarha@ti.com>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Cc: dri-devel@lists.freedesktop.org
      Cc: linux-arm-kernel@lists.infradead.org
      Cc: linux-samsung-soc@vger.kernel.org
      Cc: linux-mediatek@lists.infradead.org
      Cc: linux-amlogic@lists.infradead.org
      Cc: linux-renesas-soc@vger.kernel.org
      Cc: linux-rockchip@lists.infradead.org
      Partially-Reviewed-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com>
      Reviewed-by: NPhilipp Zabel <p.zabel@pengutronix.de>
      Acked-by: NMaxime Ripard <maxime.ripard@free-electrons.com>
      [seanpaul changed subject prefix and fixed conflict in stm/ltdc.c]
      Signed-off-by: NSean Paul <seanpaul@chromium.org>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      4bf99144
  15. 17 7月, 2017 1 次提交
  16. 01 6月, 2017 5 次提交
  17. 31 5月, 2017 1 次提交
  18. 14 5月, 2017 1 次提交
  19. 14 3月, 2017 1 次提交
  20. 08 3月, 2017 7 次提交
  21. 09 2月, 2017 1 次提交
  22. 08 2月, 2017 1 次提交
  23. 07 11月, 2016 1 次提交
  24. 03 11月, 2016 1 次提交
  25. 02 11月, 2016 1 次提交
  26. 25 10月, 2016 1 次提交
  27. 20 10月, 2016 1 次提交