brintos

brintos / linux-shallow public Read only

0
0
Text · 33.9 KiB · ebd0f90 Raw
586 lines · c
1/* SPDX-License-Identifier: GPL-2.0-only */2/*3 * drivers/media/i2c/smiapp/smiapp-reg-defs.h4 *5 * Generic driver for MIPI CCS/SMIA/SMIA++ compliant camera sensors6 *7 * Copyright (C) 2020 Intel Corporation8 * Copyright (C) 2011--2012 Nokia Corporation9 * Contact: Sakari Ailus <sakari.ailus@iki.fi>10 */11 12#ifndef __SMIAPP_REG_DEFS_H__13#define __SMIAPP_REG_DEFS_H__14 15#include <linux/bits.h>16#include <media/v4l2-cci.h>17 18/* Register addresses */19#define SMIAPP_REG_U16_MODEL_ID					CCI_REG16(0x0000)20#define SMIAPP_REG_U8_REVISION_NUMBER_MAJOR			CCI_REG8(0x0002)21#define SMIAPP_REG_U8_MANUFACTURER_ID				CCI_REG8(0x0003)22#define SMIAPP_REG_U8_SMIA_VERSION				CCI_REG8(0x0004)23#define SMIAPP_REG_U8_FRAME_COUNT				CCI_REG8(0x0005)24#define SMIAPP_REG_U8_PIXEL_ORDER				CCI_REG8(0x0006)25#define SMIAPP_REG_U16_DATA_PEDESTAL				CCI_REG16(0x0008)26#define SMIAPP_REG_U8_PIXEL_DEPTH				CCI_REG8(0x000c)27#define SMIAPP_REG_U8_REVISION_NUMBER_MINOR			CCI_REG8(0x0010)28#define SMIAPP_REG_U8_SMIAPP_VERSION				CCI_REG8(0x0011)29#define SMIAPP_REG_U8_MODULE_DATE_YEAR				CCI_REG8(0x0012)30#define SMIAPP_REG_U8_MODULE_DATE_MONTH				CCI_REG8(0x0013)31#define SMIAPP_REG_U8_MODULE_DATE_DAY				CCI_REG8(0x0014)32#define SMIAPP_REG_U8_MODULE_DATE_PHASE				CCI_REG8(0x0015)33#define SMIAPP_REG_U16_SENSOR_MODEL_ID				CCI_REG16(0x0016)34#define SMIAPP_REG_U8_SENSOR_REVISION_NUMBER			CCI_REG8(0x0018)35#define SMIAPP_REG_U8_SENSOR_MANUFACTURER_ID			CCI_REG8(0x0019)36#define SMIAPP_REG_U8_SENSOR_FIRMWARE_VERSION			CCI_REG8(0x001a)37#define SMIAPP_REG_U32_SERIAL_NUMBER				CCI_REG32(0x001c)38#define SMIAPP_REG_U8_FRAME_FORMAT_MODEL_TYPE			CCI_REG8(0x0040)39#define SMIAPP_REG_U8_FRAME_FORMAT_MODEL_SUBTYPE		CCI_REG8(0x0041)40#define SMIAPP_REG_U16_FRAME_FORMAT_DESCRIPTOR_2(n)		CCI_REG16(0x0042 + ((n) << 1)) /* 0 <= n <= 14 */41#define SMIAPP_REG_U32_FRAME_FORMAT_DESCRIPTOR_4(n)		CCI_REG32(0x0060 + ((n) << 2)) /* 0 <= n <= 7 */42#define SMIAPP_REG_U16_ANALOGUE_GAIN_CAPABILITY			CCI_REG16(0x0080)43#define SMIAPP_REG_U16_ANALOGUE_GAIN_CODE_MIN			CCI_REG16(0x0084)44#define SMIAPP_REG_U16_ANALOGUE_GAIN_CODE_MAX			CCI_REG16(0x0086)45#define SMIAPP_REG_U16_ANALOGUE_GAIN_CODE_STEP			CCI_REG16(0x0088)46#define SMIAPP_REG_U16_ANALOGUE_GAIN_TYPE			CCI_REG16(0x008a)47#define SMIAPP_REG_U16_ANALOGUE_GAIN_M0				CCI_REG16(0x008c)48#define SMIAPP_REG_U16_ANALOGUE_GAIN_C0				CCI_REG16(0x008e)49#define SMIAPP_REG_U16_ANALOGUE_GAIN_M1				CCI_REG16(0x0090)50#define SMIAPP_REG_U16_ANALOGUE_GAIN_C1				CCI_REG16(0x0092)51#define SMIAPP_REG_U8_DATA_FORMAT_MODEL_TYPE			CCI_REG8(0x00c0)52#define SMIAPP_REG_U8_DATA_FORMAT_MODEL_SUBTYPE			CCI_REG8(0x00c1)53#define SMIAPP_REG_U16_DATA_FORMAT_DESCRIPTOR(n)		CCI_REG16(0x00c2 + ((n) << 1))54#define SMIAPP_REG_U8_MODE_SELECT				CCI_REG8(0x0100)55#define SMIAPP_REG_U8_IMAGE_ORIENTATION				CCI_REG8(0x0101)56#define SMIAPP_REG_U8_SOFTWARE_RESET				CCI_REG8(0x0103)57#define SMIAPP_REG_U8_GROUPED_PARAMETER_HOLD			CCI_REG8(0x0104)58#define SMIAPP_REG_U8_MASK_CORRUPTED_FRAMES			CCI_REG8(0x0105)59#define SMIAPP_REG_U8_FAST_STANDBY_CTRL				CCI_REG8(0x0106)60#define SMIAPP_REG_U8_CCI_ADDRESS_CONTROL			CCI_REG8(0x0107)61#define SMIAPP_REG_U8_2ND_CCI_IF_CONTROL			CCI_REG8(0x0108)62#define SMIAPP_REG_U8_2ND_CCI_ADDRESS_CONTROL			CCI_REG8(0x0109)63#define SMIAPP_REG_U8_CSI_CHANNEL_IDENTIFIER			CCI_REG8(0x0110)64#define SMIAPP_REG_U8_CSI_SIGNALLING_MODE			CCI_REG8(0x0111)65#define SMIAPP_REG_U16_CSI_DATA_FORMAT				CCI_REG16(0x0112)66#define SMIAPP_REG_U8_CSI_LANE_MODE				CCI_REG8(0x0114)67#define SMIAPP_REG_U8_CSI2_10_TO_8_DT				CCI_REG8(0x0115)68#define SMIAPP_REG_U8_CSI2_10_TO_7_DT				CCI_REG8(0x0116)69#define SMIAPP_REG_U8_CSI2_10_TO_6_DT				CCI_REG8(0x0117)70#define SMIAPP_REG_U8_CSI2_12_TO_8_DT				CCI_REG8(0x0118)71#define SMIAPP_REG_U8_CSI2_12_TO_7_DT				CCI_REG8(0x0119)72#define SMIAPP_REG_U8_CSI2_12_TO_6_DT				CCI_REG8(0x011a)73#define SMIAPP_REG_U8_CSI2_14_TO_10_DT				CCI_REG8(0x011b)74#define SMIAPP_REG_U8_CSI2_14_TO_8_DT				CCI_REG8(0x011c)75#define SMIAPP_REG_U8_CSI2_16_TO_10_DT				CCI_REG8(0x011d)76#define SMIAPP_REG_U8_CSI2_16_TO_8_DT				CCI_REG8(0x011e)77#define SMIAPP_REG_U8_GAIN_MODE					CCI_REG8(0x0120)78#define SMIAPP_REG_U16_VANA_VOLTAGE				CCI_REG16(0x0130)79#define SMIAPP_REG_U16_VDIG_VOLTAGE				CCI_REG16(0x0132)80#define SMIAPP_REG_U16_VIO_VOLTAGE				CCI_REG16(0x0134)81#define SMIAPP_REG_U16_EXTCLK_FREQUENCY_MHZ			CCI_REG16(0x0136)82#define SMIAPP_REG_U8_TEMP_SENSOR_CONTROL			CCI_REG8(0x0138)83#define SMIAPP_REG_U8_TEMP_SENSOR_MODE				CCI_REG8(0x0139)84#define SMIAPP_REG_U8_TEMP_SENSOR_OUTPUT			CCI_REG8(0x013a)85#define SMIAPP_REG_U16_FINE_INTEGRATION_TIME			CCI_REG16(0x0200)86#define SMIAPP_REG_U16_COARSE_INTEGRATION_TIME			CCI_REG16(0x0202)87#define SMIAPP_REG_U16_ANALOGUE_GAIN_CODE_GLOBAL		CCI_REG16(0x0204)88#define SMIAPP_REG_U16_ANALOGUE_GAIN_CODE_GREENR		CCI_REG16(0x0206)89#define SMIAPP_REG_U16_ANALOGUE_GAIN_CODE_RED			CCI_REG16(0x0208)90#define SMIAPP_REG_U16_ANALOGUE_GAIN_CODE_BLUE			CCI_REG16(0x020a)91#define SMIAPP_REG_U16_ANALOGUE_GAIN_CODE_GREENB		CCI_REG16(0x020c)92#define SMIAPP_REG_U16_DIGITAL_GAIN_GREENR			CCI_REG16(0x020e)93#define SMIAPP_REG_U16_DIGITAL_GAIN_RED				CCI_REG16(0x0210)94#define SMIAPP_REG_U16_DIGITAL_GAIN_BLUE			CCI_REG16(0x0212)95#define SMIAPP_REG_U16_DIGITAL_GAIN_GREENB			CCI_REG16(0x0214)96#define SMIAPP_REG_U16_VT_PIX_CLK_DIV				CCI_REG16(0x0300)97#define SMIAPP_REG_U16_VT_SYS_CLK_DIV				CCI_REG16(0x0302)98#define SMIAPP_REG_U16_PRE_PLL_CLK_DIV				CCI_REG16(0x0304)99#define SMIAPP_REG_U16_PLL_MULTIPLIER				CCI_REG16(0x0306)100#define SMIAPP_REG_U16_OP_PIX_CLK_DIV				CCI_REG16(0x0308)101#define SMIAPP_REG_U16_OP_SYS_CLK_DIV				CCI_REG16(0x030a)102#define SMIAPP_REG_U16_FRAME_LENGTH_LINES			CCI_REG16(0x0340)103#define SMIAPP_REG_U16_LINE_LENGTH_PCK				CCI_REG16(0x0342)104#define SMIAPP_REG_U16_X_ADDR_START				CCI_REG16(0x0344)105#define SMIAPP_REG_U16_Y_ADDR_START				CCI_REG16(0x0346)106#define SMIAPP_REG_U16_X_ADDR_END				CCI_REG16(0x0348)107#define SMIAPP_REG_U16_Y_ADDR_END				CCI_REG16(0x034a)108#define SMIAPP_REG_U16_X_OUTPUT_SIZE				CCI_REG16(0x034c)109#define SMIAPP_REG_U16_Y_OUTPUT_SIZE				CCI_REG16(0x034e)110#define SMIAPP_REG_U16_X_EVEN_INC				CCI_REG16(0x0380)111#define SMIAPP_REG_U16_X_ODD_INC				CCI_REG16(0x0382)112#define SMIAPP_REG_U16_Y_EVEN_INC				CCI_REG16(0x0384)113#define SMIAPP_REG_U16_Y_ODD_INC				CCI_REG16(0x0386)114#define SMIAPP_REG_U16_SCALING_MODE				CCI_REG16(0x0400)115#define SMIAPP_REG_U16_SPATIAL_SAMPLING				CCI_REG16(0x0402)116#define SMIAPP_REG_U16_SCALE_M					CCI_REG16(0x0404)117#define SMIAPP_REG_U16_SCALE_N					CCI_REG16(0x0406)118#define SMIAPP_REG_U16_DIGITAL_CROP_X_OFFSET			CCI_REG16(0x0408)119#define SMIAPP_REG_U16_DIGITAL_CROP_Y_OFFSET			CCI_REG16(0x040a)120#define SMIAPP_REG_U16_DIGITAL_CROP_IMAGE_WIDTH			CCI_REG16(0x040c)121#define SMIAPP_REG_U16_DIGITAL_CROP_IMAGE_HEIGHT		CCI_REG16(0x040e)122#define SMIAPP_REG_U16_COMPRESSION_MODE				CCI_REG16(0x0500)123#define SMIAPP_REG_U16_TEST_PATTERN_MODE			CCI_REG16(0x0600)124#define SMIAPP_REG_U16_TEST_DATA_RED				CCI_REG16(0x0602)125#define SMIAPP_REG_U16_TEST_DATA_GREENR				CCI_REG16(0x0604)126#define SMIAPP_REG_U16_TEST_DATA_BLUE				CCI_REG16(0x0606)127#define SMIAPP_REG_U16_TEST_DATA_GREENB				CCI_REG16(0x0608)128#define SMIAPP_REG_U16_HORIZONTAL_CURSOR_WIDTH			CCI_REG16(0x060a)129#define SMIAPP_REG_U16_HORIZONTAL_CURSOR_POSITION		CCI_REG16(0x060c)130#define SMIAPP_REG_U16_VERTICAL_CURSOR_WIDTH			CCI_REG16(0x060e)131#define SMIAPP_REG_U16_VERTICAL_CURSOR_POSITION			CCI_REG16(0x0610)132#define SMIAPP_REG_U16_FIFO_WATER_MARK_PIXELS			CCI_REG16(0x0700)133#define SMIAPP_REG_U8_TCLK_POST					CCI_REG8(0x0800)134#define SMIAPP_REG_U8_THS_PREPARE				CCI_REG8(0x0801)135#define SMIAPP_REG_U8_THS_ZERO_MIN				CCI_REG8(0x0802)136#define SMIAPP_REG_U8_THS_TRAIL					CCI_REG8(0x0803)137#define SMIAPP_REG_U8_TCLK_TRAIL_MIN				CCI_REG8(0x0804)138#define SMIAPP_REG_U8_TCLK_PREPARE				CCI_REG8(0x0805)139#define SMIAPP_REG_U8_TCLK_ZERO					CCI_REG8(0x0806)140#define SMIAPP_REG_U8_TLPX					CCI_REG8(0x0807)141#define SMIAPP_REG_U8_DPHY_CTRL					CCI_REG8(0x0808)142#define SMIAPP_REG_U32_REQUESTED_LINK_BIT_RATE_MBPS		CCI_REG32(0x0820)143#define SMIAPP_REG_U8_BINNING_MODE				CCI_REG8(0x0900)144#define SMIAPP_REG_U8_BINNING_TYPE				CCI_REG8(0x0901)145#define SMIAPP_REG_U8_BINNING_WEIGHTING				CCI_REG8(0x0902)146#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_CTRL			CCI_REG8(0x0a00)147#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_STATUS			CCI_REG8(0x0a01)148#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_PAGE_SELECT		CCI_REG8(0x0a02)149#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_0			CCI_REG8(0x0a04)150#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_1			CCI_REG8(0x0a05)151#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_2			CCI_REG8(0x0a06)152#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_3			CCI_REG8(0x0a07)153#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_4			CCI_REG8(0x0a08)154#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_5			CCI_REG8(0x0a09)155#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_12		CCI_REG8(0x0a10)156#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_13		CCI_REG8(0x0a11)157#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_14		CCI_REG8(0x0a12)158#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_15		CCI_REG8(0x0a13)159#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_16		CCI_REG8(0x0a14)160#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_17		CCI_REG8(0x0a15)161#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_18		CCI_REG8(0x0a16)162#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_19		CCI_REG8(0x0a17)163#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_20		CCI_REG8(0x0a18)164#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_21		CCI_REG8(0x0a19)165#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_22		CCI_REG8(0x0a1a)166#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_23		CCI_REG8(0x0a1b)167#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_24		CCI_REG8(0x0a1c)168#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_25		CCI_REG8(0x0a1d)169#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_26		CCI_REG8(0x0a1e)170#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_27		CCI_REG8(0x0a1f)171#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_28		CCI_REG8(0x0a20)172#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_29		CCI_REG8(0x0a21)173#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_30		CCI_REG8(0x0a22)174#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_31		CCI_REG8(0x0a23)175#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_32		CCI_REG8(0x0a24)176#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_33		CCI_REG8(0x0a25)177#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_34		CCI_REG8(0x0a26)178#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_35		CCI_REG8(0x0a27)179#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_36		CCI_REG8(0x0a28)180#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_37		CCI_REG8(0x0a29)181#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_38		CCI_REG8(0x0a2a)182#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_39		CCI_REG8(0x0a2b)183#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_40		CCI_REG8(0x0a2c)184#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_41		CCI_REG8(0x0a2d)185#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_42		CCI_REG8(0x0a2e)186#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_43		CCI_REG8(0x0a2f)187#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_44		CCI_REG8(0x0a30)188#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_45		CCI_REG8(0x0a31)189#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_46		CCI_REG8(0x0a32)190#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_47		CCI_REG8(0x0a33)191#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_48		CCI_REG8(0x0a34)192#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_49		CCI_REG8(0x0a35)193#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_50		CCI_REG8(0x0a36)194#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_51		CCI_REG8(0x0a37)195#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_52		CCI_REG8(0x0a38)196#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_53		CCI_REG8(0x0a39)197#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_54		CCI_REG8(0x0a3a)198#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_55		CCI_REG8(0x0a3b)199#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_56		CCI_REG8(0x0a3c)200#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_57		CCI_REG8(0x0a3d)201#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_58		CCI_REG8(0x0a3e)202#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_59		CCI_REG8(0x0a3f)203#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_60		CCI_REG8(0x0a40)204#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_61		CCI_REG8(0x0a41)205#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_62		CCI_REG8(0x0a42)206#define SMIAPP_REG_U8_DATA_TRANSFER_IF_1_DATA_63		CCI_REG8(0x0a43)207#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_CTRL			CCI_REG8(0x0a44)208#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_STATUS			CCI_REG8(0x0a45)209#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_PAGE_SELECT		CCI_REG8(0x0a46)210#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_0			CCI_REG8(0x0a48)211#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_1			CCI_REG8(0x0a49)212#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_2			CCI_REG8(0x0a4a)213#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_3			CCI_REG8(0x0a4b)214#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_4			CCI_REG8(0x0a4c)215#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_5			CCI_REG8(0x0a4d)216#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_6			CCI_REG8(0x0a4e)217#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_7			CCI_REG8(0x0a4f)218#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_8			CCI_REG8(0x0a50)219#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_9			CCI_REG8(0x0a51)220#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_10		CCI_REG8(0x0a52)221#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_11		CCI_REG8(0x0a53)222#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_12		CCI_REG8(0x0a54)223#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_13		CCI_REG8(0x0a55)224#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_14		CCI_REG8(0x0a56)225#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_15		CCI_REG8(0x0a57)226#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_16		CCI_REG8(0x0a58)227#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_17		CCI_REG8(0x0a59)228#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_18		CCI_REG8(0x0a5a)229#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_19		CCI_REG8(0x0a5b)230#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_20		CCI_REG8(0x0a5c)231#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_21		CCI_REG8(0x0a5d)232#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_22		CCI_REG8(0x0a5e)233#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_23		CCI_REG8(0x0a5f)234#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_24		CCI_REG8(0x0a60)235#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_25		CCI_REG8(0x0a61)236#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_26		CCI_REG8(0x0a62)237#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_27		CCI_REG8(0x0a63)238#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_28		CCI_REG8(0x0a64)239#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_29		CCI_REG8(0x0a65)240#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_30		CCI_REG8(0x0a66)241#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_31		CCI_REG8(0x0a67)242#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_32		CCI_REG8(0x0a68)243#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_33		CCI_REG8(0x0a69)244#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_34		CCI_REG8(0x0a6a)245#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_35		CCI_REG8(0x0a6b)246#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_36		CCI_REG8(0x0a6c)247#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_37		CCI_REG8(0x0a6d)248#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_38		CCI_REG8(0x0a6e)249#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_39		CCI_REG8(0x0a6f)250#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_40		CCI_REG8(0x0a70)251#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_41		CCI_REG8(0x0a71)252#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_42		CCI_REG8(0x0a72)253#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_43		CCI_REG8(0x0a73)254#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_44		CCI_REG8(0x0a74)255#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_45		CCI_REG8(0x0a75)256#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_46		CCI_REG8(0x0a76)257#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_47		CCI_REG8(0x0a77)258#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_48		CCI_REG8(0x0a78)259#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_49		CCI_REG8(0x0a79)260#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_50		CCI_REG8(0x0a7a)261#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_51		CCI_REG8(0x0a7b)262#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_52		CCI_REG8(0x0a7c)263#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_53		CCI_REG8(0x0a7d)264#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_54		CCI_REG8(0x0a7e)265#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_55		CCI_REG8(0x0a7f)266#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_56		CCI_REG8(0x0a80)267#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_57		CCI_REG8(0x0a81)268#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_58		CCI_REG8(0x0a82)269#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_59		CCI_REG8(0x0a83)270#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_60		CCI_REG8(0x0a84)271#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_61		CCI_REG8(0x0a85)272#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_62		CCI_REG8(0x0a86)273#define SMIAPP_REG_U8_DATA_TRANSFER_IF_2_DATA_63		CCI_REG8(0x0a87)274#define SMIAPP_REG_U8_SHADING_CORRECTION_ENABLE			CCI_REG8(0x0b00)275#define SMIAPP_REG_U8_LUMINANCE_CORRECTION_LEVEL		CCI_REG8(0x0b01)276#define SMIAPP_REG_U8_GREEN_IMBALANCE_FILTER_ENABLE		CCI_REG8(0x0b02)277#define SMIAPP_REG_U8_GREEN_IMBALANCE_FILTER_WEIGHT		CCI_REG8(0x0b03)278#define SMIAPP_REG_U8_BLACK_LEVEL_CORRECTION_ENABLE		CCI_REG8(0x0b04)279#define SMIAPP_REG_U8_MAPPED_COUPLET_CORRECT_ENABLE		CCI_REG8(0x0b05)280#define SMIAPP_REG_U8_SINGLE_DEFECT_CORRECT_ENABLE		CCI_REG8(0x0b06)281#define SMIAPP_REG_U8_SINGLE_DEFECT_CORRECT_WEIGHT		CCI_REG8(0x0b07)282#define SMIAPP_REG_U8_DYNAMIC_COUPLET_CORRECT_ENABLE		CCI_REG8(0x0b08)283#define SMIAPP_REG_U8_DYNAMIC_COUPLET_CORRECT_WEIGHT		CCI_REG8(0x0b09)284#define SMIAPP_REG_U8_COMBINED_DEFECT_CORRECT_ENABLE		CCI_REG8(0x0b0a)285#define SMIAPP_REG_U8_COMBINED_DEFECT_CORRECT_WEIGHT		CCI_REG8(0x0b0b)286#define SMIAPP_REG_U8_MODULE_SPECIFIC_CORRECTION_ENABLE		CCI_REG8(0x0b0c)287#define SMIAPP_REG_U8_MODULE_SPECIFIC_CORRECTION_WEIGHT		CCI_REG8(0x0b0d)288#define SMIAPP_REG_U8_MAPPED_LINE_DEFECT_CORRECT_ENABLE		CCI_REG8(0x0b0e)289#define SMIAPP_REG_U8_MAPPED_LINE_DEFECT_CORRECT_ADJUST		CCI_REG8(0x0b0f)290#define SMIAPP_REG_U8_MAPPED_COUPLET_CORRECT_ADJUST		CCI_REG8(0x0b10)291#define SMIAPP_REG_U8_MAPPED_TRIPLET_DEFECT_CORRECT_ENABLE	CCI_REG8(0x0b11)292#define SMIAPP_REG_U8_MAPPED_TRIPLET_DEFECT_CORRECT_ADJUST	CCI_REG8(0x0b12)293#define SMIAPP_REG_U8_DYNAMIC_TRIPLET_DEFECT_CORRECT_ENABLE	CCI_REG8(0x0b13)294#define SMIAPP_REG_U8_DYNAMIC_TRIPLET_DEFECT_CORRECT_ADJUST	CCI_REG8(0x0b14)295#define SMIAPP_REG_U8_DYNAMIC_LINE_DEFECT_CORRECT_ENABLE	CCI_REG8(0x0b15)296#define SMIAPP_REG_U8_DYNAMIC_LINE_DEFECT_CORRECT_ADJUST	CCI_REG8(0x0b16)297#define SMIAPP_REG_U8_EDOF_MODE					CCI_REG8(0x0b80)298#define SMIAPP_REG_U8_SHARPNESS					CCI_REG8(0x0b83)299#define SMIAPP_REG_U8_DENOISING					CCI_REG8(0x0b84)300#define SMIAPP_REG_U8_MODULE_SPECIFIC				CCI_REG8(0x0b85)301#define SMIAPP_REG_U16_DEPTH_OF_FIELD				CCI_REG16(0x0b86)302#define SMIAPP_REG_U16_FOCUS_DISTANCE				CCI_REG16(0x0b88)303#define SMIAPP_REG_U8_ESTIMATION_MODE_CTRL			CCI_REG8(0x0b8a)304#define SMIAPP_REG_U16_COLOUR_TEMPERATURE			CCI_REG16(0x0b8c)305#define SMIAPP_REG_U16_ABSOLUTE_GAIN_GREENR			CCI_REG16(0x0b8e)306#define SMIAPP_REG_U16_ABSOLUTE_GAIN_RED			CCI_REG16(0x0b90)307#define SMIAPP_REG_U16_ABSOLUTE_GAIN_BLUE			CCI_REG16(0x0b92)308#define SMIAPP_REG_U16_ABSOLUTE_GAIN_GREENB			CCI_REG16(0x0b94)309#define SMIAPP_REG_U8_ESTIMATION_ZONE_MODE			CCI_REG8(0x0bc0)310#define SMIAPP_REG_U16_FIXED_ZONE_WEIGHTING			CCI_REG16(0x0bc2)311#define SMIAPP_REG_U16_CUSTOM_ZONE_X_START			CCI_REG16(0x0bc4)312#define SMIAPP_REG_U16_CUSTOM_ZONE_Y_START			CCI_REG16(0x0bc6)313#define SMIAPP_REG_U16_CUSTOM_ZONE_WIDTH			CCI_REG16(0x0bc8)314#define SMIAPP_REG_U16_CUSTOM_ZONE_HEIGHT			CCI_REG16(0x0bca)315#define SMIAPP_REG_U8_GLOBAL_RESET_CTRL1			CCI_REG8(0x0c00)316#define SMIAPP_REG_U8_GLOBAL_RESET_CTRL2			CCI_REG8(0x0c01)317#define SMIAPP_REG_U8_GLOBAL_RESET_MODE_CONFIG_1		CCI_REG8(0x0c02)318#define SMIAPP_REG_U8_GLOBAL_RESET_MODE_CONFIG_2		CCI_REG8(0x0c03)319#define SMIAPP_REG_U16_TRDY_CTRL				CCI_REG16(0x0c04)320#define SMIAPP_REG_U16_TRDOUT_CTRL				CCI_REG16(0x0c06)321#define SMIAPP_REG_U16_TSHUTTER_STROBE_DELAY_CTRL		CCI_REG16(0x0c08)322#define SMIAPP_REG_U16_TSHUTTER_STROBE_WIDTH_CTRL		CCI_REG16(0x0c0a)323#define SMIAPP_REG_U16_TFLASH_STROBE_DELAY_CTRL			CCI_REG16(0x0c0c)324#define SMIAPP_REG_U16_TFLASH_STROBE_WIDTH_HIGH_CTRL		CCI_REG16(0x0c0e)325#define SMIAPP_REG_U16_TGRST_INTERVAL_CTRL			CCI_REG16(0x0c10)326#define SMIAPP_REG_U8_FLASH_STROBE_ADJUSTMENT			CCI_REG8(0x0c12)327#define SMIAPP_REG_U16_FLASH_STROBE_START_POINT			CCI_REG16(0x0c14)328#define SMIAPP_REG_U16_TFLASH_STROBE_DELAY_RS_CTRL		CCI_REG16(0x0c16)329#define SMIAPP_REG_U16_TFLASH_STROBE_WIDTH_HIGH_RS_CTRL		CCI_REG16(0x0c18)330#define SMIAPP_REG_U8_FLASH_MODE_RS				CCI_REG8(0x0c1a)331#define SMIAPP_REG_U8_FLASH_TRIGGER_RS				CCI_REG8(0x0c1b)332#define SMIAPP_REG_U8_FLASH_STATUS				CCI_REG8(0x0c1c)333#define SMIAPP_REG_U8_SA_STROBE_MODE				CCI_REG8(0x0c1d)334#define SMIAPP_REG_U16_SA_STROBE_START_POINT			CCI_REG16(0x0c1e)335#define SMIAPP_REG_U16_TSA_STROBE_DELAY_CTRL			CCI_REG16(0x0c20)336#define SMIAPP_REG_U16_TSA_STROBE_WIDTH_CTRL			CCI_REG16(0x0c22)337#define SMIAPP_REG_U8_SA_STROBE_TRIGGER				CCI_REG8(0x0c24)338#define SMIAPP_REG_U8_SPECIAL_ACTUATOR_STATUS			CCI_REG8(0x0c25)339#define SMIAPP_REG_U16_TFLASH_STROBE_WIDTH2_HIGH_RS_CTRL	CCI_REG16(0x0c26)340#define SMIAPP_REG_U16_TFLASH_STROBE_WIDTH_LOW_RS_CTRL		CCI_REG16(0x0c28)341#define SMIAPP_REG_U8_TFLASH_STROBE_COUNT_RS_CTRL		CCI_REG8(0x0c2a)342#define SMIAPP_REG_U8_TFLASH_STROBE_COUNT_CTRL			CCI_REG8(0x0c2b)343#define SMIAPP_REG_U16_TFLASH_STROBE_WIDTH2_HIGH_CTRL		CCI_REG16(0x0c2c)344#define SMIAPP_REG_U16_TFLASH_STROBE_WIDTH_LOW_CTRL		CCI_REG16(0x0c2e)345#define SMIAPP_REG_U8_LOW_LEVEL_CTRL				CCI_REG8(0x0c80)346#define SMIAPP_REG_U16_MAIN_TRIGGER_REF_POINT			CCI_REG16(0x0c82)347#define SMIAPP_REG_U16_MAIN_TRIGGER_T3				CCI_REG16(0x0c84)348#define SMIAPP_REG_U8_MAIN_TRIGGER_COUNT			CCI_REG8(0x0c86)349#define SMIAPP_REG_U16_PHASE1_TRIGGER_T3			CCI_REG16(0x0c88)350#define SMIAPP_REG_U8_PHASE1_TRIGGER_COUNT			CCI_REG8(0x0c8a)351#define SMIAPP_REG_U16_PHASE2_TRIGGER_T3			CCI_REG16(0x0c8c)352#define SMIAPP_REG_U8_PHASE2_TRIGGER_COUNT			CCI_REG8(0x0c8e)353#define SMIAPP_REG_U8_MECH_SHUTTER_CTRL				CCI_REG8(0x0d00)354#define SMIAPP_REG_U8_OPERATION_MODE				CCI_REG8(0x0d01)355#define SMIAPP_REG_U8_ACT_STATE1				CCI_REG8(0x0d02)356#define SMIAPP_REG_U8_ACT_STATE2				CCI_REG8(0x0d03)357#define SMIAPP_REG_U16_FOCUS_CHANGE				CCI_REG16(0x0d80)358#define SMIAPP_REG_U16_FOCUS_CHANGE_CONTROL			CCI_REG16(0x0d82)359#define SMIAPP_REG_U16_FOCUS_CHANGE_NUMBER_PHASE1		CCI_REG16(0x0d84)360#define SMIAPP_REG_U16_FOCUS_CHANGE_NUMBER_PHASE2		CCI_REG16(0x0d86)361#define SMIAPP_REG_U8_STROBE_COUNT_PHASE1			CCI_REG8(0x0d88)362#define SMIAPP_REG_U8_STROBE_COUNT_PHASE2			CCI_REG8(0x0d89)363#define SMIAPP_REG_U8_POSITION					CCI_REG8(0x0d8a)364#define SMIAPP_REG_U8_BRACKETING_LUT_CONTROL			CCI_REG8(0x0e00)365#define SMIAPP_REG_U8_BRACKETING_LUT_MODE			CCI_REG8(0x0e01)366#define SMIAPP_REG_U8_BRACKETING_LUT_ENTRY_CONTROL		CCI_REG8(0x0e02)367#define SMIAPP_REG_U8_LUT_PARAMETERS_START			CCI_REG8(0x0e10)368#define SMIAPP_REG_U8_LUT_PARAMETERS_END			CCI_REG8(0x0eff)369#define SMIAPP_REG_U16_INTEGRATION_TIME_CAPABILITY		CCI_REG16(0x1000)370#define SMIAPP_REG_U16_COARSE_INTEGRATION_TIME_MIN		CCI_REG16(0x1004)371#define SMIAPP_REG_U16_COARSE_INTEGRATION_TIME_MAX_MARGIN	CCI_REG16(0x1006)372#define SMIAPP_REG_U16_FINE_INTEGRATION_TIME_MIN		CCI_REG16(0x1008)373#define SMIAPP_REG_U16_FINE_INTEGRATION_TIME_MAX_MARGIN		CCI_REG16(0x100a)374#define SMIAPP_REG_U16_DIGITAL_GAIN_CAPABILITY			CCI_REG16(0x1080)375#define SMIAPP_REG_U16_DIGITAL_GAIN_MIN				CCI_REG16(0x1084)376#define SMIAPP_REG_U16_DIGITAL_GAIN_MAX				CCI_REG16(0x1086)377#define SMIAPP_REG_U16_DIGITAL_GAIN_STEP_SIZE			CCI_REG16(0x1088)378#define SMIAPP_REG_F32_MIN_EXT_CLK_FREQ_HZ			(CCI_REG32(0x1100) | CCS_FL_FLOAT_IREAL)379#define SMIAPP_REG_F32_MAX_EXT_CLK_FREQ_HZ			(CCI_REG32(0x1104) | CCS_FL_FLOAT_IREAL)380#define SMIAPP_REG_U16_MIN_PRE_PLL_CLK_DIV			CCI_REG16(0x1108)381#define SMIAPP_REG_U16_MAX_PRE_PLL_CLK_DIV			CCI_REG16(0x110a)382#define SMIAPP_REG_F32_MIN_PLL_IP_FREQ_HZ			(CCI_REG32(0x110c) | CCS_FL_FLOAT_IREAL)383#define SMIAPP_REG_F32_MAX_PLL_IP_FREQ_HZ			(CCI_REG32(0x1110) | CCS_FL_FLOAT_IREAL)384#define SMIAPP_REG_U16_MIN_PLL_MULTIPLIER			CCI_REG16(0x1114)385#define SMIAPP_REG_U16_MAX_PLL_MULTIPLIER			CCI_REG16(0x1116)386#define SMIAPP_REG_F32_MIN_PLL_OP_FREQ_HZ			(CCI_REG32(0x1118) | CCS_FL_FLOAT_IREAL)387#define SMIAPP_REG_F32_MAX_PLL_OP_FREQ_HZ			(CCI_REG32(0x111c) | CCS_FL_FLOAT_IREAL)388#define SMIAPP_REG_U16_MIN_VT_SYS_CLK_DIV			CCI_REG16(0x1120)389#define SMIAPP_REG_U16_MAX_VT_SYS_CLK_DIV			CCI_REG16(0x1122)390#define SMIAPP_REG_F32_MIN_VT_SYS_CLK_FREQ_HZ			(CCI_REG32(0x1124) | CCS_FL_FLOAT_IREAL)391#define SMIAPP_REG_F32_MAX_VT_SYS_CLK_FREQ_HZ			(CCI_REG32(0x1128) | CCS_FL_FLOAT_IREAL)392#define SMIAPP_REG_F32_MIN_VT_PIX_CLK_FREQ_HZ			(CCI_REG32(0x112c) | CCS_FL_FLOAT_IREAL)393#define SMIAPP_REG_F32_MAX_VT_PIX_CLK_FREQ_HZ			(CCI_REG32(0x1130) | CCS_FL_FLOAT_IREAL)394#define SMIAPP_REG_U16_MIN_VT_PIX_CLK_DIV			CCI_REG16(0x1134)395#define SMIAPP_REG_U16_MAX_VT_PIX_CLK_DIV			CCI_REG16(0x1136)396#define SMIAPP_REG_U16_MIN_FRAME_LENGTH_LINES			CCI_REG16(0x1140)397#define SMIAPP_REG_U16_MAX_FRAME_LENGTH_LINES			CCI_REG16(0x1142)398#define SMIAPP_REG_U16_MIN_LINE_LENGTH_PCK			CCI_REG16(0x1144)399#define SMIAPP_REG_U16_MAX_LINE_LENGTH_PCK			CCI_REG16(0x1146)400#define SMIAPP_REG_U16_MIN_LINE_BLANKING_PCK			CCI_REG16(0x1148)401#define SMIAPP_REG_U16_MIN_FRAME_BLANKING_LINES			CCI_REG16(0x114a)402#define SMIAPP_REG_U8_MIN_LINE_LENGTH_PCK_STEP_SIZE		CCI_REG8(0x114c)403#define SMIAPP_REG_U16_MIN_OP_SYS_CLK_DIV			CCI_REG16(0x1160)404#define SMIAPP_REG_U16_MAX_OP_SYS_CLK_DIV			CCI_REG16(0x1162)405#define SMIAPP_REG_F32_MIN_OP_SYS_CLK_FREQ_HZ			(CCI_REG32(0x1164) | CCS_FL_FLOAT_IREAL)406#define SMIAPP_REG_F32_MAX_OP_SYS_CLK_FREQ_HZ			(CCI_REG32(0x1168) | CCS_FL_FLOAT_IREAL)407#define SMIAPP_REG_U16_MIN_OP_PIX_CLK_DIV			CCI_REG16(0x116c)408#define SMIAPP_REG_U16_MAX_OP_PIX_CLK_DIV			CCI_REG16(0x116e)409#define SMIAPP_REG_F32_MIN_OP_PIX_CLK_FREQ_HZ			(CCI_REG32(0x1170) | CCS_FL_FLOAT_IREAL)410#define SMIAPP_REG_F32_MAX_OP_PIX_CLK_FREQ_HZ			(CCI_REG32(0x1174) | CCS_FL_FLOAT_IREAL)411#define SMIAPP_REG_U16_X_ADDR_MIN				CCI_REG16(0x1180)412#define SMIAPP_REG_U16_Y_ADDR_MIN				CCI_REG16(0x1182)413#define SMIAPP_REG_U16_X_ADDR_MAX				CCI_REG16(0x1184)414#define SMIAPP_REG_U16_Y_ADDR_MAX				CCI_REG16(0x1186)415#define SMIAPP_REG_U16_MIN_X_OUTPUT_SIZE			CCI_REG16(0x1188)416#define SMIAPP_REG_U16_MIN_Y_OUTPUT_SIZE			CCI_REG16(0x118a)417#define SMIAPP_REG_U16_MAX_X_OUTPUT_SIZE			CCI_REG16(0x118c)418#define SMIAPP_REG_U16_MAX_Y_OUTPUT_SIZE			CCI_REG16(0x118e)419#define SMIAPP_REG_U16_MIN_EVEN_INC				CCI_REG16(0x11c0)420#define SMIAPP_REG_U16_MAX_EVEN_INC				CCI_REG16(0x11c2)421#define SMIAPP_REG_U16_MIN_ODD_INC				CCI_REG16(0x11c4)422#define SMIAPP_REG_U16_MAX_ODD_INC				CCI_REG16(0x11c6)423#define SMIAPP_REG_U16_SCALING_CAPABILITY			CCI_REG16(0x1200)424#define SMIAPP_REG_U16_SCALER_M_MIN				CCI_REG16(0x1204)425#define SMIAPP_REG_U16_SCALER_M_MAX				CCI_REG16(0x1206)426#define SMIAPP_REG_U16_SCALER_N_MIN				CCI_REG16(0x1208)427#define SMIAPP_REG_U16_SCALER_N_MAX				CCI_REG16(0x120a)428#define SMIAPP_REG_U16_SPATIAL_SAMPLING_CAPABILITY		CCI_REG16(0x120c)429#define SMIAPP_REG_U8_DIGITAL_CROP_CAPABILITY			CCI_REG8(0x120e)430#define SMIAPP_REG_U16_COMPRESSION_CAPABILITY			CCI_REG16(0x1300)431#define SMIAPP_REG_U16_MATRIX_ELEMENT_REDINRED			CCI_REG16(0x1400)432#define SMIAPP_REG_U16_MATRIX_ELEMENT_GREENINRED		CCI_REG16(0x1402)433#define SMIAPP_REG_U16_MATRIX_ELEMENT_BLUEINRED			CCI_REG16(0x1404)434#define SMIAPP_REG_U16_MATRIX_ELEMENT_REDINGREEN		CCI_REG16(0x1406)435#define SMIAPP_REG_U16_MATRIX_ELEMENT_GREENINGREEN		CCI_REG16(0x1408)436#define SMIAPP_REG_U16_MATRIX_ELEMENT_BLUEINGREEN		CCI_REG16(0x140a)437#define SMIAPP_REG_U16_MATRIX_ELEMENT_REDINBLUE			CCI_REG16(0x140c)438#define SMIAPP_REG_U16_MATRIX_ELEMENT_GREENINBLUE		CCI_REG16(0x140e)439#define SMIAPP_REG_U16_MATRIX_ELEMENT_BLUEINBLUE		CCI_REG16(0x1410)440#define SMIAPP_REG_U16_FIFO_SIZE_PIXELS				CCI_REG16(0x1500)441#define SMIAPP_REG_U8_FIFO_SUPPORT_CAPABILITY			CCI_REG8(0x1502)442#define SMIAPP_REG_U8_DPHY_CTRL_CAPABILITY			CCI_REG8(0x1600)443#define SMIAPP_REG_U8_CSI_LANE_MODE_CAPABILITY			CCI_REG8(0x1601)444#define SMIAPP_REG_U8_CSI_SIGNALLING_MODE_CAPABILITY		CCI_REG8(0x1602)445#define SMIAPP_REG_U8_FAST_STANDBY_CAPABILITY			CCI_REG8(0x1603)446#define SMIAPP_REG_U8_CCI_ADDRESS_CONTROL_CAPABILITY		CCI_REG8(0x1604)447#define SMIAPP_REG_U32_MAX_PER_LANE_BITRATE_1_LANE_MODE_MBPS	CCI_REG32(0x1608)448#define SMIAPP_REG_U32_MAX_PER_LANE_BITRATE_2_LANE_MODE_MBPS	CCI_REG32(0x160c)449#define SMIAPP_REG_U32_MAX_PER_LANE_BITRATE_3_LANE_MODE_MBPS	CCI_REG32(0x1610)450#define SMIAPP_REG_U32_MAX_PER_LANE_BITRATE_4_LANE_MODE_MBPS	CCI_REG32(0x1614)451#define SMIAPP_REG_U8_TEMP_SENSOR_CAPABILITY			CCI_REG8(0x1618)452#define SMIAPP_REG_U16_MIN_FRAME_LENGTH_LINES_BIN		CCI_REG16(0x1700)453#define SMIAPP_REG_U16_MAX_FRAME_LENGTH_LINES_BIN		CCI_REG16(0x1702)454#define SMIAPP_REG_U16_MIN_LINE_LENGTH_PCK_BIN			CCI_REG16(0x1704)455#define SMIAPP_REG_U16_MAX_LINE_LENGTH_PCK_BIN			CCI_REG16(0x1706)456#define SMIAPP_REG_U16_MIN_LINE_BLANKING_PCK_BIN		CCI_REG16(0x1708)457#define SMIAPP_REG_U16_FINE_INTEGRATION_TIME_MIN_BIN		CCI_REG16(0x170a)458#define SMIAPP_REG_U16_FINE_INTEGRATION_TIME_MAX_MARGIN_BIN	CCI_REG16(0x170c)459#define SMIAPP_REG_U8_BINNING_CAPABILITY			CCI_REG8(0x1710)460#define SMIAPP_REG_U8_BINNING_WEIGHTING_CAPABILITY		CCI_REG8(0x1711)461#define SMIAPP_REG_U8_BINNING_SUBTYPES				CCI_REG8(0x1712)462#define SMIAPP_REG_U8_BINNING_TYPE_n(n)				CCI_REG8(0x1713 + (n)) /* 1 <= n <= 237 */463#define SMIAPP_REG_U8_DATA_TRANSFER_IF_CAPABILITY		CCI_REG8(0x1800)464#define SMIAPP_REG_U8_SHADING_CORRECTION_CAPABILITY		CCI_REG8(0x1900)465#define SMIAPP_REG_U8_GREEN_IMBALANCE_CAPABILITY		CCI_REG8(0x1901)466#define SMIAPP_REG_U8_BLACK_LEVEL_CAPABILITY			CCI_REG8(0x1902)467#define SMIAPP_REG_U8_MODULE_SPECIFIC_CORRECTION_CAPABILITY	CCI_REG8(0x1903)468#define SMIAPP_REG_U16_DEFECT_CORRECTION_CAPABILITY		CCI_REG16(0x1904)469#define SMIAPP_REG_U16_DEFECT_CORRECTION_CAPABILITY_2		CCI_REG16(0x1906)470#define SMIAPP_REG_U8_EDOF_CAPABILITY				CCI_REG8(0x1980)471#define SMIAPP_REG_U8_ESTIMATION_FRAMES				CCI_REG8(0x1981)472#define SMIAPP_REG_U8_SUPPORTS_SHARPNESS_ADJ			CCI_REG8(0x1982)473#define SMIAPP_REG_U8_SUPPORTS_DENOISING_ADJ			CCI_REG8(0x1983)474#define SMIAPP_REG_U8_SUPPORTS_MODULE_SPECIFIC_ADJ		CCI_REG8(0x1984)475#define SMIAPP_REG_U8_SUPPORTS_DEPTH_OF_FIELD_ADJ		CCI_REG8(0x1985)476#define SMIAPP_REG_U8_SUPPORTS_FOCUS_DISTANCE_ADJ		CCI_REG8(0x1986)477#define SMIAPP_REG_U8_COLOUR_FEEDBACK_CAPABILITY		CCI_REG8(0x1987)478#define SMIAPP_REG_U8_EDOF_SUPPORT_AB_NXM			CCI_REG8(0x1988)479#define SMIAPP_REG_U8_ESTIMATION_MODE_CAPABILITY		CCI_REG8(0x19c0)480#define SMIAPP_REG_U8_ESTIMATION_ZONE_CAPABILITY		CCI_REG8(0x19c1)481#define SMIAPP_REG_U16_EST_DEPTH_OF_FIELD			CCI_REG16(0x19c2)482#define SMIAPP_REG_U16_EST_FOCUS_DISTANCE			CCI_REG16(0x19c4)483#define SMIAPP_REG_U16_CAPABILITY_TRDY_MIN			CCI_REG16(0x1a00)484#define SMIAPP_REG_U8_FLASH_MODE_CAPABILITY			CCI_REG8(0x1a02)485#define SMIAPP_REG_U16_MECH_SHUT_AND_ACT_START_ADDR		CCI_REG16(0x1b02)486#define SMIAPP_REG_U8_ACTUATOR_CAPABILITY			CCI_REG8(0x1b04)487#define SMIAPP_REG_U16_ACTUATOR_TYPE				CCI_REG16(0x1b40)488#define SMIAPP_REG_U8_AF_DEVICE_ADDRESS				CCI_REG8(0x1b42)489#define SMIAPP_REG_U16_FOCUS_CHANGE_ADDRESS			CCI_REG16(0x1b44)490#define SMIAPP_REG_U8_BRACKETING_LUT_CAPABILITY_1		CCI_REG8(0x1c00)491#define SMIAPP_REG_U8_BRACKETING_LUT_CAPABILITY_2		CCI_REG8(0x1c01)492#define SMIAPP_REG_U8_BRACKETING_LUT_SIZE			CCI_REG8(0x1c02)493 494/* Register bit definitions */495#define SMIAPP_IMAGE_ORIENTATION_HFLIP			BIT(0)496#define SMIAPP_IMAGE_ORIENTATION_VFLIP			BIT(1)497 498#define SMIAPP_DATA_TRANSFER_IF_1_CTRL_EN		BIT(0)499#define SMIAPP_DATA_TRANSFER_IF_1_CTRL_WR_EN		BIT(1)500#define SMIAPP_DATA_TRANSFER_IF_1_CTRL_ERR_CLEAR	BIT(2)501#define SMIAPP_DATA_TRANSFER_IF_1_STATUS_RD_READY	BIT(0)502#define SMIAPP_DATA_TRANSFER_IF_1_STATUS_WR_READY	BIT(1)503#define SMIAPP_DATA_TRANSFER_IF_1_STATUS_EDATA		BIT(2)504#define SMIAPP_DATA_TRANSFER_IF_1_STATUS_EUSAGE		BIT(3)505 506#define SMIAPP_DATA_TRANSFER_IF_CAPABILITY_SUPPORTED	BIT(0)507#define SMIAPP_DATA_TRANSFER_IF_CAPABILITY_POLL		BIT(2)508 509#define SMIAPP_SOFTWARE_RESET				BIT(0)510 511#define SMIAPP_FLASH_MODE_CAPABILITY_SINGLE_STROBE	BIT(0)512#define SMIAPP_FLASH_MODE_CAPABILITY_MULTIPLE_STROBE	BIT(1)513 514#define SMIAPP_CSI_SIGNALLING_MODE_CCP2_DATA_CLOCK	0515#define SMIAPP_CSI_SIGNALLING_MODE_CCP2_DATA_STROBE	1516#define SMIAPP_CSI_SIGNALLING_MODE_CSI2			2517 518#define SMIAPP_DPHY_CTRL_AUTOMATIC			0519/* DPHY control based on REQUESTED_LINK_BIT_RATE_MBPS */520#define SMIAPP_DPHY_CTRL_UI				1521#define SMIAPP_DPHY_CTRL_REGISTER			2522 523#define SMIAPP_COMPRESSION_MODE_SIMPLE_PREDICTOR	1524#define SMIAPP_COMPRESSION_MODE_ADVANCED_PREDICTOR	2525 526#define SMIAPP_MODE_SELECT_SOFTWARE_STANDBY		0527#define SMIAPP_MODE_SELECT_STREAMING			1528 529#define SMIAPP_SCALING_MODE_NONE			0530#define SMIAPP_SCALING_MODE_HORIZONTAL			1531#define SMIAPP_SCALING_MODE_BOTH			2532 533#define SMIAPP_SCALING_CAPABILITY_NONE			0534#define SMIAPP_SCALING_CAPABILITY_HORIZONTAL		1535#define SMIAPP_SCALING_CAPABILITY_BOTH			2 /* horizontal/both */536 537/* digital crop right before scaler */538#define SMIAPP_DIGITAL_CROP_CAPABILITY_NONE		0539#define SMIAPP_DIGITAL_CROP_CAPABILITY_INPUT_CROP	1540 541#define SMIAPP_DIGITAL_GAIN_CAPABILITY_PER_CHANNEL	1542 543#define SMIAPP_BINNING_CAPABILITY_NO			0544#define SMIAPP_BINNING_CAPABILITY_YES			1545 546/* Maximum number of binning subtypes */547#define SMIAPP_BINNING_SUBTYPES				253548 549#define SMIAPP_PIXEL_ORDER_GRBG				0550#define SMIAPP_PIXEL_ORDER_RGGB				1551#define SMIAPP_PIXEL_ORDER_BGGR				2552#define SMIAPP_PIXEL_ORDER_GBRG				3553 554#define SMIAPP_DATA_FORMAT_MODEL_TYPE_NORMAL		1555#define SMIAPP_DATA_FORMAT_MODEL_TYPE_EXTENDED		2556#define SMIAPP_DATA_FORMAT_MODEL_TYPE_NORMAL_N		8557#define SMIAPP_DATA_FORMAT_MODEL_TYPE_EXTENDED_N	16558 559#define SMIAPP_FRAME_FORMAT_MODEL_TYPE_2BYTE		0x01560#define SMIAPP_FRAME_FORMAT_MODEL_TYPE_4BYTE		0x02561#define SMIAPP_FRAME_FORMAT_MODEL_SUBTYPE_NROWS_MASK	0x0f562#define SMIAPP_FRAME_FORMAT_MODEL_SUBTYPE_NCOLS_MASK	0xf0563#define SMIAPP_FRAME_FORMAT_MODEL_SUBTYPE_NCOLS_SHIFT	4564 565#define SMIAPP_FRAME_FORMAT_DESC_2_PIXELCODE_MASK	0xf000566#define SMIAPP_FRAME_FORMAT_DESC_2_PIXELCODE_SHIFT	12567#define SMIAPP_FRAME_FORMAT_DESC_2_PIXELS_MASK		0x0fff568 569#define SMIAPP_FRAME_FORMAT_DESC_4_PIXELCODE_MASK	0xf0000000570#define SMIAPP_FRAME_FORMAT_DESC_4_PIXELCODE_SHIFT	28571#define SMIAPP_FRAME_FORMAT_DESC_4_PIXELS_MASK		0x0000ffff572 573#define SMIAPP_FRAME_FORMAT_DESC_PIXELCODE_EMBEDDED	1574#define SMIAPP_FRAME_FORMAT_DESC_PIXELCODE_DUMMY	2575#define SMIAPP_FRAME_FORMAT_DESC_PIXELCODE_BLACK	3576#define SMIAPP_FRAME_FORMAT_DESC_PIXELCODE_DARK		4577#define SMIAPP_FRAME_FORMAT_DESC_PIXELCODE_VISIBLE	5578 579#define SMIAPP_FAST_STANDBY_CTRL_COMPLETE_FRAMES	0580#define SMIAPP_FAST_STANDBY_CTRL_IMMEDIATE		1581 582/* Scaling N factor */583#define SMIAPP_SCALE_N					16584 585#endif /* __SMIAPP_REG_DEFS_H__ */586