1 .. SPDX-License-Identifier: GPL-2.0 OR GFDL-1.1-no-invariants-or-later
9 The goal of this section is to standardize the terms used within the media
10 userspace API documentation. This is Work In Progress.
12 .. Please keep the glossary entries in alphabetical order
17 A :term:`Device Driver` that implements the main logic to talk with
21 **Consumer Electronics Control API**
23 An API designed to receive and transmit data via an HDMI
29 Part of the Linux Kernel that implements support for a hardware
33 A character device node in the file system used to control and
34 transfer data in and out of a Kernel driver.
37 **Previously known as DVB API**
39 An API designed to control a subset of the :term:`Media Hardware`
40 that implements digital TV (e. g. DVB, ATSC, ISDB, etc).
45 **Digital Signal Processor**
47 A specialized :term:`Microprocessor`, with its architecture
48 optimized for the operational needs of digital signal processing.
51 **Field-programmable Gate Array**
53 An :term:`IC` circuit designed to be configured by a customer or
54 a designer after manufacturing.
56 See https://en.wikipedia.org/wiki/Field-programmable_gate_array.
59 A subset of the :term:`Media Hardware`. For example an :term:`I²C` or
60 :term:`SPI` device, or an :term:`IP Block` inside an
61 :term:`SoC` or :term:`FPGA`.
64 A group of :term:`hardware components <Hardware Component>` that
65 together make a larger user-facing functional peripheral. For
66 instance, the :term:`SoC` :term:`ISP` :term:`IP Block`
67 and the external camera sensors together make a camera hardware
70 Also known as :term:`Peripheral`.
73 **Inter-Integrated Circuit**
75 A multi-master, multi-slave, packet switched, single-ended,
76 serial computer bus used to control some hardware components
77 like sub-device hardware components.
79 See http://www.nxp.com/docs/en/user-guide/UM10204.pdf.
82 **Integrated circuit**
84 A set of electronic circuits on one small flat piece of
85 semiconductor material, normally silicon.
90 **Intellectual property core**
92 In electronic design a semiconductor intellectual property core,
93 is a reusable unit of logic, cell, or integrated circuit layout
94 design that is the intellectual property of one party.
95 IP Blocks may be licensed to another party or can be owned
96 and used by a single party alone.
98 See https://en.wikipedia.org/wiki/Semiconductor_intellectual_property_core).
101 **Image Signal Processor**
103 A specialized processor that implements a set of algorithms for
104 processing image data. ISPs may implement algorithms for lens
105 shading correction, demosaicing, scaling and pixel format conversion
106 as well as produce statistics for the use of the control
107 algorithms (e.g. automatic exposure, white balance and focus).
110 A set of userspace APIs used to control the media hardware. It is
114 - :term:`Digital TV API`;
116 - :term:`RC API`; and
119 See Documentation/userspace-api/media/index.rst.
122 **Media Controller API**
124 An API designed to expose and control the relationships between
125 multimedia devices and sub-devices.
127 See :ref:`media_controller`.
130 :term:`V4L2 Hardware` device driver that requires :term:`MC API`.
132 Such drivers have ``V4L2_CAP_IO_MC`` device_caps field set
133 (see :ref:`VIDIOC_QUERYCAP`).
135 See :ref:`v4l2_hardware_control` for more details.
138 Subset of the hardware that is supported by the Linux Media API.
140 This includes audio and video capture and playback hardware,
141 digital and analog TV, camera sensors, ISPs, remote controllers,
142 codecs, HDMI Consumer Electronics Control, HDMI capture, etc.
145 Electronic circuitry that carries out the instructions of a
146 computer program by performing the basic arithmetic, logical,
147 control and input/output (I/O) operations specified by the
148 instructions on a single integrated circuit.
151 The same as :term:`Hardware Peripheral`.
154 **Remote Controller API**
156 An API designed to receive and transmit data from remote
159 See :ref:`remote_controllers`.
162 A subset of I²C, which defines a stricter usage of the bus.
165 **Serial Peripheral Interface Bus**
167 Synchronous serial communication interface specification used for
168 short distance communication, primarily in embedded systems.
173 An integrated circuit that integrates all components of a computer
174 or other electronic systems.
177 **V4L2 userspace API**
179 The userspace API defined in :ref:`v4l2spec`, which is used to
180 control a V4L2 hardware.
183 A :term:`Device Node` that is associated to a V4L driver.
185 The V4L2 device node naming is specified at :ref:`v4l2_device_naming`.
188 Part of the media hardware which is supported by the :term:`V4L2 API`.
191 V4L2 hardware components that aren't controlled by a
192 :term:`Bridge Driver`. See :ref:`subdev`.
195 V4L2 device driver that doesn't require a media controller to be used.
197 Such drivers have the ``V4L2_CAP_IO_MC`` device_caps field unset
198 (see :ref:`VIDIOC_QUERYCAP`).
201 Part of the :term:`V4L2 API` which control
202 :term:`V4L2 sub-devices <V4L2 Sub-device>`, like sensors,
203 HDMI receivers, scalers, deinterlacers.
205 See :ref:`v4l2_hardware_control` for more details.