linux/drivers/media/platform/coda/imx-vdoa.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0-or-later */
   2/*
   3 * Copyright (C) 2016 Pengutronix
   4 */
   5
   6#ifndef IMX_VDOA_H
   7#define IMX_VDOA_H
   8
   9struct vdoa_data;
  10struct vdoa_ctx;
  11
  12#if (defined CONFIG_VIDEO_IMX_VDOA || defined CONFIG_VIDEO_IMX_VDOA_MODULE)
  13
  14struct vdoa_ctx *vdoa_context_create(struct vdoa_data *vdoa);
  15int vdoa_context_configure(struct vdoa_ctx *ctx,
  16                           unsigned int width, unsigned int height,
  17                           u32 pixelformat);
  18void vdoa_context_destroy(struct vdoa_ctx *ctx);
  19
  20void vdoa_device_run(struct vdoa_ctx *ctx, dma_addr_t dst, dma_addr_t src);
  21int vdoa_wait_for_completion(struct vdoa_ctx *ctx);
  22
  23#else
  24
  25static inline struct vdoa_ctx *vdoa_context_create(struct vdoa_data *vdoa)
  26{
  27        return NULL;
  28}
  29
  30static inline int vdoa_context_configure(struct vdoa_ctx *ctx,
  31                                         unsigned int width,
  32                                         unsigned int height,
  33                                         u32 pixelformat)
  34{
  35        return 0;
  36}
  37
  38static inline void vdoa_context_destroy(struct vdoa_ctx *ctx) { };
  39
  40static inline void vdoa_device_run(struct vdoa_ctx *ctx,
  41                                   dma_addr_t dst, dma_addr_t src) { };
  42
  43static inline int vdoa_wait_for_completion(struct vdoa_ctx *ctx)
  44{
  45        return 0;
  46};
  47
  48#endif
  49
  50#endif /* IMX_VDOA_H */
  51