1. 15 3月, 2017 7 次提交
  2. 17 2月, 2017 2 次提交
  3. 09 11月, 2016 1 次提交
  4. 07 11月, 2016 1 次提交
  5. 20 10月, 2016 3 次提交
  6. 19 10月, 2016 1 次提交
    • S
      gpu: Remove depends on RESET_CONTROLLER when not a provider · fb80016a
      Stephen Boyd 提交于
      These GPU drivers only depend on the RESET_CONTROLLER config
      option to fix build issues that existed when there weren't stub
      reset APIs for reset controller consumers. Given that these
      drivers aren't providing any reset controllers themselves, they
      don't actually depend on the API to build (just to function) so
      they don't need to depend on it. Remove the dependency to fix
      recursive build errors like the following:
      
      drivers/usb/Kconfig:39:error: recursive dependency detected!
      drivers/usb/Kconfig:39: symbol USB is selected by MOUSE_APPLETOUCH
      drivers/input/mouse/Kconfig:187:        symbol MOUSE_APPLETOUCH depends on INPUT
      drivers/input/Kconfig:8:        symbol INPUT is selected by VT
      drivers/tty/Kconfig:12: symbol VT is selected by FB_STI
      drivers/video/fbdev/Kconfig:674:        symbol FB_STI depends on FB
      drivers/video/fbdev/Kconfig:5:  symbol FB is selected by DRM_KMS_FB_HELPER
      drivers/gpu/drm/Kconfig:42:     symbol DRM_KMS_FB_HELPER is selected by DRM_KMS_CMA_HELPER
      drivers/gpu/drm/Kconfig:98:     symbol DRM_KMS_CMA_HELPER is selected by DRM_IMX
      drivers/gpu/drm/imx/Kconfig:1:  symbol DRM_IMX depends on IMX_IPUV3_CORE
      drivers/gpu/ipu-v3/Kconfig:1:   symbol IMX_IPUV3_CORE depends on RESET_CONTROLLER
      drivers/reset/Kconfig:4:        symbol RESET_CONTROLLER is selected by USB_CHIPIDEA
      drivers/usb/chipidea/Kconfig:1: symbol USB_CHIPIDEA depends on USB_EHCI_HCD
      drivers/usb/host/Kconfig:84:    symbol USB_EHCI_HCD depends on USB
      
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: <dri-devel@lists.freedesktop.org>
      Cc: Heiko Stuebner <heiko@sntech.de>
      Cc: Mark Yao <mark.yao@rock-chips.com>
      Acked-by: NPhilipp Zabel <p.zabel@pengutronix.de>
      Acked-by: robdclark@gmail.com
      Signed-off-by: NStephen Boyd <stephen.boyd@linaro.org>
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      Link: http://patchwork.freedesktop.org/patch/msgid/20161018205719.20575-1-stephen.boyd@linaro.org
      fb80016a
  7. 17 10月, 2016 1 次提交
  8. 19 9月, 2016 3 次提交
    • S
      gpu: ipu-v3: Add queued image conversion support · cd98e85a
      Steve Longerbeam 提交于
      This patch implements image conversion support using the IC tasks, with
      tiling to support scaling to and from images up to 4096x4096. Image
      rotation is also supported. Image conversion requests are added to
      a run queue under the IC tasks.
      
      The internal API is subsystem agnostic (no V4L2 dependency except
      for the use of V4L2 fourcc pixel formats).
      
      Callers prepare for image conversion by calling
      ipu_image_convert_prepare(), which initializes the parameters of
      the conversion. The caller passes in the ipu and IC task to use for
      the conversion, the input and output image formats, a rotation mode,
      and a completion callback and completion context pointer:
      
      struct ipu_image_converter_ctx *
      ipu_image_convert_prepare(struct ipu_soc *ipu, enum ipu_ic_task ic_task,
                                struct ipu_image *in, struct ipu_image *out,
                                enum ipu_rotate_mode rot_mode,
                                ipu_image_converter_cb_t complete,
                                void *complete_context);
      
      A new conversion context is created that is added to an IC task
      context queue. The caller is given the new conversion context,
      which can then be passed to the further APIs:
      
      int ipu_image_convert_queue(struct ipu_image_converter_run *run);
      
      This queues the given image conversion request run to a run queue,
      and starts the conversion immediately if the run queue is empty. Only
      the physaddr's of the input and output image buffers are needed,
      since the conversion context was created previously with
      ipu_image_convert_prepare(). When the conversion completes, the run
      pointer is returned to the completion callback.
      
      void ipu_image_convert_abort(struct ipu_image_converter_ctx *ctx);
      
      This will abort any active or pending conversions for this context.
      Any currently active or pending runs belonging to this context are
      returned via the completion callback with an error status.
      
      void ipu_image_convert_unprepare(struct ipu_image_converter_ctx *ctx);
      
      Unprepares the conversion context. Any active or pending runs will
      be aborted by calling ipu_image_convert_abort().
      Signed-off-by: NSteve Longerbeam <steve_longerbeam@mentor.com>
      Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
      cd98e85a
    • S
      gpu: ipu-v3: Add ipu_rot_mode_is_irt() · 8b9c3d50
      Steve Longerbeam 提交于
      Add a macro that returns boolean true if the given ipu_rotate_mode
      requires the use of the Image Rotator.
      Signed-off-by: NSteve Longerbeam <steve_longerbeam@mentor.com>
      Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
      8b9c3d50
    • L
      gpu: ipu-v3: fix a possible NULL dereference · e92e4478
      LABBE Corentin 提交于
      of_match_device could return NULL, and so cause a NULL pointer
      dereference later.
      
      For fixing this problem, we use of_device_get_match_data(), this will
      simplify the code a little by using a standard function for
      getting the match data.
      
      Testing the return value of of_device_get_match_data is also necessary
      for avoiding a second NULL deref later on devtype.
      Signed-off-by: NLABBE Corentin <clabbe.montjoie@gmail.com>
      Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
      e92e4478
  9. 29 8月, 2016 3 次提交
    • S
      gpu: ipu-v3: Add FSU channel linking support · ac4708fa
      Steve Longerbeam 提交于
      Adds functions to link and unlink source channels to sink
      channels in the FSU:
      
      int ipu_fsu_link(struct ipu_soc *ipu, int src_ch, int sink_ch);
      int ipu_fsu_unlink(struct ipu_soc *ipu, int src_ch, int sink_ch);
      
      The channels numbers are usually IDMAC channels, but they can also be
      channels that do not transfer data to or from memory. The following
      convenience functions can be used in place of ipu_fsu_link/unlink()
      when both source and sink channels are IDMAC channels:
      
      int ipu_idmac_link(struct ipuv3_channel *src, struct ipuv3_channel *sink);
      int ipu_idmac_unlink(struct ipuv3_channel *src, struct ipuv3_channel *sink);
      
      So far the following links are supported:
      
      IPUV3_CHANNEL_IC_PRP_ENC_MEM -> IPUV3_CHANNEL_MEM_ROT_ENC
      PUV3_CHANNEL_IC_PRP_VF_MEM   -> IPUV3_CHANNEL_MEM_ROT_VF
      IPUV3_CHANNEL_IC_PP_MEM      -> IPUV3_CHANNEL_MEM_ROT_PP
      IPUV3_CHANNEL_CSI_DIRECT     -> IPUV3_CHANNEL_CSI_VDI_PREV
      
      More links can be added to the fsu_link_info[] array.
      Signed-off-by: NSteve Longerbeam <steve_longerbeam@mentor.com>
      Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
      ac4708fa
    • S
      gpu: ipu-v3: Add Video Deinterlacer unit · 2d2ead45
      Steve Longerbeam 提交于
      Adds the Video Deinterlacer (VDIC) unit.
      Signed-off-by: NSteve Longerbeam <steve_longerbeam@mentor.com>
      Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
      2d2ead45
    • L
      gpu: ipu-v3: Do not wait for DMFC FIFO to clear when disabling DMFC channel · 448ae8ea
      Liu Ying 提交于
      According to basic tests, it looks there is no issue if we don't wait for
      DMFC FIFO to clear when disabling DMFC channel.  NXP BSP doesn't do that,
      either.  This patch is needed to avoid the annoying warning caused by a
      timeout on waiting for the FIFO to clear after we add the new
      DRM_PLANE_COMMIT_NO_DISABLE_AFTER_MODESET flag to the imx-drm driver
      which changes the procedure to disable display channel slightly.
      
      Cc: Philipp Zabel <p.zabel@pengutronix.de>
      Cc: David Airlie <airlied@linux.ie>
      Cc: Russell King <linux@armlinux.org.uk>
      Cc: Peter Senna Tschudin <peter.senna@gmail.com>
      Cc: Lucas Stach <l.stach@pengutronix.de>
      Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
      Signed-off-by: NLiu Ying <gnuiyl@gmail.com>
      Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
      448ae8ea
  10. 08 8月, 2016 7 次提交
  11. 13 7月, 2016 3 次提交
  12. 23 5月, 2016 1 次提交
    • P
      drm/imx: Match imx-ipuv3-crtc components using device node in platform data · 310944d1
      Philipp Zabel 提交于
      The component master driver imx-drm-core matches component devices using
      their of_node. Since commit 950b410dd1ab ("gpu: ipu-v3: Fix imx-ipuv3-crtc
      module autoloading"), the imx-ipuv3-crtc dev->of_node is not set during
      probing. Before that, of_node was set and caused an of: modalias to be
      used instead of the platform: modalias, which broke module autoloading.
      
      On the other hand, if dev->of_node is not set yet when the imx-ipuv3-crtc
      probe function calls component_add, component matching in imx-drm-core
      fails. While dev->of_node will be set once the next component tries to
      bring up the component master, imx-drm-core component binding will never
      succeed if one of the crtc devices is probed last.
      
      Add of_node to the component platform data and match against the
      pdata->of_node instead of dev->of_node in imx-drm-core to work around
      this problem.
      
      Cc: <stable@vger.kernel.org> # 4.4.x
      Fixes: 950b410dd1ab ("gpu: ipu-v3: Fix imx-ipuv3-crtc module autoloading")
      Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de>
      Tested-by: NFabio Estevam <fabio.estevam@nxp.com>
      Tested-by: NLothar Waßmann <LW@KARO-electronics.de>
      Tested-by: NHeiko Schocher <hs@denx.de>
      Tested-by: NChris Ruehl <chris.ruehl@gtsys.com.hk>
      310944d1
  13. 05 5月, 2016 1 次提交
  14. 31 3月, 2016 4 次提交
  15. 01 3月, 2016 1 次提交
  16. 10 2月, 2016 1 次提交