Orange Pi5 kernel

Deprecated Linux kernel 5.10.110 for OrangePi 5/5B/5+ boards

3 Commits   0 Branches   0 Tags
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  1) .. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  2) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  3) .. _v4l2-meta-fmt-uvc:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  4) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  5) *******************************
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  6) V4L2_META_FMT_UVC ('UVCH')
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  7) *******************************
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  8) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300  9) UVC Payload Header Data
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) Description
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) ===========
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) This format describes standard UVC metadata, extracted from UVC packet headers
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) and provided by the UVC driver through metadata video nodes. That data includes
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) exact copies of the standard part of UVC Payload Header contents and auxiliary
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) timing information, required for precise interpretation of timestamps, contained
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) in those headers. See section "2.4.3.3 Video and Still Image Payload Headers" of
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) the "UVC 1.5 Class specification" for details.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) Each UVC payload header can be between 2 and 12 bytes large. Buffers can
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) contain multiple headers, if multiple such headers have been transmitted by the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) camera for the respective frame. However, the driver may drop headers when the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) buffer is full, when they contain no useful information (e.g. those without the
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) SCR field or with that field identical to the previous header), or generally to
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) perform rate limiting when the device sends a large number of headers.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) Each individual block contains the following fields:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) .. flat-table:: UVC Metadata Block
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32)     :widths: 1 4
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33)     :header-rows:  1
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34)     :stub-columns: 0
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) 
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36)     * - Field
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37)       - Description
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38)     * - __u64 ts;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39)       - system timestamp in host byte order, measured by the driver upon
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40)         reception of the payload
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41)     * - __u16 sof;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42)       - USB Frame Number in host byte order, also obtained by the driver as
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43)         close as possible to the above timestamp to enable correlation between
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44)         them
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45)     * - :cspan:`1` *The rest is an exact copy of the UVC payload header:*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46)     * - __u8 length;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47)       - length of the rest of the block, including this field
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48)     * - __u8 flags;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49)       - Flags, indicating presence of other standard UVC fields
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50)     * - __u8 buf[];
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51)       - The rest of the header, possibly including UVC PTS and SCR fields