����JFIF��������� Mr.X
  
  __  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

deexcl@216.73.217.71: ~ $
/* SPDX-License-Identifier: GPL-2.0-or-later */
/*
 * Copyright (C) 2012-2016 Mentor Graphics Inc.
 *
 * i.MX Queued image conversion support, with tiling and rotation.
 */
#ifndef __IMX_IPU_IMAGE_CONVERT_H__
#define __IMX_IPU_IMAGE_CONVERT_H__

#include <video/imx-ipu-v3.h>

struct ipu_image_convert_ctx;

/**
 * struct ipu_image_convert_run - image conversion run request struct
 *
 * @ctx:	the conversion context
 * @in_phys:	dma addr of input image buffer for this run
 * @out_phys:	dma addr of output image buffer for this run
 * @status:	completion status of this run
 */
struct ipu_image_convert_run {
	struct ipu_image_convert_ctx *ctx;

	dma_addr_t in_phys;
	dma_addr_t out_phys;

	int status;

	/* internal to image converter, callers don't touch */
	struct list_head list;
};

/**
 * ipu_image_convert_cb_t - conversion callback function prototype
 *
 * @run:	the completed conversion run pointer
 * @ctx:	a private context pointer for the callback
 */
typedef void (*ipu_image_convert_cb_t)(struct ipu_image_convert_run *run,
				       void *ctx);

/**
 * ipu_image_convert_enum_format() - enumerate the image converter's
 *	supported input and output pixel formats.
 *
 * @index:	pixel format index
 * @fourcc:	v4l2 fourcc for this index
 *
 * Returns 0 with a valid index and fills in v4l2 fourcc, -EINVAL otherwise.
 *
 * In V4L2, drivers can call ipu_image_enum_format() in .enum_fmt.
 */
int ipu_image_convert_enum_format(int index, u32 *fourcc);

/**
 * ipu_image_convert_adjust() - adjust input/output images to IPU restrictions.
 *
 * @in:		input image format, adjusted on return
 * @out:	output image format, adjusted on return
 * @rot_mode:	rotation mode
 *
 * In V4L2, drivers can call ipu_image_convert_adjust() in .try_fmt.
 */
void ipu_image_convert_adjust(struct ipu_image *in, struct ipu_image *out,
			      enum ipu_rotate_mode rot_mode);

/**
 * ipu_image_convert_verify() - verify that input/output image formats
 *         and rotation mode meet IPU restrictions.
 *
 * @in:		input image format
 * @out:	output image format
 * @rot_mode:	rotation mode
 *
 * Returns 0 if the formats and rotation mode meet IPU restrictions,
 * -EINVAL otherwise.
 */
int ipu_image_convert_verify(struct ipu_image *in, struct ipu_image *out,
			     enum ipu_rotate_mode rot_mode);

/**
 * ipu_image_convert_prepare() - prepare a conversion context.
 *
 * @ipu:	the IPU handle to use for the conversions
 * @ic_task:	the IC task to use for the conversions
 * @in:		input image format
 * @out:	output image format
 * @rot_mode:	rotation mode
 * @complete:	run completion callback
 * @complete_context:	a context pointer for the completion callback
 *
 * Returns an opaque conversion context pointer on success, error pointer
 * on failure. The input/output formats and rotation mode must already meet
 * IPU retrictions.
 *
 * In V4L2, drivers should call ipu_image_convert_prepare() at streamon.
 */
struct ipu_image_convert_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_convert_cb_t complete,
			  void *complete_context);

/**
 * ipu_image_convert_unprepare() - unprepare a conversion context.
 *
 * @ctx: the conversion context pointer to unprepare
 *
 * Aborts any active or pending conversions for this context and
 * frees the context. Any currently active or pending runs belonging
 * to this context are returned via the completion callback with an
 * error run status.
 *
 * In V4L2, drivers should call ipu_image_convert_unprepare() at
 * streamoff.
 */
void ipu_image_convert_unprepare(struct ipu_image_convert_ctx *ctx);

/**
 * ipu_image_convert_queue() - queue a conversion run
 *
 * @run: the run request pointer
 *
 * ipu_image_convert_run must be dynamically allocated (_not_ as a local
 * var) by callers and filled in with a previously prepared conversion
 * context handle and the dma addr's of the input and output image buffers
 * for this conversion run.
 *
 * When this conversion completes, the run pointer is returned via the
 * completion callback. The caller is responsible for freeing the run
 * object after it completes.
 *
 * In V4L2, drivers should call ipu_image_convert_queue() while
 * streaming to queue the conversion of a received input buffer.
 * For example mem2mem devices this would be called in .device_run.
 */
