From patchwork Tue Sep 25 14:53:53 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Mauro Carvalho Chehab X-Patchwork-Id: 10614125 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 5A31D6CB for ; Tue, 25 Sep 2018 14:54:14 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 47F1328F82 for ; Tue, 25 Sep 2018 14:54:14 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 45E142A69E; Tue, 25 Sep 2018 14:54:14 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-7.8 required=2.0 tests=BAYES_00,DKIM_SIGNED, MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI,T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 75DE228F82 for ; Tue, 25 Sep 2018 14:54:11 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729272AbeIYVCC (ORCPT ); Tue, 25 Sep 2018 17:02:02 -0400 Received: from bombadil.infradead.org ([198.137.202.133]:33160 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729098AbeIYVCB (ORCPT ); Tue, 25 Sep 2018 17:02:01 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc: To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help: List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=v2zkloqTlRtQCapYQzRyig938Sd17S6yAzdvIX4YITk=; b=Mkwo/AkztAayqnTcYzXgbXH0+1 vatXCQ34wIgqUrqYh/jbvxrolfUiHmiCqbBpvr1BKpJ8w9wLiMsb9eEZhtXkWzVc4eNKmPDSl4nQ/ XoJmsuYbct+EndvCVWqMnYFY+mDOjDfFkCXIynSYQ88B2DiaTlFAmfSizVRQoNPwUWe2E5wTNQVMt XTx/Y+M80QxVP1dXoQe3n3ygoOpYPsHZnINKPbudrPEjNeIrL1BcE4e8+9MgAC3I34aJQ/dh/7LcB HYyWq8FOs39r1B+wkmWrMhWmb9CBsCSlZAB0+hpyS02HD7uFzmgVepawuFw8vO9xX75s7/HpAkqOY YoC01GIw==; Received: from 177.43.23.201.dynamic.adsl.gvt.net.br ([177.43.23.201] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtpsa (Exim 4.90_1 #2 (Red Hat Linux)) id 1g4oiu-0001Ks-3y; Tue, 25 Sep 2018 14:54:09 +0000 Received: from mchehab by bombadil.infradead.org with local (Exim 4.91) (envelope-from ) id 1g4oir-0008Hk-ON; Tue, 25 Sep 2018 11:53:57 -0300 From: Mauro Carvalho Chehab To: Linux Media Mailing List Cc: Mauro Carvalho Chehab , Mauro Carvalho Chehab , Mauro Carvalho Chehab Subject: [PATCH v2] media: docs: add glossary.rst with common terms used at V4L2 spec Date: Tue, 25 Sep 2018 11:53:53 -0300 Message-Id: <564f8903b2eead7a8b75becbe0f30d820a7b8615.1537886957.git.mchehab+samsung@kernel.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180925110643.5ba20bda@coco.lan> References: <20180925110643.5ba20bda@coco.lan> MIME-Version: 1.0 Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP From: Mauro Carvalho Chehab Add a glossary of terms for V4L2, as several concepts are complex enough to cause misunderstandings. Signed-off-by: Mauro Carvalho Chehab --- v2.: Did some changes based on Sakari's feedback. Documentation/media/media_uapi.rst | 2 + Documentation/media/uapi/v4l/glossary.rst | 118 ++++++++++++++++++++++ Documentation/media/uapi/v4l/v4l2.rst | 1 + 3 files changed, 121 insertions(+) create mode 100644 Documentation/media/uapi/v4l/glossary.rst diff --git a/Documentation/media/media_uapi.rst b/Documentation/media/media_uapi.rst index 28eb35a1f965..aebe48b98ad3 100644 --- a/Documentation/media/media_uapi.rst +++ b/Documentation/media/media_uapi.rst @@ -2,6 +2,8 @@ .. include:: +.. _media_uapi: + ######################################## Linux Media Infrastructure userspace API ######################################## diff --git a/Documentation/media/uapi/v4l/glossary.rst b/Documentation/media/uapi/v4l/glossary.rst new file mode 100644 index 000000000000..d91833255404 --- /dev/null +++ b/Documentation/media/uapi/v4l/glossary.rst @@ -0,0 +1,118 @@ +======== +Glossary +======== + +.. note:: + + This goal of section is to standardize the terms used within the media + userspace API documentation. It is written incrementally as they are + standardized in the media documentation. So, it is a Work In Progress. + +.. Please keep the glossary entries in alphabetical order + +.. glossary:: + + Bridge driver + The same as V4L2 main driver. + + Device Node + A character device node in the file system used to control and do + input/output data transfers from/to a Kernel driver. + + Digital Signal Processor - DSP + A specialized microprocessor, with its architecture optimized for + the operational needs of digital signal processing. + + Driver + The part of the Linux Kernel that implements support + for a hardware component. + + Field-programmable Gate Array - FPGA + A field-programmable gate array (FPGA) is an integrated circuit + designed to be configured by a customer or a designer after + manufacturing. + + See https://en.wikipedia.org/wiki/Field-programmable_gate_array. + + Inter-Integrated Circuit - I²C + A multi-master, multi-slave, packet switched, single-ended, + serial computer bus used to control V4L2 sub-devices. + + See http://www.nxp.com/docs/en/user-guide/UM10204.pdf. + + Integrated circuit - IC + A set of electronic circuits on one small flat piece of + semiconductor material, normally silicon. + + Also known as chip. + + Intelectual property core - IP block + In electronic design a semiconductor intellectual property core, + is a reusable unit of logic, cell, or integrated circuit layout + design that is the intellectual property of one party. + IP cores may be licensed to another party or can be owned + and used by a single party alone. + + See https://en.wikipedia.org/wiki/Semiconductor_intellectual_property_core). + + Image Signal Processor - ISP + A specialised processor that implements a set of algorithms for + processing image data. ISPs may implement algorithms for lens + shading correction, demosaic, scaling and pixel format conversion + as well as produce statistics for the use of the control + algorithms (e.g. automatic exposure, white balance and focus). + + Media Controller + An API designed to expose and control devices and sub-devices' + relationships to applications. + + See :ref:`media_controller`. + + Media Hardware + The parts of a hardware that are supported by the Linux + media API (see :ref:`media_uapi`). + + Includes audio and video capture and playback hardware, + digital and analog TV, camera sensors, ISPs, remote controllers, + codecs, HDMI Consumer Electronics Control, HDMI capture, etc. + + Microprocessor + An electronic circuitry that carries out the instructions + of a computer program by performing the basic arithmetic, logical, + control and input/output (I/O) operations specified by the + instructions on a single integrated circuit. + + SMBus + A subset of I²C, with defines a stricter usage of the bus. + + Serial Peripheral Interface Bus - SPI + Synchronous serial communication interface specification used for + short distance communication, primarily in embedded systems. + + System on a Chip - SoC + An integrated circuit that integrates all components of a computer + or other electronic systems. + + Sub-device hardware components + V4L2 hardware components that aren't controlled by the + V4L2 main driver. + + V4L2 userspace API - V4L2 API + The userspace API defined at :ref:`v4l2spec`, with is used + to control a V4L2 hardware. + + V4L2 hardware + Part of the media hardware with is supported by the V4L2 + userspace API. + + V4L2 main driver + The V4L2 device driver that implements the main logic to talk with + a V4L2 hardware. + + Also known as bridge driver. + + V4L2 sub-device + Part of the media hardware that it is implemented by a device + driver that is not part of the main V4L2 driver. + + See :ref:`subdev`. diff --git a/Documentation/media/uapi/v4l/v4l2.rst b/Documentation/media/uapi/v4l/v4l2.rst index b89e5621ae69..74b397a8d033 100644 --- a/Documentation/media/uapi/v4l/v4l2.rst +++ b/Documentation/media/uapi/v4l/v4l2.rst @@ -32,6 +32,7 @@ This part describes the Video for Linux API version 2 (V4L2 API) specification. videodev capture-example v4l2grab-example + glossary biblio