MLK-11519-1 media: forward mxc video output drivers to 4.1 kernel

Forward imx_3.14.y mxc video output drivers to 4.1 kernel.

The priv field of v4l2_pix_format is used to expand colorspace,
and can not use to pass IPU input crop size.
Add private IOCTL VIDIOC_S_INPUT_CROP and VIDIOC_G_INPUT_CROP
to pass input crop size.

Signed-off-by: Sandor Yu <R01008@freescale.com>
This commit is contained in:
Sandor Yu
2015-09-08 15:54:21 +08:00
committed by Jason Liu
parent 1cd61e072d
commit b4ef47e072
5 changed files with 2374 additions and 0 deletions

View File

@ -1,3 +1,9 @@
config VIDEO_MXC_IPU_OUTPUT
tristate "IPU v4l2 output support"
depends on VIDEO_MXC_OUTPUT && MXC_IPU
---help---
This is the video4linux2 driver for IPU post processing video output.
config VIDEO_MXC_PXP_V4L2
tristate "MXC PxP V4L2 driver"
depends on VIDEO_DEV && VIDEO_V4L2

View File

@ -1 +1,2 @@
obj-$(CONFIG_VIDEO_MXC_IPU_OUTPUT) += mxc_vout.o
obj-$(CONFIG_VIDEO_MXC_PXP_V4L2) += mxc_pxp_v4l2.o

File diff suppressed because it is too large Load Diff

27
include/linux/mxc_v4l2.h Normal file
View File

@ -0,0 +1,27 @@
/*
* Copyright 2004-2015 Freescale Semiconductor, Inc. All Rights Reserved.
*/
/*
* The code contained herein is licensed under the GNU Lesser General
* Public License. You may obtain a copy of the GNU Lesser General
* Public License Version 2.1 or later at the following locations:
*
* http://www.opensource.org/licenses/lgpl-license.html
* http://www.gnu.org/copyleft/lgpl.html
*/
/*!
* @file linux/mxc_v4l2.h
*
* @brief MXC V4L2 private header file
*
* @ingroup MXC V4L2
*/
#ifndef __LINUX_MXC_V4L2_H__
#define __LINUX_MXC_V4L2_H__
#include <uapi/linux/mxc_v4l2.h>
#endif

View File

@ -53,4 +53,15 @@ struct v4l2_mxc_offset {
uint32_t v_offset;
};
/*
* Private IOCTLs
*
* VIDIOC_S_INOUT_CROP: Set input stream crop size
* VIDIOC_G_INOUT_CROP: Get input stream crop size
*/
#define VIDIOC_S_INPUT_CROP \
_IOWR('V', BASE_VIDIOC_PRIVATE + 1, struct v4l2_crop)
#define VIDIOC_G_INPUT_CROP \
_IOWR('V', BASE_VIDIOC_PRIVATE + 2, struct v4l2_crop)
#endif