67 lines · plain
1.. SPDX-License-Identifier: GPL-2.02 3.. include:: <isonum.txt>4 5NPCM video driver6=================7 8This driver is used to control the Video Capture/Differentiation (VCD) engine9and Encoding Compression Engine (ECE) present on Nuvoton NPCM SoCs. The VCD can10capture a frame from digital video input and compare two frames in memory, and11the ECE can compress the frame data into HEXTILE format.12 13Driver-specific Controls14------------------------15 16V4L2_CID_NPCM_CAPTURE_MODE17~~~~~~~~~~~~~~~~~~~~~~~~~~18 19The VCD engine supports two modes:20 21- COMPLETE mode:22 23 Capture the next complete frame into memory.24 25- DIFF mode:26 27 Compare the incoming frame with the frame stored in memory, and updates the28 differentiated frame in memory.29 30Application can use ``V4L2_CID_NPCM_CAPTURE_MODE`` control to set the VCD mode31with different control values (enum v4l2_npcm_capture_mode):32 33- ``V4L2_NPCM_CAPTURE_MODE_COMPLETE``: will set VCD to COMPLETE mode.34- ``V4L2_NPCM_CAPTURE_MODE_DIFF``: will set VCD to DIFF mode.35 36V4L2_CID_NPCM_RECT_COUNT37~~~~~~~~~~~~~~~~~~~~~~~~38 39If using V4L2_PIX_FMT_HEXTILE format, VCD will capture frame data and then ECE40will compress the data into HEXTILE rectangles and store them in V4L2 video41buffer with the layout defined in Remote Framebuffer Protocol:42::43 44 (RFC 6143, https://www.rfc-editor.org/rfc/rfc6143.html#section-7.6.1)45 46 +--------------+--------------+-------------------+47 | No. of bytes | Type [Value] | Description |48 +--------------+--------------+-------------------+49 | 2 | U16 | x-position |50 | 2 | U16 | y-position |51 | 2 | U16 | width |52 | 2 | U16 | height |53 | 4 | S32 | encoding-type (5) |54 +--------------+--------------+-------------------+55 | HEXTILE rectangle data |56 +-------------------------------------------------+57 58Application can get the video buffer through VIDIOC_DQBUF, and followed by59calling ``V4L2_CID_NPCM_RECT_COUNT`` control to get the number of HEXTILE60rectangles in this buffer.61 62References63----------64include/uapi/linux/npcm-video.h65 66**Copyright** |copy| 2022 Nuvoton Technologies67