1/*
2 * drivers/media/i2c/smiapp/smiapp-limits.h
3 *
4 * Generic driver for SMIA/SMIA++ compliant camera modules
5 *
6 * Copyright (C) 2011--2012 Nokia Corporation
7 * Contact: Sakari Ailus <sakari.ailus@iki.fi>
8 *
9 * This program is free software; you can redistribute it and/or
10 * modify it under the terms of the GNU General Public License
11 * version 2 as published by the Free Software Foundation.
12 *
13 * This program is distributed in the hope that it will be useful, but
14 * WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16 * General Public License for more details.
17 */
18
19#define SMIAPP_LIMIT_ANALOGUE_GAIN_CAPABILITY			0
20#define SMIAPP_LIMIT_ANALOGUE_GAIN_CODE_MIN			1
21#define SMIAPP_LIMIT_ANALOGUE_GAIN_CODE_MAX			2
22#define SMIAPP_LIMIT_THS_ZERO_MIN				3
23#define SMIAPP_LIMIT_TCLK_TRAIL_MIN				4
24#define SMIAPP_LIMIT_INTEGRATION_TIME_CAPABILITY		5
25#define SMIAPP_LIMIT_COARSE_INTEGRATION_TIME_MIN		6
26#define SMIAPP_LIMIT_COARSE_INTEGRATION_TIME_MAX_MARGIN		7
27#define SMIAPP_LIMIT_FINE_INTEGRATION_TIME_MIN			8
28#define SMIAPP_LIMIT_FINE_INTEGRATION_TIME_MAX_MARGIN		9
29#define SMIAPP_LIMIT_DIGITAL_GAIN_CAPABILITY			10
30#define SMIAPP_LIMIT_DIGITAL_GAIN_MIN				11
31#define SMIAPP_LIMIT_DIGITAL_GAIN_MAX				12
32#define SMIAPP_LIMIT_MIN_EXT_CLK_FREQ_HZ			13
33#define SMIAPP_LIMIT_MAX_EXT_CLK_FREQ_HZ			14
34#define SMIAPP_LIMIT_MIN_PRE_PLL_CLK_DIV			15
35#define SMIAPP_LIMIT_MAX_PRE_PLL_CLK_DIV			16
36#define SMIAPP_LIMIT_MIN_PLL_IP_FREQ_HZ				17
37#define SMIAPP_LIMIT_MAX_PLL_IP_FREQ_HZ				18
38#define SMIAPP_LIMIT_MIN_PLL_MULTIPLIER				19
39#define SMIAPP_LIMIT_MAX_PLL_MULTIPLIER				20
40#define SMIAPP_LIMIT_MIN_PLL_OP_FREQ_HZ				21
41#define SMIAPP_LIMIT_MAX_PLL_OP_FREQ_HZ				22
42#define SMIAPP_LIMIT_MIN_VT_SYS_CLK_DIV				23
43#define SMIAPP_LIMIT_MAX_VT_SYS_CLK_DIV				24
44#define SMIAPP_LIMIT_MIN_VT_SYS_CLK_FREQ_HZ			25
45#define SMIAPP_LIMIT_MAX_VT_SYS_CLK_FREQ_HZ			26
46#define SMIAPP_LIMIT_MIN_VT_PIX_CLK_FREQ_HZ			27
47#define SMIAPP_LIMIT_MAX_VT_PIX_CLK_FREQ_HZ			28
48#define SMIAPP_LIMIT_MIN_VT_PIX_CLK_DIV				29
49#define SMIAPP_LIMIT_MAX_VT_PIX_CLK_DIV				30
50#define SMIAPP_LIMIT_MIN_FRAME_LENGTH_LINES			31
51#define SMIAPP_LIMIT_MAX_FRAME_LENGTH_LINES			32
52#define SMIAPP_LIMIT_MIN_LINE_LENGTH_PCK			33
53#define SMIAPP_LIMIT_MAX_LINE_LENGTH_PCK			34
54#define SMIAPP_LIMIT_MIN_LINE_BLANKING_PCK			35
55#define SMIAPP_LIMIT_MIN_FRAME_BLANKING_LINES			36
56#define SMIAPP_LIMIT_MIN_LINE_LENGTH_PCK_STEP_SIZE		37
57#define SMIAPP_LIMIT_MIN_OP_SYS_CLK_DIV				38
58#define SMIAPP_LIMIT_MAX_OP_SYS_CLK_DIV				39
59#define SMIAPP_LIMIT_MIN_OP_SYS_CLK_FREQ_HZ			40
60#define SMIAPP_LIMIT_MAX_OP_SYS_CLK_FREQ_HZ			41
61#define SMIAPP_LIMIT_MIN_OP_PIX_CLK_DIV				42
62#define SMIAPP_LIMIT_MAX_OP_PIX_CLK_DIV				43
63#define SMIAPP_LIMIT_MIN_OP_PIX_CLK_FREQ_HZ			44
64#define SMIAPP_LIMIT_MAX_OP_PIX_CLK_FREQ_HZ			45
65#define SMIAPP_LIMIT_X_ADDR_MIN					46
66#define SMIAPP_LIMIT_Y_ADDR_MIN					47
67#define SMIAPP_LIMIT_X_ADDR_MAX					48
68#define SMIAPP_LIMIT_Y_ADDR_MAX					49
69#define SMIAPP_LIMIT_MIN_X_OUTPUT_SIZE				50
70#define SMIAPP_LIMIT_MIN_Y_OUTPUT_SIZE				51
71#define SMIAPP_LIMIT_MAX_X_OUTPUT_SIZE				52
72#define SMIAPP_LIMIT_MAX_Y_OUTPUT_SIZE				53
73#define SMIAPP_LIMIT_MIN_EVEN_INC				54
74#define SMIAPP_LIMIT_MAX_EVEN_INC				55
75#define SMIAPP_LIMIT_MIN_ODD_INC				56
76#define SMIAPP_LIMIT_MAX_ODD_INC				57
77#define SMIAPP_LIMIT_SCALING_CAPABILITY				58
78#define SMIAPP_LIMIT_SCALER_M_MIN				59
79#define SMIAPP_LIMIT_SCALER_M_MAX				60
80#define SMIAPP_LIMIT_SCALER_N_MIN				61
81#define SMIAPP_LIMIT_SCALER_N_MAX				62
82#define SMIAPP_LIMIT_SPATIAL_SAMPLING_CAPABILITY		63
83#define SMIAPP_LIMIT_DIGITAL_CROP_CAPABILITY			64
84#define SMIAPP_LIMIT_COMPRESSION_CAPABILITY			65
85#define SMIAPP_LIMIT_FIFO_SUPPORT_CAPABILITY			66
86#define SMIAPP_LIMIT_DPHY_CTRL_CAPABILITY			67
87#define SMIAPP_LIMIT_CSI_LANE_MODE_CAPABILITY			68
88#define SMIAPP_LIMIT_CSI_SIGNALLING_MODE_CAPABILITY		69
89#define SMIAPP_LIMIT_FAST_STANDBY_CAPABILITY			70
90#define SMIAPP_LIMIT_CCI_ADDRESS_CONTROL_CAPABILITY		71
91#define SMIAPP_LIMIT_MAX_PER_LANE_BITRATE_1_LANE_MODE_MBPS	72
92#define SMIAPP_LIMIT_MAX_PER_LANE_BITRATE_2_LANE_MODE_MBPS	73
93#define SMIAPP_LIMIT_MAX_PER_LANE_BITRATE_3_LANE_MODE_MBPS	74
94#define SMIAPP_LIMIT_MAX_PER_LANE_BITRATE_4_LANE_MODE_MBPS	75
95#define SMIAPP_LIMIT_TEMP_SENSOR_CAPABILITY			76
96#define SMIAPP_LIMIT_MIN_FRAME_LENGTH_LINES_BIN			77
97#define SMIAPP_LIMIT_MAX_FRAME_LENGTH_LINES_BIN			78
98#define SMIAPP_LIMIT_MIN_LINE_LENGTH_PCK_BIN			79
99#define SMIAPP_LIMIT_MAX_LINE_LENGTH_PCK_BIN			80
100#define SMIAPP_LIMIT_MIN_LINE_BLANKING_PCK_BIN			81
101#define SMIAPP_LIMIT_FINE_INTEGRATION_TIME_MIN_BIN		82
102#define SMIAPP_LIMIT_FINE_INTEGRATION_TIME_MAX_MARGIN_BIN	83
103#define SMIAPP_LIMIT_BINNING_CAPABILITY				84
104#define SMIAPP_LIMIT_BINNING_WEIGHTING_CAPABILITY		85
105#define SMIAPP_LIMIT_DATA_TRANSFER_IF_CAPABILITY		86
106#define SMIAPP_LIMIT_SHADING_CORRECTION_CAPABILITY		87
107#define SMIAPP_LIMIT_GREEN_IMBALANCE_CAPABILITY			88
108#define SMIAPP_LIMIT_BLACK_LEVEL_CAPABILITY			89
109#define SMIAPP_LIMIT_MODULE_SPECIFIC_CORRECTION_CAPABILITY	90
110#define SMIAPP_LIMIT_DEFECT_CORRECTION_CAPABILITY		91
111#define SMIAPP_LIMIT_DEFECT_CORRECTION_CAPABILITY_2		92
112#define SMIAPP_LIMIT_EDOF_CAPABILITY				93
113#define SMIAPP_LIMIT_COLOUR_FEEDBACK_CAPABILITY			94
114#define SMIAPP_LIMIT_ESTIMATION_MODE_CAPABILITY			95
115#define SMIAPP_LIMIT_ESTIMATION_ZONE_CAPABILITY			96
116#define SMIAPP_LIMIT_CAPABILITY_TRDY_MIN			97
117#define SMIAPP_LIMIT_FLASH_MODE_CAPABILITY			98
118#define SMIAPP_LIMIT_ACTUATOR_CAPABILITY			99
119#define SMIAPP_LIMIT_BRACKETING_LUT_CAPABILITY_1		100
120#define SMIAPP_LIMIT_BRACKETING_LUT_CAPABILITY_2		101
121#define SMIAPP_LIMIT_ANALOGUE_GAIN_CODE_STEP			102
122#define SMIAPP_LIMIT_LAST					103
123