Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision |
code:fx3_hvci_and_fpga_i_c_commands [2022/01/16 04:44] – [FOURCC formats (for UVC)] Igor Yefmov | code:fx3_hvci_and_fpga_i_c_commands [2022/03/10 06:33] – [0xB8] Igor Yefmov |
---|
^Name ^Offset ^wIndex ^wValue ^Access type ^Byte length ^Return buffer bits ^Notes ^ | ^Name ^Offset ^wIndex ^wValue ^Access type ^Byte length ^Return buffer bits ^Notes ^ |
|Color correction matrix FIXME (needs actual implementation in FX3)|''0xB2''| ''0'' | ''0x0303'' |R/W|32|packed C-array ''float[3][3]''|That data buffer could also be defined as ''float[9]'' or as ''byte*'' for the same exact memory layout on LE systems| | |Color correction matrix FIXME (needs actual implementation in FX3)|''0xB2''| ''0'' | ''0x0303'' |R/W|32|packed C-array ''float[3][3]''|That data buffer could also be defined as ''float[9]'' or as ''byte*'' for the same exact memory layout on LE systems| |
===== 0xB3-0xBF ===== | ===== 0xB3-0xB7 ===== |
^Name ^Offset ^wIndex ^wValue ^Access type ^Byte length ^Return buffer bits ^Notes ^ | ^Name ^Offset ^wIndex ^wValue ^Access type ^Byte length ^Return buffer bits ^Notes ^ |
|Reserved|''0xB3''| | | | | |Reserved|''0xB3''| | | | |
|Reserved|''0xB6''| | | | | |Reserved|''0xB6''| | | | |
|Reserved|''0xB7''| | | | | |Reserved|''0xB7''| | | | |
|Reserved|''0xB8''| | | | | |
| ===== 0xB8 ===== |
| ^Name ^Offset ^wIndex ^wValue ^Access type ^Byte length ^Return buffer bits ^Notes ^ |
| |FPGA stats|''0xB8''|statistics type|0|RO|see notes|see notes|Read out various stats from FPGA, see table below for details (FX3 v.''59''+, FPGA v.''74''+)| |
| |
| ==== FPGA stats' details === |
| ^Name ^Value ^Return type ^Notes ^ |
| |MIPI FPS|''0x01''|float|IEEE float32 format, x86 LE number derived from MIPI-observed time between first pixel output of two consecutive video frames received by FPGA| |
| |
| ===== 0xB9-0xBF ===== |
| ^Name ^Offset ^wIndex ^wValue ^Access type ^Byte length ^Return buffer bits ^Notes ^ |
|Reserved|''0xB9''| | | | | |Reserved|''0xB9''| | | | |
|Reserved|''0xBA''| | | | | |Reserved|''0xBA''| | | | |
|Media output modules|''0x46''|R/W|''7'' - res\\ ''6'' - res (headphones)\\ ''5'' - res (UAC)\\ ''4'' - res\\ ''3'' - res\\ ''2'' - SDI video\\ ''1'' - SFP+ video\\ ''0'' - UVC|Enable/disable state of individual media output modules for video and audio streams| | |Media output modules|''0x46''|R/W|''7'' - res\\ ''6'' - res (headphones)\\ ''5'' - res (UAC)\\ ''4'' - res\\ ''3'' - res\\ ''2'' - SDI video\\ ''1'' - SFP+ video\\ ''0'' - UVC|Enable/disable state of individual media output modules for video and audio streams| |
|Video transform blocks|''0x47''|R/W|''7'' - res (sharpness)\\ ''6'' - res\\ ''5'' - res\\ ''4'' - res\\ ''3'' - res\\ ''2'' - HSL pipeline\\ ''1'' - CCM\\ ''0'' - res (UVC Gamma)|Enable/disable individual transformation blocks in video pipeline| | |Video transform blocks|''0x47''|R/W|''7'' - res (sharpness)\\ ''6'' - res\\ ''5'' - res\\ ''4'' - res\\ ''3'' - res\\ ''2'' - HSL pipeline\\ ''1'' - CCM\\ ''0'' - res (UVC Gamma)|Enable/disable individual transformation blocks in video pipeline| |
|Video output format|''0x48''|R/W|''7'' - res\\ ''6:3'' - UVC\\ ''2:0'' - SDI|Bit depth for all video formats is set in register ''0x49''\\ UVC video formats:\\ ''0'' - "RAW" greyscale pre-debayer pixels\\ ''1'' - 4:4:4 RGB\\ ''2'' - res (packed YCbCr 4:4:4)\\ ''3'' - packed YCbCr 4:2:2\\ ''4'' - res (packed YCbCr 4:2:0)\\ ''5'' - res (planar YCbCr 4:4:4)\\ ''6'' - res (planar YCbCr 4:2:2)\\ ''7'' - planar YCbCr 4:2:0\\ ''8-15'' - res (MJPEG, H.26x, etc)\\ SDI and SFP+ video output formats are always in unison:\\ ''0'' - res\\ ''1'' - res (4:4:4 RGB)\\ ''2'' - res (packed YCbCr 4:4:4)\\ ''3'' - res (packed YCbCr 4:2:2)\\ ''4'' - packed YCbCr 4:2:0\\ ''5'' - res (planar YCbCr 4:4:4)\\ ''6'' - res (planar YCbCr 4:2:2)\\ ''7'' - res (planar YCbCr 4:2:0)| | |Video output format|''0x48''|R/W|''7:4'' - UVC\\ ''3'' - res\\ ''2:0'' - SDI|Bit depth for all video formats is set in register ''0x49''\\ UVC video formats:\\ ''0'' - "RAW" greyscale pre-debayer pixels\\ ''1'' - 4:4:4 RGB\\ ''2'' - res (packed YCbCr 4:4:4)\\ ''3'' - packed YCbCr 4:2:2\\ ''4'' - res (packed YCbCr 4:2:0)\\ ''5'' - res (planar YCbCr 4:4:4)\\ ''6'' - res (planar YCbCr 4:2:2)\\ ''7'' - planar YCbCr 4:2:0\\ ''8-15'' - res (MJPEG, H.26x, etc)\\ SDI and SFP+ video output formats are always in unison:\\ ''0'' - res\\ ''1'' - res (4:4:4 RGB)\\ ''2'' - res (packed YCbCr 4:4:4)\\ ''3'' - res (packed YCbCr 4:2:2)\\ ''4'' - packed YCbCr 4:2:0\\ ''5'' - res (planar YCbCr 4:4:4)\\ ''6'' - res (planar YCbCr 4:2:2)\\ ''7'' - res (planar YCbCr 4:2:0)| |
|Video output pixel bit depth|''0x49''|R/W|''7:6'' - res\\ ''5:4'' - SDI\\ ''3:2'' - SFP+\\ ''1:0'' - UVC|Pixel bit depths \(d_p\) is calculated from a 2-bit value \(N\) as: \[d_p = (N+4)*2\]| | |Video output pixel bit depth|''0x49''|R/W|''7:6'' - res\\ ''5:4'' - SDI\\ ''3:2'' - SFP+\\ ''1:0'' - UVC|Pixel bit depths \(d_p\) is calculated from a 2-bit value \(N\) as: \[d_p = (N+4)*2\]| |
|MIPI configuration|''0x4A''|R/W|''7:2'' - res\\ ''1:0'' - MIPI bit depth|MIPI bit depth controls the data packing format for the pixels coming through MIPI interface. MIPI bit depth \(d_p\) is calculated from a 2-bit value \(N\) as: \[d_p = (N+4)*2\]| | |MIPI configuration|''0x4A''|R/W|''7:2'' - res\\ ''1:0'' - MIPI bit depth|MIPI bit depth controls the data packing format for the pixels coming through MIPI interface. MIPI bit depth \(d_p\) is calculated from a 2-bit value \(N\) as: \[d_p = (N+4)*2\]| |