ccs-regs.asc 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041
  1. # SPDX-License-Identifier: GPL-2.0-only OR BSD-3-Clause
  2. # Copyright (C) 2019--2020 Intel Corporation
  3. # register rflags
  4. # - f field LSB MSB rflags
  5. # - e enum value # after a field
  6. # - e enum value [LSB MSB]
  7. # - b bool bit
  8. # - l arg name min max elsize [discontig...]
  9. #
  10. # rflags
  11. # 8, 16, 32 register bits (default is 8)
  12. # v1.1 defined in version 1.1
  13. # f formula
  14. # float_ireal iReal or IEEE 754; 32 bits
  15. # ireal unsigned iReal
  16. # general status registers
  17. module_model_id 0x0000 16
  18. module_revision_number_major 0x0002 8
  19. frame_count 0x0005 8
  20. pixel_order 0x0006 8
  21. - e GRBG 0
  22. - e RGGB 1
  23. - e BGGR 2
  24. - e GBRG 3
  25. MIPI_CCS_version 0x0007 8
  26. - e v1_0 0x10
  27. - e v1_1 0x11
  28. - f major 4 7
  29. - f minor 0 3
  30. data_pedestal 0x0008 16
  31. module_manufacturer_id 0x000e 16
  32. module_revision_number_minor 0x0010 8
  33. module_date_year 0x0012 8
  34. module_date_month 0x0013 8
  35. module_date_day 0x0014 8
  36. module_date_phase 0x0015 8
  37. - f 0 2
  38. - e ts 0
  39. - e es 1
  40. - e cs 2
  41. - e mp 3
  42. sensor_model_id 0x0016 16
  43. sensor_revision_number 0x0018 8
  44. sensor_firmware_version 0x001a 8
  45. serial_number 0x001c 32
  46. sensor_manufacturer_id 0x0020 16
  47. sensor_revision_number_16 0x0022 16
  48. # frame format description registers
  49. frame_format_model_type 0x0040 8
  50. - e 2-byte 1
  51. - e 4-byte 2
  52. frame_format_model_subtype 0x0041 8
  53. - f rows 0 3
  54. - f columns 4 7
  55. frame_format_descriptor(n) 0x0042 16 f
  56. - l n 0 14 2
  57. - f pixels 0 11
  58. - f pcode 12 15
  59. - e embedded 1
  60. - e dummy_pixel 2
  61. - e black_pixel 3
  62. - e dark_pixel 4
  63. - e visible_pixel 5
  64. - e manuf_specific_0 8
  65. - e manuf_specific_1 9
  66. - e manuf_specific_2 10
  67. - e manuf_specific_3 11
  68. - e manuf_specific_4 12
  69. - e manuf_specific_5 13
  70. - e manuf_specific_6 14
  71. frame_format_descriptor_4(n) 0x0060 32 f
  72. - l n 0 7 4
  73. - f pixels 0 15
  74. - f pcode 28 31
  75. - e embedded 1
  76. - e dummy_pixel 2
  77. - e black_pixel 3
  78. - e dark_pixel 4
  79. - e visible_pixel 5
  80. - e manuf_specific_0 8
  81. - e manuf_specific_1 9
  82. - e manuf_specific_2 10
  83. - e manuf_specific_3 11
  84. - e manuf_specific_4 12
  85. - e manuf_specific_5 13
  86. - e manuf_specific_6 14
  87. # analog gain description registers
  88. analog_gain_capability 0x0080 16
  89. - e global 0
  90. - e alternate_global 2
  91. analog_gain_code_min 0x0084 16
  92. analog_gain_code_max 0x0086 16
  93. analog_gain_code_step 0x0088 16
  94. analog_gain_type 0x008a 16
  95. analog_gain_m0 0x008c 16
  96. analog_gain_c0 0x008e 16
  97. analog_gain_m1 0x0090 16
  98. analog_gain_c1 0x0092 16
  99. analog_linear_gain_min 0x0094 16 v1.1
  100. analog_linear_gain_max 0x0096 16 v1.1
  101. analog_linear_gain_step_size 0x0098 16 v1.1
  102. analog_exponential_gain_min 0x009a 16 v1.1
  103. analog_exponential_gain_max 0x009c 16 v1.1
  104. analog_exponential_gain_step_size 0x009e 16 v1.1
  105. # data format description registers
  106. data_format_model_type 0x00c0 8
  107. - e normal 1
  108. - e extended 2
  109. data_format_model_subtype 0x00c1 8
  110. - f rows 0 3
  111. - f columns 4 7
  112. data_format_descriptor(n) 0x00c2 16 f
  113. - l n 0 15 2
  114. - f compressed 0 7
  115. - f uncompressed 8 15
  116. # general set-up registers
  117. mode_select 0x0100 8
  118. - e software_standby 0
  119. - e streaming 1
  120. image_orientation 0x0101 8
  121. - b horizontal_mirror 0
  122. - b vertical_flip 1
  123. software_reset 0x0103 8
  124. - e off 0
  125. - e on 1
  126. grouped_parameter_hold 0x0104 8
  127. mask_corrupted_frames 0x0105 8
  128. - e allow 0
  129. - e mask 1
  130. fast_standby_ctrl 0x0106 8
  131. - e complete_frames 0
  132. - e frame_truncation 1
  133. CCI_address_ctrl 0x0107 8
  134. 2nd_CCI_if_ctrl 0x0108 8
  135. - b enable 0
  136. - b ack 1
  137. 2nd_CCI_address_ctrl 0x0109 8
  138. CSI_channel_identifier 0x0110 8
  139. CSI_signaling_mode 0x0111 8
  140. - e csi_2_dphy 2
  141. - e csi_2_cphy 3
  142. CSI_data_format 0x0112 16
  143. CSI_lane_mode 0x0114 8
  144. DPCM_Frame_DT 0x011d 8
  145. Bottom_embedded_data_DT 0x011e 8
  146. Bottom_embedded_data_VC 0x011f 8
  147. gain_mode 0x0120 8
  148. - e global 0
  149. - e alternate 1
  150. ADC_bit_depth 0x0121 8
  151. emb_data_ctrl 0x0122 v1.1
  152. - b raw8_packing_for_raw16 0
  153. - b raw10_packing_for_raw20 1
  154. - b raw12_packing_for_raw24 2
  155. GPIO_TRIG_mode 0x0130 8
  156. extclk_frequency_mhz 0x0136 16 ireal
  157. temp_sensor_ctrl 0x0138 8
  158. - b enable 0
  159. temp_sensor_mode 0x0139 8
  160. temp_sensor_output 0x013a 8
  161. # integration time registers
  162. fine_integration_time 0x0200 16
  163. coarse_integration_time 0x0202 16
  164. # analog gain registers
  165. analog_gain_code_global 0x0204 16
  166. analog_linear_gain_global 0x0206 16 v1.1
  167. analog_exponential_gain_global 0x0208 16 v1.1
  168. # digital gain registers
  169. digital_gain_global 0x020e 16
  170. # hdr control registers
  171. Short_analog_gain_global 0x0216 16
  172. Short_digital_gain_global 0x0218 16
  173. HDR_mode 0x0220 8
  174. - b enabled 0
  175. - b separate_analog_gain 1
  176. - b upscaling 2
  177. - b reset_sync 3
  178. - b timing_mode 4
  179. - b exposure_ctrl_direct 5
  180. - b separate_digital_gain 6
  181. HDR_resolution_reduction 0x0221 8
  182. - f row 0 3
  183. - f column 4 7
  184. Exposure_ratio 0x0222 8
  185. HDR_internal_bit_depth 0x0223 8
  186. Direct_short_integration_time 0x0224 16
  187. Short_analog_linear_gain_global 0x0226 16 v1.1
  188. Short_analog_exponential_gain_global 0x0228 16 v1.1
  189. # clock set-up registers
  190. vt_pix_clk_div 0x0300 16
  191. vt_sys_clk_div 0x0302 16
  192. pre_pll_clk_div 0x0304 16
  193. #vt_pre_pll_clk_div 0x0304 16
  194. pll_multiplier 0x0306 16
  195. #vt_pll_multiplier 0x0306 16
  196. op_pix_clk_div 0x0308 16
  197. op_sys_clk_div 0x030a 16
  198. op_pre_pll_clk_div 0x030c 16
  199. op_pll_multiplier 0x030e 16
  200. pll_mode 0x0310 8
  201. - f 0 0
  202. - e single 0
  203. - e dual 1
  204. op_pix_clk_div_rev 0x0312 16 v1.1
  205. op_sys_clk_div_rev 0x0314 16 v1.1
  206. # frame timing registers
  207. frame_length_lines 0x0340 16
  208. line_length_pck 0x0342 16
  209. # image size registers
  210. x_addr_start 0x0344 16
  211. y_addr_start 0x0346 16
  212. x_addr_end 0x0348 16
  213. y_addr_end 0x034a 16
  214. x_output_size 0x034c 16
  215. y_output_size 0x034e 16
  216. # timing mode registers
  217. Frame_length_ctrl 0x0350 8
  218. - b automatic 0
  219. Timing_mode_ctrl 0x0352 8
  220. - b manual_readout 0
  221. - b delayed_exposure 1
  222. Start_readout_rs 0x0353 8
  223. - b manual_readout_start 0
  224. Frame_margin 0x0354 16
  225. # sub-sampling registers
  226. x_even_inc 0x0380 16
  227. x_odd_inc 0x0382 16
  228. y_even_inc 0x0384 16
  229. y_odd_inc 0x0386 16
  230. # monochrome readout registers
  231. monochrome_en 0x0390 v1.1
  232. - e enabled 0
  233. # image scaling registers
  234. Scaling_mode 0x0400 16
  235. - e no_scaling 0
  236. - e horizontal 1
  237. scale_m 0x0404 16
  238. scale_n 0x0406 16
  239. digital_crop_x_offset 0x0408 16
  240. digital_crop_y_offset 0x040a 16
  241. digital_crop_image_width 0x040c 16
  242. digital_crop_image_height 0x040e 16
  243. # image compression registers
  244. compression_mode 0x0500 16
  245. - e none 0
  246. - e dpcm_pcm_simple 1
  247. # test pattern registers
  248. test_pattern_mode 0x0600 16
  249. - e none 0
  250. - e solid_color 1
  251. - e color_bars 2
  252. - e fade_to_grey 3
  253. - e pn9 4
  254. - e color_tile 5
  255. test_data_red 0x0602 16
  256. test_data_greenR 0x0604 16
  257. test_data_blue 0x0606 16
  258. test_data_greenB 0x0608 16
  259. value_step_size_smooth 0x060a 8
  260. value_step_size_quantised 0x060b 8
  261. # phy configuration registers
  262. tclk_post 0x0800 8
  263. ths_prepare 0x0801 8
  264. ths_zero_min 0x0802 8
  265. ths_trail 0x0803 8
  266. tclk_trail_min 0x0804 8
  267. tclk_prepare 0x0805 8
  268. tclk_zero 0x0806 8
  269. tlpx 0x0807 8
  270. phy_ctrl 0x0808 8
  271. - e auto 0
  272. - e UI 1
  273. - e manual 2
  274. tclk_post_ex 0x080a 16
  275. ths_prepare_ex 0x080c 16
  276. ths_zero_min_ex 0x080e 16
  277. ths_trail_ex 0x0810 16
  278. tclk_trail_min_ex 0x0812 16
  279. tclk_prepare_ex 0x0814 16
  280. tclk_zero_ex 0x0816 16
  281. tlpx_ex 0x0818 16
  282. # link rate register
  283. requested_link_rate 0x0820 32 u16.16
  284. # equalization control registers
  285. DPHY_equalization_mode 0x0824 8 v1.1
  286. - b eq2 0
  287. PHY_equalization_ctrl 0x0825 8 v1.1
  288. - b enable 0
  289. # d-phy preamble control registers
  290. DPHY_preamble_ctrl 0x0826 8 v1.1
  291. - b enable 0
  292. DPHY_preamble_length 0x0826 8 v1.1
  293. # d-phy spread spectrum control registers
  294. PHY_SSC_ctrl 0x0828 8 v1.1
  295. - b enable 0
  296. # manual lp control register
  297. manual_LP_ctrl 0x0829 8 v1.1
  298. - b enable 0
  299. # additional phy configuration registers
  300. twakeup 0x082a v1.1
  301. tinit 0x082b v1.1
  302. ths_exit 0x082c v1.1
  303. ths_exit_ex 0x082e 16 v1.1
  304. # phy calibration configuration registers
  305. PHY_periodic_calibration_ctrl 0x0830 8
  306. - b frame_blanking 0
  307. PHY_periodic_calibration_interval 0x0831 8
  308. PHY_init_calibration_ctrl 0x0832 8
  309. - b stream_start 0
  310. DPHY_calibration_mode 0x0833 8 v1.1
  311. - b also_alternate 0
  312. CPHY_calibration_mode 0x0834 8 v1.1
  313. - e format_1 0
  314. - e format_2 1
  315. - e format_3 2
  316. t3_calpreamble_length 0x0835 8 v1.1
  317. t3_calpreamble_length_per 0x0836 8 v1.1
  318. t3_calaltseq_length 0x0837 8 v1.1
  319. t3_calaltseq_length_per 0x0838 8 v1.1
  320. FM2_init_seed 0x083a 16 v1.1
  321. t3_caludefseq_length 0x083c 16 v1.1
  322. t3_caludefseq_length_per 0x083e 16 v1.1
  323. # c-phy manual control registers
  324. TGR_Preamble_Length 0x0841 8
  325. - b preamable_prog_seq 7
  326. - f begin_preamble_length 0 5
  327. TGR_Post_Length 0x0842 8
  328. - f post_length 0 4
  329. TGR_Preamble_Prog_Sequence(n2) 0x0843
  330. - l n2 0 6 1
  331. - f symbol_n_1 3 5
  332. - f symbol_n 0 2
  333. t3_prepare 0x084e 16
  334. t3_lpx 0x0850 16
  335. # alps control register
  336. ALPS_ctrl 0x085a 8
  337. - b lvlp_dphy 0
  338. - b lvlp_cphy 1
  339. - b alp_cphy 2
  340. # lrte control registers
  341. TX_REG_CSI_EPD_EN_SSP_cphy 0x0860 16
  342. TX_REG_CSI_EPD_OP_SLP_cphy 0x0862 16
  343. TX_REG_CSI_EPD_EN_SSP_dphy 0x0864 16
  344. TX_REG_CSI_EPD_OP_SLP_dphy 0x0866 16
  345. TX_REG_CSI_EPD_MISC_OPTION_cphy 0x0868 v1.1
  346. TX_REG_CSI_EPD_MISC_OPTION_dphy 0x0869 v1.1
  347. # scrambling control registers
  348. Scrambling_ctrl 0x0870
  349. - b enabled 0
  350. - f 2 3
  351. - e 1_seed_cphy 0
  352. - e 4_seed_cphy 3
  353. lane_seed_value(seed, lane) 0x0872 16
  354. - l seed 0 3 0x10
  355. - l lane 0 7 0x2
  356. # usl control registers
  357. TX_USL_REV_ENTRY 0x08c0 16 v1.1
  358. TX_USL_REV_Clock_Counter 0x08c2 16 v1.1
  359. TX_USL_REV_LP_Counter 0x08c4 16 v1.1
  360. TX_USL_REV_Frame_Counter 0x08c6 16 v1.1
  361. TX_USL_REV_Chronological_Timer 0x08c8 16 v1.1
  362. TX_USL_FWD_ENTRY 0x08ca 16 v1.1
  363. TX_USL_GPIO 0x08cc 16 v1.1
  364. TX_USL_Operation 0x08ce 16 v1.1
  365. - b reset 0
  366. TX_USL_ALP_ctrl 0x08d0 16 v1.1
  367. - b clock_pause 0
  368. TX_USL_APP_BTA_ACK_TIMEOUT 0x08d2 16 v1.1
  369. TX_USL_SNS_BTA_ACK_TIMEOUT 0x08d2 16 v1.1
  370. USL_Clock_Mode_d_ctrl 0x08d2 v1.1
  371. - b cont_clock_standby 0
  372. - b cont_clock_vblank 1
  373. - b cont_clock_hblank 2
  374. # binning configuration registers
  375. binning_mode 0x0900 8
  376. binning_type 0x0901 8
  377. binning_weighting 0x0902 8
  378. # data transfer interface registers
  379. data_transfer_if_1_ctrl 0x0a00 8
  380. - b enable 0
  381. - b write 1
  382. - b clear_error 2
  383. data_transfer_if_1_status 0x0a01 8
  384. - b read_if_ready 0
  385. - b write_if_ready 1
  386. - b data_corrupted 2
  387. - b improper_if_usage 3
  388. data_transfer_if_1_page_select 0x0a02 8
  389. data_transfer_if_1_data(p) 0x0a04 8 f
  390. - l p 0 63 1
  391. # image processing and sensor correction configuration registers
  392. shading_correction_en 0x0b00 8
  393. - b enable 0
  394. luminance_correction_level 0x0b01 8
  395. green_imbalance_filter_en 0x0b02 8
  396. - b enable 0
  397. mapped_defect_correct_en 0x0b05 8
  398. - b enable 0
  399. single_defect_correct_en 0x0b06 8
  400. - b enable 0
  401. dynamic_couplet_correct_en 0x0b08 8
  402. - b enable 0
  403. combined_defect_correct_en 0x0b0a 8
  404. - b enable 0
  405. module_specific_correction_en 0x0b0c 8
  406. - b enable 0
  407. dynamic_triplet_defect_correct_en 0x0b13 8
  408. - b enable 0
  409. NF_ctrl 0x0b15 8
  410. - b luma 0
  411. - b chroma 1
  412. - b combined 2
  413. # optical black pixel readout registers
  414. OB_readout_control 0x0b30 8
  415. - b enable 0
  416. - b interleaving 1
  417. OB_virtual_channel 0x0b31 8
  418. OB_DT 0x0b32 8
  419. OB_data_format 0x0b33 8
  420. # color temperature feedback registers
  421. color_temperature 0x0b8c 16
  422. absolute_gain_greenr 0x0b8e 16
  423. absolute_gain_red 0x0b90 16
  424. absolute_gain_blue 0x0b92 16
  425. absolute_gain_greenb 0x0b94 16
  426. # cfa conversion registers
  427. CFA_conversion_ctrl 0x0ba0 v1.1
  428. - b bayer_conversion_enable 0
  429. # flash strobe and sa strobe control registers
  430. flash_strobe_adjustment 0x0c12 8
  431. flash_strobe_start_point 0x0c14 16
  432. tflash_strobe_delay_rs_ctrl 0x0c16 16
  433. tflash_strobe_width_high_rs_ctrl 0x0c18 16
  434. flash_mode_rs 0x0c1a 8
  435. - b continuous 0
  436. - b truncate 1
  437. - b async 3
  438. flash_trigger_rs 0x0c1b 8
  439. flash_status 0x0c1c 8
  440. - b retimed 0
  441. sa_strobe_mode 0x0c1d 8
  442. - b continuous 0
  443. - b truncate 1
  444. - b async 3
  445. - b adjust_edge 4
  446. sa_strobe_start_point 0x0c1e 16
  447. tsa_strobe_delay_ctrl 0x0c20 16
  448. tsa_strobe_width_ctrl 0x0c22 16
  449. sa_strobe_trigger 0x0c24 8
  450. sa_strobe_status 0x0c25 8
  451. - b retimed 0
  452. tSA_strobe_re_delay_ctrl 0x0c30 16
  453. tSA_strobe_fe_delay_ctrl 0x0c32 16
  454. # pdaf control registers
  455. PDAF_ctrl 0x0d00 16
  456. - b enable 0
  457. - b processed 1
  458. - b interleaved 2
  459. - b visible_pdaf_correction 3
  460. PDAF_VC 0x0d02 8
  461. PDAF_DT 0x0d03 8
  462. pd_x_addr_start 0x0d04 16
  463. pd_y_addr_start 0x0d06 16
  464. pd_x_addr_end 0x0d08 16
  465. pd_y_addr_end 0x0d0a 16
  466. # bracketing interface configuration registers
  467. bracketing_LUT_ctrl 0x0e00 8
  468. bracketing_LUT_mode 0x0e01 8
  469. - b continue_streaming 0
  470. - b loop_mode 1
  471. bracketing_LUT_entry_ctrl 0x0e02 8
  472. bracketing_LUT_frame(n) 0x0e10 v1.1 f
  473. - l n 0 0xef 1
  474. # integration time and gain parameter limit registers
  475. integration_time_capability 0x1000 16
  476. - b fine 0
  477. coarse_integration_time_min 0x1004 16
  478. coarse_integration_time_max_margin 0x1006 16
  479. fine_integration_time_min 0x1008 16
  480. fine_integration_time_max_margin 0x100a 16
  481. # digital gain parameter limit registers
  482. digital_gain_capability 0x1081
  483. - e none 0
  484. - e global 2
  485. digital_gain_min 0x1084 16
  486. digital_gain_max 0x1086 16
  487. digital_gain_step_size 0x1088 16
  488. # data pedestal capability registers
  489. Pedestal_capability 0x10e0 8 v1.1
  490. # adc capability registers
  491. ADC_capability 0x10f0 8
  492. - b bit_depth_ctrl 0
  493. ADC_bit_depth_capability 0x10f4 32 v1.1
  494. # video timing parameter limit registers
  495. min_ext_clk_freq_mhz 0x1100 32 float_ireal
  496. max_ext_clk_freq_mhz 0x1104 32 float_ireal
  497. min_pre_pll_clk_div 0x1108 16
  498. # min_vt_pre_pll_clk_div 0x1108 16
  499. max_pre_pll_clk_div 0x110a 16
  500. # max_vt_pre_pll_clk_div 0x110a 16
  501. min_pll_ip_clk_freq_mhz 0x110c 32 float_ireal
  502. # min_vt_pll_ip_clk_freq_mhz 0x110c 32 float_ireal
  503. max_pll_ip_clk_freq_mhz 0x1110 32 float_ireal
  504. # max_vt_pll_ip_clk_freq_mhz 0x1110 32 float_ireal
  505. min_pll_multiplier 0x1114 16
  506. # min_vt_pll_multiplier 0x1114 16
  507. max_pll_multiplier 0x1116 16
  508. # max_vt_pll_multiplier 0x1116 16
  509. min_pll_op_clk_freq_mhz 0x1118 32 float_ireal
  510. max_pll_op_clk_freq_mhz 0x111c 32 float_ireal
  511. # video timing set-up capability registers
  512. min_vt_sys_clk_div 0x1120 16
  513. max_vt_sys_clk_div 0x1122 16
  514. min_vt_sys_clk_freq_mhz 0x1124 32 float_ireal
  515. max_vt_sys_clk_freq_mhz 0x1128 32 float_ireal
  516. min_vt_pix_clk_freq_mhz 0x112c 32 float_ireal
  517. max_vt_pix_clk_freq_mhz 0x1130 32 float_ireal
  518. min_vt_pix_clk_div 0x1134 16
  519. max_vt_pix_clk_div 0x1136 16
  520. clock_calculation 0x1138
  521. - b lane_speed 0
  522. - b link_decoupled 1
  523. - b dual_pll_op_sys_ddr 2
  524. - b dual_pll_op_pix_ddr 3
  525. num_of_vt_lanes 0x1139
  526. num_of_op_lanes 0x113a
  527. op_bits_per_lane 0x113b 8 v1.1
  528. # frame timing parameter limits
  529. min_frame_length_lines 0x1140 16
  530. max_frame_length_lines 0x1142 16
  531. min_line_length_pck 0x1144 16
  532. max_line_length_pck 0x1146 16
  533. min_line_blanking_pck 0x1148 16
  534. min_frame_blanking_lines 0x114a 16
  535. min_line_length_pck_step_size 0x114c
  536. timing_mode_capability 0x114d
  537. - b auto_frame_length 0
  538. - b rolling_shutter_manual_readout 2
  539. - b delayed_exposure_start 3
  540. - b manual_exposure_embedded_data 4
  541. frame_margin_max_value 0x114e 16
  542. frame_margin_min_value 0x1150
  543. gain_delay_type 0x1151
  544. - e fixed 0
  545. - e variable 1
  546. # output clock set-up capability registers
  547. min_op_sys_clk_div 0x1160 16
  548. max_op_sys_clk_div 0x1162 16
  549. min_op_sys_clk_freq_mhz 0x1164 32 float_ireal
  550. max_op_sys_clk_freq_mhz 0x1168 32 float_ireal
  551. min_op_pix_clk_div 0x116c 16
  552. max_op_pix_clk_div 0x116e 16
  553. min_op_pix_clk_freq_mhz 0x1170 32 float_ireal
  554. max_op_pix_clk_freq_mhz 0x1174 32 float_ireal
  555. # image size parameter limit registers
  556. x_addr_min 0x1180 16
  557. y_addr_min 0x1182 16
  558. x_addr_max 0x1184 16
  559. y_addr_max 0x1186 16
  560. min_x_output_size 0x1188 16
  561. min_y_output_size 0x118a 16
  562. max_x_output_size 0x118c 16
  563. max_y_output_size 0x118e 16
  564. x_addr_start_div_constant 0x1190 v1.1
  565. y_addr_start_div_constant 0x1191 v1.1
  566. x_addr_end_div_constant 0x1192 v1.1
  567. y_addr_end_div_constant 0x1193 v1.1
  568. x_size_div 0x1194 v1.1
  569. y_size_div 0x1195 v1.1
  570. x_output_div 0x1196 v1.1
  571. y_output_div 0x1197 v1.1
  572. non_flexible_resolution_support 0x1198 v1.1
  573. - b new_pix_addr 0
  574. - b new_output_res 1
  575. - b output_crop_no_pad 2
  576. - b output_size_lane_dep 3
  577. min_op_pre_pll_clk_div 0x11a0 16
  578. max_op_pre_pll_clk_div 0x11a2 16
  579. min_op_pll_ip_clk_freq_mhz 0x11a4 32 float_ireal
  580. max_op_pll_ip_clk_freq_mhz 0x11a8 32 float_ireal
  581. min_op_pll_multiplier 0x11ac 16
  582. max_op_pll_multiplier 0x11ae 16
  583. min_op_pll_op_clk_freq_mhz 0x11b0 32 float_ireal
  584. max_op_pll_op_clk_freq_mhz 0x11b4 32 float_ireal
  585. clock_tree_pll_capability 0x11b8 8
  586. - b dual_pll 0
  587. - b single_pll 1
  588. - b ext_divider 2
  589. - b flexible_op_pix_clk_div 3
  590. clock_capa_type_capability 0x11b9 v1.1
  591. - b ireal 0
  592. # sub-sampling parameters limit registers
  593. min_even_inc 0x11c0 16
  594. min_odd_inc 0x11c2 16
  595. max_even_inc 0x11c4 16
  596. max_odd_inc 0x11c6 16
  597. aux_subsamp_capability 0x11c8 v1.1
  598. - b factor_power_of_2 1
  599. aux_subsamp_mono_capability 0x11c9 v1.1
  600. - b factor_power_of_2 1
  601. monochrome_capability 0x11ca v1.1
  602. - e inc_odd 0
  603. - e inc_even 1
  604. pixel_readout_capability 0x11cb v1.1
  605. - e bayer 0
  606. - e monochrome 1
  607. - e bayer_and_mono 2
  608. min_even_inc_mono 0x11cc 16 v1.1
  609. max_even_inc_mono 0x11ce 16 v1.1
  610. min_odd_inc_mono 0x11d0 16 v1.1
  611. max_odd_inc_mono 0x11d2 16 v1.1
  612. min_even_inc_bc2 0x11d4 16 v1.1
  613. max_even_inc_bc2 0x11d6 16 v1.1
  614. min_odd_inc_bc2 0x11d8 16 v1.1
  615. max_odd_inc_bc2 0x11da 16 v1.1
  616. min_even_inc_mono_bc2 0x11dc 16 v1.1
  617. max_even_inc_mono_bc2 0x11de 16 v1.1
  618. min_odd_inc_mono_bc2 0x11f0 16 v1.1
  619. max_odd_inc_mono_bc2 0x11f2 16 v1.1
  620. # image scaling limit parameters
  621. scaling_capability 0x1200 16
  622. - e none 0
  623. - e horizontal 1
  624. - e reserved 2
  625. scaler_m_min 0x1204 16
  626. scaler_m_max 0x1206 16
  627. scaler_n_min 0x1208 16
  628. scaler_n_max 0x120a 16
  629. digital_crop_capability 0x120e
  630. - e none 0
  631. - e input_crop 1
  632. # hdr limit registers
  633. hdr_capability_1 0x1210
  634. - b 2x2_binning 0
  635. - b combined_analog_gain 1
  636. - b separate_analog_gain 2
  637. - b upscaling 3
  638. - b reset_sync 4
  639. - b direct_short_exp_timing 5
  640. - b direct_short_exp_synthesis 6
  641. min_hdr_bit_depth 0x1211
  642. hdr_resolution_sub_types 0x1212
  643. hdr_resolution_sub_type(n) 0x1213
  644. - l n 0 1 1
  645. - f row 0 3
  646. - f column 4 7
  647. hdr_capability_2 0x121b
  648. - b combined_digital_gain 0
  649. - b separate_digital_gain 1
  650. - b timing_mode 3
  651. - b synthesis_mode 4
  652. max_hdr_bit_depth 0x121c
  653. # usl capability register
  654. usl_support_capability 0x1230 v1.1
  655. - b clock_tree 0
  656. - b rev_clock_tree 1
  657. - b rev_clock_calc 2
  658. usl_clock_mode_d_capability 0x1231 v1.1
  659. - b cont_clock_standby 0
  660. - b cont_clock_vblank 1
  661. - b cont_clock_hblank 2
  662. - b noncont_clock_standby 3
  663. - b noncont_clock_vblank 4
  664. - b noncont_clock_hblank 5
  665. min_op_sys_clk_div_rev 0x1234 v1.1
  666. max_op_sys_clk_div_rev 0x1236 v1.1
  667. min_op_pix_clk_div_rev 0x1238 v1.1
  668. max_op_pix_clk_div_rev 0x123a v1.1
  669. min_op_sys_clk_freq_rev_mhz 0x123c 32 v1.1 float_ireal
  670. max_op_sys_clk_freq_rev_mhz 0x1240 32 v1.1 float_ireal
  671. min_op_pix_clk_freq_rev_mhz 0x1244 32 v1.1 float_ireal
  672. max_op_pix_clk_freq_rev_mhz 0x1248 32 v1.1 float_ireal
  673. max_bitrate_rev_d_mode_mbps 0x124c 32 v1.1 ireal
  674. max_symrate_rev_c_mode_msps 0x1250 32 v1.1 ireal
  675. # image compression capability registers
  676. compression_capability 0x1300
  677. - b dpcm_pcm_simple 0
  678. # test mode capability registers
  679. test_mode_capability 0x1310 16
  680. - b solid_color 0
  681. - b color_bars 1
  682. - b fade_to_grey 2
  683. - b pn9 3
  684. - b color_tile 5
  685. pn9_data_format1 0x1312
  686. pn9_data_format2 0x1313
  687. pn9_data_format3 0x1314
  688. pn9_data_format4 0x1315
  689. pn9_misc_capability 0x1316
  690. - f num_pixels 0 2
  691. - b compression 3
  692. test_pattern_capability 0x1317 v1.1
  693. - b no_repeat 1
  694. pattern_size_div_m1 0x1318 v1.1
  695. # fifo capability registers
  696. fifo_support_capability 0x1502
  697. - e none 0
  698. - e derating 1
  699. - e derating_overrating 2
  700. # csi-2 capability registers
  701. phy_ctrl_capability 0x1600
  702. - b auto_phy_ctl 0
  703. - b ui_phy_ctl 1
  704. - b dphy_time_ui_reg_1_ctl 2
  705. - b dphy_time_ui_reg_2_ctl 3
  706. - b dphy_time_ctl 4
  707. - b dphy_ext_time_ui_reg_1_ctl 5
  708. - b dphy_ext_time_ui_reg_2_ctl 6
  709. - b dphy_ext_time_ctl 7
  710. csi_dphy_lane_mode_capability 0x1601
  711. - b 1_lane 0
  712. - b 2_lane 1
  713. - b 3_lane 2
  714. - b 4_lane 3
  715. - b 5_lane 4
  716. - b 6_lane 5
  717. - b 7_lane 6
  718. - b 8_lane 7
  719. csi_signaling_mode_capability 0x1602
  720. - b csi_dphy 2
  721. - b csi_cphy 3
  722. fast_standby_capability 0x1603
  723. - e no_frame_truncation 0
  724. - e frame_truncation 1
  725. csi_address_control_capability 0x1604
  726. - b cci_addr_change 0
  727. - b 2nd_cci_addr 1
  728. - b sw_changeable_2nd_cci_addr 2
  729. data_type_capability 0x1605
  730. - b dpcm_programmable 0
  731. - b bottom_embedded_dt_programmable 1
  732. - b bottom_embedded_vc_programmable 2
  733. - b ext_vc_range 3
  734. csi_cphy_lane_mode_capability 0x1606
  735. - b 1_lane 0
  736. - b 2_lane 1
  737. - b 3_lane 2
  738. - b 4_lane 3
  739. - b 5_lane 4
  740. - b 6_lane 5
  741. - b 7_lane 6
  742. - b 8_lane 7
  743. emb_data_capability 0x1607 v1.1
  744. - b two_bytes_per_raw16 0
  745. - b two_bytes_per_raw20 1
  746. - b two_bytes_per_raw24 2
  747. - b no_one_byte_per_raw16 3
  748. - b no_one_byte_per_raw20 4
  749. - b no_one_byte_per_raw24 5
  750. max_per_lane_bitrate_lane_d_mode_mbps(n) 0x1608 32 ireal
  751. - l n 0 7 4 4,0x32
  752. temp_sensor_capability 0x1618
  753. - b supported 0
  754. - b CCS_format 1
  755. - b reset_0x80 2
  756. max_per_lane_bitrate_lane_c_mode_mbps(n) 0x161a 32 ireal
  757. - l n 0 7 4 4,0x30
  758. dphy_equalization_capability 0x162b
  759. - b equalization_ctrl 0
  760. - b eq1 1
  761. - b eq2 2
  762. cphy_equalization_capability 0x162c
  763. - b equalization_ctrl 0
  764. dphy_preamble_capability 0x162d
  765. - b preamble_seq_ctrl 0
  766. dphy_ssc_capability 0x162e
  767. - b supported 0
  768. cphy_calibration_capability 0x162f
  769. - b manual 0
  770. - b manual_streaming 1
  771. - b format_1_ctrl 2
  772. - b format_2_ctrl 3
  773. - b format_3_ctrl 4
  774. dphy_calibration_capability 0x1630
  775. - b manual 0
  776. - b manual_streaming 1
  777. - b alternate_seq 2
  778. phy_ctrl_capability_2 0x1631
  779. - b tgr_length 0
  780. - b tgr_preamble_prog_seq 1
  781. - b extra_cphy_manual_timing 2
  782. - b clock_based_manual_cdphy 3
  783. - b clock_based_manual_dphy 4
  784. - b clock_based_manual_cphy 5
  785. - b manual_lp_dphy 6
  786. - b manual_lp_cphy 7
  787. lrte_cphy_capability 0x1632
  788. - b pdq_short 0
  789. - b spacer_short 1
  790. - b pdq_long 2
  791. - b spacer_long 3
  792. - b spacer_no_pdq 4
  793. lrte_dphy_capability 0x1633
  794. - b pdq_short_opt1 0
  795. - b spacer_short_opt1 1
  796. - b pdq_long_opt1 2
  797. - b spacer_long_opt1 3
  798. - b spacer_short_opt2 4
  799. - b spacer_long_opt2 5
  800. - b spacer_no_pdq_opt1 6
  801. - b spacer_variable_opt2 7
  802. alps_capability_dphy 0x1634
  803. - e lvlp_not_supported 0 0x3
  804. - e lvlp_supported 1 0x3
  805. - e controllable_lvlp 2 0x3
  806. alps_capability_cphy 0x1635
  807. - e lvlp_not_supported 0 0x3
  808. - e lvlp_supported 1 0x3
  809. - e controllable_lvlp 2 0x3
  810. - e alp_not_supported 0xc 0xc
  811. - e alp_supported 0xd 0xc
  812. - e controllable_alp 0xe 0xc
  813. scrambling_capability 0x1636
  814. - b scrambling_supported 0
  815. - f max_seeds_per_lane_c 1 2
  816. - e 1 0
  817. - e 4 3
  818. - f num_seed_regs 3 5
  819. - e 0 0
  820. - e 1 1
  821. - e 4 4
  822. - b num_seed_per_lane 6
  823. dphy_manual_constant 0x1637
  824. cphy_manual_constant 0x1638
  825. CSI2_interface_capability_misc 0x1639 v1.1
  826. - b eotp_short_pkt_opt2 0
  827. PHY_ctrl_capability_3 0x165c v1.1
  828. - b dphy_timing_not_multiple 0
  829. - b dphy_min_timing_value_1 1
  830. - b twakeup_supported 2
  831. - b tinit_supported 3
  832. - b ths_exit_supported 4
  833. - b cphy_timing_not_multiple 5
  834. - b cphy_min_timing_value_1 6
  835. dphy_sf 0x165d v1.1
  836. cphy_sf 0x165e v1.1
  837. - f twakeup 0 3
  838. - f tinit 4 7
  839. dphy_limits_1 0x165f v1.1
  840. - f ths_prepare 0 3
  841. - f ths_zero 4 7
  842. dphy_limits_2 0x1660 v1.1
  843. - f ths_trail 0 3
  844. - f tclk_trail_min 4 7
  845. dphy_limits_3 0x1661 v1.1
  846. - f tclk_prepare 0 3
  847. - f tclk_zero 4 7
  848. dphy_limits_4 0x1662 v1.1
  849. - f tclk_post 0 3
  850. - f tlpx 4 7
  851. dphy_limits_5 0x1663 v1.1
  852. - f ths_exit 0 3
  853. - f twakeup 4 7
  854. dphy_limits_6 0x1664 v1.1
  855. - f tinit 0 3
  856. cphy_limits_1 0x1665 v1.1
  857. - f t3_prepare_max 0 3
  858. - f t3_lpx_max 4 7
  859. cphy_limits_2 0x1666 v1.1
  860. - f ths_exit_max 0 3
  861. - f twakeup_max 4 7
  862. cphy_limits_3 0x1667 v1.1
  863. - f tinit_max 0 3
  864. # binning capability registers
  865. min_frame_length_lines_bin 0x1700 16
  866. max_frame_length_lines_bin 0x1702 16
  867. min_line_length_pck_bin 0x1704 16
  868. max_line_length_pck_bin 0x1706 16
  869. min_line_blanking_pck_bin 0x1708 16
  870. fine_integration_time_min_bin 0x170a 16
  871. fine_integration_time_max_margin_bin 0x170c 16
  872. binning_capability 0x1710
  873. - e unsupported 0
  874. - e binning_then_subsampling 1
  875. - e subsampling_then_binning 2
  876. binning_weighting_capability 0x1711
  877. - b averaged 0
  878. - b summed 1
  879. - b bayer_corrected 2
  880. - b module_specific_weight 3
  881. binning_sub_types 0x1712
  882. binning_sub_type(n) 0x1713
  883. - l n 0 63 1
  884. - f row 0 3
  885. - f column 4 7
  886. binning_weighting_mono_capability 0x1771 v1.1
  887. - b averaged 0
  888. - b summed 1
  889. - b bayer_corrected 2
  890. - b module_specific_weight 3
  891. binning_sub_types_mono 0x1772 v1.1
  892. binning_sub_type_mono(n) 0x1773 v1.1 f
  893. - l n 0 63 1
  894. # data transfer interface capability registers
  895. data_transfer_if_capability 0x1800
  896. - b supported 0
  897. - b polling 2
  898. # sensor correction capability registers
  899. shading_correction_capability 0x1900
  900. - b color_shading 0
  901. - b luminance_correction 1
  902. green_imbalance_capability 0x1901
  903. - b supported 0
  904. module_specific_correction_capability 0x1903
  905. defect_correction_capability 0x1904 16
  906. - b mapped_defect 0
  907. - b dynamic_couplet 2
  908. - b dynamic_single 5
  909. - b combined_dynamic 8
  910. defect_correction_capability_2 0x1906 16
  911. - b dynamic_triplet 3
  912. nf_capability 0x1908
  913. - b luma 0
  914. - b chroma 1
  915. - b combined 2
  916. # optical black readout capability registers
  917. ob_readout_capability 0x1980
  918. - b controllable_readout 0
  919. - b visible_pixel_readout 1
  920. - b different_vc_readout 2
  921. - b different_dt_readout 3
  922. - b prog_data_format 4
  923. # color feedback capability registers
  924. color_feedback_capability 0x1987
  925. - b kelvin 0
  926. - b awb_gain 1
  927. # cfa pattern capability registers
  928. CFA_pattern_capability 0x1990 v1.1
  929. - e bayer 0
  930. - e monochrome 1
  931. - e 4x4_quad_bayer 2
  932. - e vendor_specific 3
  933. CFA_pattern_conversion_capability 0x1991 v1.1
  934. - b bayer 0
  935. # timer capability registers
  936. flash_mode_capability 0x1a02
  937. - b single_strobe 0
  938. sa_strobe_mode_capability 0x1a03
  939. - b fixed_width 0
  940. - b edge_ctrl 1
  941. # soft reset capability registers
  942. reset_max_delay 0x1a10 v1.1
  943. reset_min_time 0x1a11 v1.1
  944. # pdaf capability registers
  945. pdaf_capability_1 0x1b80
  946. - b supported 0
  947. - b processed_bottom_embedded 1
  948. - b processed_interleaved 2
  949. - b raw_bottom_embedded 3
  950. - b raw_interleaved 4
  951. - b visible_pdaf_correction 5
  952. - b vc_interleaving 6
  953. - b dt_interleaving 7
  954. pdaf_capability_2 0x1b81
  955. - b ROI 0
  956. - b after_digital_crop 1
  957. - b ctrl_retimed 2
  958. # bracketing interface capability registers
  959. bracketing_lut_capability_1 0x1c00
  960. - b coarse_integration 0
  961. - b global_analog_gain 1
  962. - b flash 4
  963. - b global_digital_gain 5
  964. - b alternate_global_analog_gain 6
  965. bracketing_lut_capability_2 0x1c01
  966. - b single_bracketing_mode 0
  967. - b looped_bracketing_mode 1
  968. bracketing_lut_size 0x1c02