160 lines · plain
1.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later2.. c:namespace:: V4L3 4.. _VIDIOC_DV_TIMINGS_CAP:5 6*********************************************************7ioctl VIDIOC_DV_TIMINGS_CAP, VIDIOC_SUBDEV_DV_TIMINGS_CAP8*********************************************************9 10Name11====12 13VIDIOC_DV_TIMINGS_CAP - VIDIOC_SUBDEV_DV_TIMINGS_CAP - The capabilities of the Digital Video receiver/transmitter14 15Synopsis16========17 18.. c:macro:: VIDIOC_DV_TIMINGS_CAP19 20``int ioctl(int fd, VIDIOC_DV_TIMINGS_CAP, struct v4l2_dv_timings_cap *argp)``21 22.. c:macro:: VIDIOC_SUBDEV_DV_TIMINGS_CAP23 24``int ioctl(int fd, VIDIOC_SUBDEV_DV_TIMINGS_CAP, struct v4l2_dv_timings_cap *argp)``25 26Arguments27=========28 29``fd``30 File descriptor returned by :c:func:`open()`.31 32``argp``33 Pointer to struct :c:type:`v4l2_dv_timings_cap`.34 35Description36===========37 38To query the capabilities of the DV receiver/transmitter applications39initialize the ``pad`` field to 0, zero the reserved array of struct40:c:type:`v4l2_dv_timings_cap` and call the41``VIDIOC_DV_TIMINGS_CAP`` ioctl on a video node and the driver will fill42in the structure.43 44.. note::45 46 Drivers may return different values after47 switching the video input or output.48 49When implemented by the driver DV capabilities of subdevices can be50queried by calling the ``VIDIOC_SUBDEV_DV_TIMINGS_CAP`` ioctl directly51on a subdevice node. The capabilities are specific to inputs (for DV52receivers) or outputs (for DV transmitters), applications must specify53the desired pad number in the struct54:c:type:`v4l2_dv_timings_cap` ``pad`` field and55zero the ``reserved`` array. Attempts to query capabilities on a pad56that doesn't support them will return an ``EINVAL`` error code.57 58.. tabularcolumns:: |p{1.2cm}|p{3.2cm}|p{12.9cm}|59 60.. c:type:: v4l2_bt_timings_cap61 62.. flat-table:: struct v4l2_bt_timings_cap63 :header-rows: 064 :stub-columns: 065 :widths: 1 1 266 67 * - __u3268 - ``min_width``69 - Minimum width of the active video in pixels.70 * - __u3271 - ``max_width``72 - Maximum width of the active video in pixels.73 * - __u3274 - ``min_height``75 - Minimum height of the active video in lines.76 * - __u3277 - ``max_height``78 - Maximum height of the active video in lines.79 * - __u6480 - ``min_pixelclock``81 - Minimum pixelclock frequency in Hz.82 * - __u6483 - ``max_pixelclock``84 - Maximum pixelclock frequency in Hz.85 * - __u3286 - ``standards``87 - The video standard(s) supported by the hardware. See88 :ref:`dv-bt-standards` for a list of standards.89 * - __u3290 - ``capabilities``91 - Several flags giving more information about the capabilities. See92 :ref:`dv-bt-cap-capabilities` for a description of the flags.93 * - __u3294 - ``reserved``\ [16]95 - Reserved for future extensions.96 Drivers must set the array to zero.97 98 99.. tabularcolumns:: |p{4.4cm}|p{3.6cm}|p{9.3cm}|100 101.. c:type:: v4l2_dv_timings_cap102 103.. flat-table:: struct v4l2_dv_timings_cap104 :header-rows: 0105 :stub-columns: 0106 :widths: 1 1 2107 108 * - __u32109 - ``type``110 - Type of DV timings as listed in :ref:`dv-timing-types`.111 * - __u32112 - ``pad``113 - Pad number as reported by the media controller API. This field is114 only used when operating on a subdevice node. When operating on a115 video node applications must set this field to zero.116 * - __u32117 - ``reserved``\ [2]118 - Reserved for future extensions.119 120 Drivers and applications must set the array to zero.121 * - union {122 - (anonymous)123 * - struct :c:type:`v4l2_bt_timings_cap`124 - ``bt``125 - BT.656/1120 timings capabilities of the hardware.126 * - __u32127 - ``raw_data``\ [32]128 * - }129 -130 131.. tabularcolumns:: |p{7.2cm}|p{10.3cm}|132 133.. _dv-bt-cap-capabilities:134 135.. flat-table:: DV BT Timing capabilities136 :header-rows: 0137 :stub-columns: 0138 139 * - Flag140 - Description141 * -142 -143 * - ``V4L2_DV_BT_CAP_INTERLACED``144 - Interlaced formats are supported.145 * - ``V4L2_DV_BT_CAP_PROGRESSIVE``146 - Progressive formats are supported.147 * - ``V4L2_DV_BT_CAP_REDUCED_BLANKING``148 - CVT/GTF specific: the timings can make use of reduced blanking149 (CVT) or the 'Secondary GTF' curve (GTF).150 * - ``V4L2_DV_BT_CAP_CUSTOM``151 - Can support non-standard timings, i.e. timings not belonging to152 the standards set in the ``standards`` field.153 154Return Value155============156 157On success 0 is returned, on error -1 and the ``errno`` variable is set158appropriately. The generic error codes are described at the159:ref:`Generic Error Codes <gen-errors>` chapter.160