1*f80ad8b4SAndroid Build Coastguard Worker /* SPDX-License-Identifier: ((GPL-2.0+ WITH Linux-syscall-note) OR BSD-3-Clause) */ 2*f80ad8b4SAndroid Build Coastguard Worker /* 3*f80ad8b4SAndroid Build Coastguard Worker * include/linux/v4l2-common.h 4*f80ad8b4SAndroid Build Coastguard Worker * 5*f80ad8b4SAndroid Build Coastguard Worker * Common V4L2 and V4L2 subdev definitions. 6*f80ad8b4SAndroid Build Coastguard Worker * 7*f80ad8b4SAndroid Build Coastguard Worker * Users are advised to #include this file either through videodev2.h 8*f80ad8b4SAndroid Build Coastguard Worker * (V4L2) or through v4l2-subdev.h (V4L2 subdev) rather than to refer 9*f80ad8b4SAndroid Build Coastguard Worker * to this file directly. 10*f80ad8b4SAndroid Build Coastguard Worker * 11*f80ad8b4SAndroid Build Coastguard Worker * Copyright (C) 2012 Nokia Corporation 12*f80ad8b4SAndroid Build Coastguard Worker * Contact: Sakari Ailus <[email protected]> 13*f80ad8b4SAndroid Build Coastguard Worker */ 14*f80ad8b4SAndroid Build Coastguard Worker 15*f80ad8b4SAndroid Build Coastguard Worker #ifndef __V4L2_COMMON__ 16*f80ad8b4SAndroid Build Coastguard Worker #define __V4L2_COMMON__ 17*f80ad8b4SAndroid Build Coastguard Worker 18*f80ad8b4SAndroid Build Coastguard Worker #include <linux/types.h> 19*f80ad8b4SAndroid Build Coastguard Worker 20*f80ad8b4SAndroid Build Coastguard Worker /* 21*f80ad8b4SAndroid Build Coastguard Worker * 22*f80ad8b4SAndroid Build Coastguard Worker * Selection interface definitions 23*f80ad8b4SAndroid Build Coastguard Worker * 24*f80ad8b4SAndroid Build Coastguard Worker */ 25*f80ad8b4SAndroid Build Coastguard Worker 26*f80ad8b4SAndroid Build Coastguard Worker /* Current cropping area */ 27*f80ad8b4SAndroid Build Coastguard Worker #define V4L2_SEL_TGT_CROP 0x0000 28*f80ad8b4SAndroid Build Coastguard Worker /* Default cropping area */ 29*f80ad8b4SAndroid Build Coastguard Worker #define V4L2_SEL_TGT_CROP_DEFAULT 0x0001 30*f80ad8b4SAndroid Build Coastguard Worker /* Cropping bounds */ 31*f80ad8b4SAndroid Build Coastguard Worker #define V4L2_SEL_TGT_CROP_BOUNDS 0x0002 32*f80ad8b4SAndroid Build Coastguard Worker /* Native frame size */ 33*f80ad8b4SAndroid Build Coastguard Worker #define V4L2_SEL_TGT_NATIVE_SIZE 0x0003 34*f80ad8b4SAndroid Build Coastguard Worker /* Current composing area */ 35*f80ad8b4SAndroid Build Coastguard Worker #define V4L2_SEL_TGT_COMPOSE 0x0100 36*f80ad8b4SAndroid Build Coastguard Worker /* Default composing area */ 37*f80ad8b4SAndroid Build Coastguard Worker #define V4L2_SEL_TGT_COMPOSE_DEFAULT 0x0101 38*f80ad8b4SAndroid Build Coastguard Worker /* Composing bounds */ 39*f80ad8b4SAndroid Build Coastguard Worker #define V4L2_SEL_TGT_COMPOSE_BOUNDS 0x0102 40*f80ad8b4SAndroid Build Coastguard Worker /* Current composing area plus all padding pixels */ 41*f80ad8b4SAndroid Build Coastguard Worker #define V4L2_SEL_TGT_COMPOSE_PADDED 0x0103 42*f80ad8b4SAndroid Build Coastguard Worker 43*f80ad8b4SAndroid Build Coastguard Worker /* Selection flags */ 44*f80ad8b4SAndroid Build Coastguard Worker #define V4L2_SEL_FLAG_GE (1 << 0) 45*f80ad8b4SAndroid Build Coastguard Worker #define V4L2_SEL_FLAG_LE (1 << 1) 46*f80ad8b4SAndroid Build Coastguard Worker #define V4L2_SEL_FLAG_KEEP_CONFIG (1 << 2) 47*f80ad8b4SAndroid Build Coastguard Worker 48*f80ad8b4SAndroid Build Coastguard Worker struct v4l2_edid { 49*f80ad8b4SAndroid Build Coastguard Worker __u32 pad; 50*f80ad8b4SAndroid Build Coastguard Worker __u32 start_block; 51*f80ad8b4SAndroid Build Coastguard Worker __u32 blocks; 52*f80ad8b4SAndroid Build Coastguard Worker __u32 reserved[5]; 53*f80ad8b4SAndroid Build Coastguard Worker __u8 *edid; 54*f80ad8b4SAndroid Build Coastguard Worker }; 55*f80ad8b4SAndroid Build Coastguard Worker 56*f80ad8b4SAndroid Build Coastguard Worker #ifndef __KERNEL__ 57*f80ad8b4SAndroid Build Coastguard Worker /* Backward compatibility target definitions --- to be removed. */ 58*f80ad8b4SAndroid Build Coastguard Worker #define V4L2_SEL_TGT_CROP_ACTIVE V4L2_SEL_TGT_CROP 59*f80ad8b4SAndroid Build Coastguard Worker #define V4L2_SEL_TGT_COMPOSE_ACTIVE V4L2_SEL_TGT_COMPOSE 60*f80ad8b4SAndroid Build Coastguard Worker #define V4L2_SUBDEV_SEL_TGT_CROP_ACTUAL V4L2_SEL_TGT_CROP 61*f80ad8b4SAndroid Build Coastguard Worker #define V4L2_SUBDEV_SEL_TGT_COMPOSE_ACTUAL V4L2_SEL_TGT_COMPOSE 62*f80ad8b4SAndroid Build Coastguard Worker #define V4L2_SUBDEV_SEL_TGT_CROP_BOUNDS V4L2_SEL_TGT_CROP_BOUNDS 63*f80ad8b4SAndroid Build Coastguard Worker #define V4L2_SUBDEV_SEL_TGT_COMPOSE_BOUNDS V4L2_SEL_TGT_COMPOSE_BOUNDS 64*f80ad8b4SAndroid Build Coastguard Worker 65*f80ad8b4SAndroid Build Coastguard Worker /* Backward compatibility flag definitions --- to be removed. */ 66*f80ad8b4SAndroid Build Coastguard Worker #define V4L2_SUBDEV_SEL_FLAG_SIZE_GE V4L2_SEL_FLAG_GE 67*f80ad8b4SAndroid Build Coastguard Worker #define V4L2_SUBDEV_SEL_FLAG_SIZE_LE V4L2_SEL_FLAG_LE 68*f80ad8b4SAndroid Build Coastguard Worker #define V4L2_SUBDEV_SEL_FLAG_KEEP_CONFIG V4L2_SEL_FLAG_KEEP_CONFIG 69*f80ad8b4SAndroid Build Coastguard Worker #endif 70*f80ad8b4SAndroid Build Coastguard Worker 71*f80ad8b4SAndroid Build Coastguard Worker #endif /* __V4L2_COMMON__ */ 72