diff options
author | Mauro Carvalho Chehab <mchehab+huawei@kernel.org> | 2020-03-04 12:21:39 +0300 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab+huawei@kernel.org> | 2020-04-14 11:31:49 +0300 |
commit | 54f38fcae536ea202ce7d6a359521492fba30c1f (patch) | |
tree | dd1a2b36d8de0b13702f2716526ad3b91650e090 /Documentation/media/uapi/v4l/vidioc-enum-freq-bands.rst | |
parent | 5dfb8db56b273740a76e8687ee7efb4b2c0ec83b (diff) | |
download | linux-54f38fcae536ea202ce7d6a359521492fba30c1f.tar.xz |
media: docs: move uAPI book to userspace-api/media
Since 2017, there is an space reserved for userspace API,
created by changeset 1d596dee3862 ("docs: Create a user-space API guide").
As the media subsystem was one of the first subsystems to use
Sphinx, until this patch, we were keeping things on a separate
place.
Let's just use the new location, as having all uAPI altogether
will likely make things easier for developers.
Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Diffstat (limited to 'Documentation/media/uapi/v4l/vidioc-enum-freq-bands.rst')
-rw-r--r-- | Documentation/media/uapi/v4l/vidioc-enum-freq-bands.rst | 150 |
1 files changed, 0 insertions, 150 deletions
diff --git a/Documentation/media/uapi/v4l/vidioc-enum-freq-bands.rst b/Documentation/media/uapi/v4l/vidioc-enum-freq-bands.rst deleted file mode 100644 index 0e97c09afe0e..000000000000 --- a/Documentation/media/uapi/v4l/vidioc-enum-freq-bands.rst +++ /dev/null @@ -1,150 +0,0 @@ -.. Permission is granted to copy, distribute and/or modify this -.. document under the terms of the GNU Free Documentation License, -.. Version 1.1 or any later version published by the Free Software -.. Foundation, with no Invariant Sections, no Front-Cover Texts -.. and no Back-Cover Texts. A copy of the license is included at -.. Documentation/media/uapi/fdl-appendix.rst. -.. -.. TODO: replace it to GFDL-1.1-or-later WITH no-invariant-sections - -.. _VIDIOC_ENUM_FREQ_BANDS: - -**************************** -ioctl VIDIOC_ENUM_FREQ_BANDS -**************************** - -Name -==== - -VIDIOC_ENUM_FREQ_BANDS - Enumerate supported frequency bands - - -Synopsis -======== - -.. c:function:: int ioctl( int fd, VIDIOC_ENUM_FREQ_BANDS, struct v4l2_frequency_band *argp ) - :name: VIDIOC_ENUM_FREQ_BANDS - - -Arguments -========= - -``fd`` - File descriptor returned by :ref:`open() <func-open>`. - -``argp`` - Pointer to struct :c:type:`v4l2_frequency_band`. - - -Description -=========== - -Enumerates the frequency bands that a tuner or modulator supports. To do -this applications initialize the ``tuner``, ``type`` and ``index`` -fields, and zero out the ``reserved`` array of a struct -:c:type:`v4l2_frequency_band` and call the -:ref:`VIDIOC_ENUM_FREQ_BANDS` ioctl with a pointer to this structure. - -This ioctl is supported if the ``V4L2_TUNER_CAP_FREQ_BANDS`` capability -of the corresponding tuner/modulator is set. - - -.. tabularcolumns:: |p{2.9cm}|p{2.9cm}|p{5.8cm}|p{2.9cm}|p{3.0cm}| - -.. c:type:: v4l2_frequency_band - -.. flat-table:: struct v4l2_frequency_band - :header-rows: 0 - :stub-columns: 0 - :widths: 1 1 2 1 1 - - * - __u32 - - ``tuner`` - - The tuner or modulator index number. This is the same value as in - the struct :c:type:`v4l2_input` ``tuner`` field and - the struct :c:type:`v4l2_tuner` ``index`` field, or - the struct :c:type:`v4l2_output` ``modulator`` field - and the struct :c:type:`v4l2_modulator` ``index`` - field. - * - __u32 - - ``type`` - - The tuner type. This is the same value as in the struct - :c:type:`v4l2_tuner` ``type`` field. The type must be - set to ``V4L2_TUNER_RADIO`` for ``/dev/radioX`` device nodes, and - to ``V4L2_TUNER_ANALOG_TV`` for all others. Set this field to - ``V4L2_TUNER_RADIO`` for modulators (currently only radio - modulators are supported). See :c:type:`v4l2_tuner_type` - * - __u32 - - ``index`` - - Identifies the frequency band, set by the application. - * - __u32 - - ``capability`` - - :cspan:`2` The tuner/modulator capability flags for this - frequency band, see :ref:`tuner-capability`. The - ``V4L2_TUNER_CAP_LOW`` or ``V4L2_TUNER_CAP_1HZ`` capability must - be the same for all frequency bands of the selected - tuner/modulator. So either all bands have that capability set, or - none of them have that capability. - * - __u32 - - ``rangelow`` - - :cspan:`2` The lowest tunable frequency in units of 62.5 kHz, or - if the ``capability`` flag ``V4L2_TUNER_CAP_LOW`` is set, in units - of 62.5 Hz, for this frequency band. A 1 Hz unit is used when the - ``capability`` flag ``V4L2_TUNER_CAP_1HZ`` is set. - * - __u32 - - ``rangehigh`` - - :cspan:`2` The highest tunable frequency in units of 62.5 kHz, - or if the ``capability`` flag ``V4L2_TUNER_CAP_LOW`` is set, in - units of 62.5 Hz, for this frequency band. A 1 Hz unit is used - when the ``capability`` flag ``V4L2_TUNER_CAP_1HZ`` is set. - * - __u32 - - ``modulation`` - - :cspan:`2` The supported modulation systems of this frequency - band. See :ref:`band-modulation`. - - .. note:: - - Currently only one modulation system per frequency band - is supported. More work will need to be done if multiple - modulation systems are possible. Contact the linux-media - mailing list - (`https://linuxtv.org/lists.php <https://linuxtv.org/lists.php>`__) - if you need such functionality. - * - __u32 - - ``reserved``\ [9] - - Reserved for future extensions. - - Applications and drivers must set the array to zero. - - - -.. tabularcolumns:: |p{6.6cm}|p{2.2cm}|p{8.7cm}| - -.. _band-modulation: - -.. flat-table:: Band Modulation Systems - :header-rows: 0 - :stub-columns: 0 - :widths: 3 1 4 - - * - ``V4L2_BAND_MODULATION_VSB`` - - 0x02 - - Vestigial Sideband modulation, used for analog TV. - * - ``V4L2_BAND_MODULATION_FM`` - - 0x04 - - Frequency Modulation, commonly used for analog radio. - * - ``V4L2_BAND_MODULATION_AM`` - - 0x08 - - Amplitude Modulation, commonly used for analog radio. - - -Return Value -============ - -On success 0 is returned, on error -1 and the ``errno`` variable is set -appropriately. The generic error codes are described at the -:ref:`Generic Error Codes <gen-errors>` chapter. - -EINVAL - The ``tuner`` or ``index`` is out of bounds or the ``type`` field is - wrong. |