int ipu_image_convert_queue(struct ipu_image_convert_run *run);

/**
 * ipu_image_convert_abort() - abort conversions
 *
 * @ctx: the conversion context pointer
 *
 * 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 run status.
 */
void ipu_image_convert_abort(struct ipu_image_convert_ctx *ctx);

/**
 * ipu_image_convert() - asynchronous image conversion request
 *
 * @ipu:	the IPU handle to use for the conversion
 * @ic_task:	the IC task to use for the conversion
 * @in:		input image format
 * @out:	output image format
 * @rot_mode:	rotation mode
 * @complete:	run completion callback
 * @complete_context:	a context pointer for the completion callback
 *
 * Request a single image conversion. Returns the run that has been queued.
 * A conversion context is automatically created and is available in run->ctx.
 * As with ipu_image_convert_prepare(), the input/output formats and rotation
 * mode must already meet IPU retrictions.
 *
 * On successful return the caller can queue more run requests if needed, using
 * the prepared context in run->ctx. The caller is responsible for unpreparing
 * the context when no more conversion requests are needed.
 */
struct ipu_image_convert_run *
ipu_image_convert(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_convert_cb_t complete,
		  void *complete_context);

/**
 * ipu_image_convert_sync() - synchronous single image conversion request
 *
 * @ipu:	the IPU handle to use for the conversion
 * @ic_task:	the IC task to use for the conversion
 * @in:		input image format
 * @out:	output image format
 * @rot_mode:	rotation mode
 *
 * Carry out a single image conversion. Returns when the conversion
 * completes. The input/output formats and rotation mode must already
 * meet IPU retrictions. The created context is automatically unprepared
 * and the run freed on return.
 */
int ipu_image_convert_sync(struct ipu_soc *ipu, enum ipu_ic_task ic_task,
			   struct ipu_image *in, struct ipu_image *out,
			   enum ipu_rotate_mode rot_mode);


#endif /* __IMX_IPU_IMAGE_CONVERT_H__ */

Filemanager

Name Type Size Permission Actions
atmel_lcdc.h File 6.15 KB 0644
aty128.h File 13.27 KB 0644
broadsheetfb.h File 2.12 KB 0644
cirrus.h File 5.67 KB 0644
cmdline.h File 382 B 0644
cvisionppc.h File 1.54 KB 0644
da8xx-fb.h File 1.96 KB 0644
display_timing.h File 3.11 KB 0644
edid.h File 228 B 0644
gbe.h File 10.44 KB 0644
hecubafb.h File 1.5 KB 0644
ili9320.h File 5.66 KB 0644
imx-ipu-image-convert.h File 6.53 KB 0644
imx-ipu-v3.h File 16.38 KB 0644
kyro.h File 1.97 KB 0644
mach64.h File 46.93 KB 0644
maxinefb.h File 1.24 KB 0644
metronomefb.h File 1.48 KB 0644
mipi_display.h File 4.96 KB 0644
mmp_disp.h File 7.06 KB 0644
neomagic.h File 4.9 KB 0644
newport.h File 18.68 KB 0644
nomodeset.h File 137 B 0644
of_display_timing.h File 814 B 0644
of_videomode.h File 367 B 0644
omapfb_dss.h File 23.82 KB 0644
omapvrfb.h File 1.79 KB 0644
permedia2.h File 8.96 KB 0644
platform_lcd.h File 440 B 0644
pm3fb.h File 45.31 KB 0644
pmag-ba-fb.h File 1.02 KB 0644
pmagb-b-fb.h File 2.34 KB 0644
pxa168fb.h File 2.53 KB 0644
radeon.h File 109.22 KB 0644
s1d13xxxfb.h File 9.95 KB 0644
sa1100fb.h File 1.26 KB 0644
samsung_fimd.h File 17.15 KB 0644
sh_mobile_lcdc.h File 5.99 KB 0644
sisfb.h File 606 B 0644
sstfb.h File 11.07 KB 0644
sticore.h File 11.67 KB 0644
tdfx.h File 5.32 KB 0644
tgafb.h File 6.94 KB 0644
trident.h File 3.23 KB 0644
udlfb.h File 2.91 KB 0644
uvesafb.h File 2.8 KB 0644
vga.h File 14.54 KB 0644
videomode.h File 1.35 KB 0644