What's the meaning about pixel bus format?

Hi,

On the TEGRA X1 TRM page 2396,
CHAPTER 31: VIDEO INPUT (VI)
31.3 Data Formatting
31.3.2 Raw Pixel Data Formatting
31.3.2.2 RAW Pixel Formatting to ISP Pipeline

It writes “If the destination format is the pixel bus format, the data must be aligned with the implied decimal point position and the offset must be added. For example the formatting of RAW8 pixel data for the ISP pipeline is illustrated in the following figure.”

I don’t understand why the RAW8 pixel data add offset here. What’s the meaning about “pixel bus format” here?

Thanks.

hello arknights,

that’s due to the Raw data is formatted as unsigned 14-bit, you may also refer to Figure 138 for format details.
you may dump the raw files with v4l2 standard controls,
for example,

$ v4l2-ctl -d /dev/video0 --set-fmt-video=width=2592,height=1944,pixelformat=RG10 --set-ctrl bypass_mode=0 --stream-count=5 --stream-to=test.raw

there’s 3rdparty tools, such as 7yuv that can convert raw files as hex or images for viewing.
thanks

Hi JerryChang,

Is that pixel bus format(RAW8) the same with RAW8 in Figure 139?
I am confused about the word “bus” in there.

Thanks.

hello arknights,

it’s an internal expression for raw formats, which handle for different sensor types.
you should also check the pixel formats in memory, for example, T_L8, or T_R16_I.

FYI, reference drivers in L4T sources were Raw10 in CSI formats, and it’s T_R16_I in VI pixel formats.
thanks