1 /* SPDX-License-Identifier: GPL-2.0 */ 2 /* 3 * Support for Intel Camera Imaging ISP subsystem. 4 * Copyright (c) 2015, Intel Corporation. 5 */ 6 7 #ifndef __TAG_GLOBAL_H_INCLUDED__ 8 #define __TAG_GLOBAL_H_INCLUDED__ 9 10 /* offsets for encoding/decoding the tag into an uint32_t */ 11 12 #define TAG_CAP 1 13 #define TAG_EXP 2 14 15 #define TAG_NUM_CAPTURES_SIGN_SHIFT 6 16 #define TAG_OFFSET_SIGN_SHIFT 7 17 #define TAG_NUM_CAPTURES_SHIFT 8 18 #define TAG_OFFSET_SHIFT 16 19 #define TAG_SKIP_SHIFT 24 20 21 #define TAG_EXP_ID_SHIFT 8 22 23 /* Data structure containing the tagging information which is used in 24 * continuous mode to specify which frames should be captured. 25 * num_captures The number of RAW frames to be processed to 26 * YUV. Setting this to -1 will make continuous 27 * capture run until it is stopped. 28 * skip Skip N frames in between captures. This can be 29 * used to select a slower capture frame rate than 30 * the sensor output frame rate. 31 * offset Start the RAW-to-YUV processing at RAW buffer 32 * with this offset. This allows the user to 33 * process RAW frames that were captured in the 34 * past or future. 35 * exp_id Exposure id of the RAW frame to tag. 36 * 37 * NOTE: Either exp_id = 0 or all other fields are 0 38 * (so yeah, this could be a union) 39 */ 40 41 struct sh_css_tag_descr { 42 int num_captures; 43 unsigned int skip; 44 int offset; 45 unsigned int exp_id; 46 }; 47 48 #endif /* __TAG_GLOBAL_H_INCLUDED__ */ 49