sphinx.addnodesdocument)}( rawsourcechildren]( translations LanguagesNode)}(hhh](h pending_xref)}(hhh]docutils.nodesTextChinese (Simplified)}parenthsba attributes}(ids]classes]names]dupnames]backrefs] refdomainstdreftypedoc reftargetB/translations/zh_CN/userspace-api/media/v4l/vidioc-dbg-g-chip-infomodnameN classnameN refexplicitutagnamehhh ubh)}(hhh]hChinese (Traditional)}hh2sbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftargetB/translations/zh_TW/userspace-api/media/v4l/vidioc-dbg-g-chip-infomodnameN classnameN refexplicituh1hhh ubh)}(hhh]hItalian}hhFsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftargetB/translations/it_IT/userspace-api/media/v4l/vidioc-dbg-g-chip-infomodnameN classnameN refexplicituh1hhh ubh)}(hhh]hJapanese}hhZsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftargetB/translations/ja_JP/userspace-api/media/v4l/vidioc-dbg-g-chip-infomodnameN classnameN refexplicituh1hhh ubh)}(hhh]hKorean}hhnsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftargetB/translations/ko_KR/userspace-api/media/v4l/vidioc-dbg-g-chip-infomodnameN classnameN refexplicituh1hhh ubh)}(hhh]hPortuguese (Brazilian)}hhsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftargetB/translations/pt_BR/userspace-api/media/v4l/vidioc-dbg-g-chip-infomodnameN classnameN refexplicituh1hhh ubh)}(hhh]hSpanish}hhsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftargetB/translations/sp_SP/userspace-api/media/v4l/vidioc-dbg-g-chip-infomodnameN classnameN refexplicituh1hhh ubeh}(h]h ]h"]h$]h&]current_languageEnglishuh1h hh _documenthsourceNlineNubhcomment)}(h8SPDX-License-Identifier: GFDL-1.1-no-invariants-or-laterh]h8SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later}hhsbah}(h]h ]h"]h$]h&] xml:spacepreserveuh1hhhhhh\/var/lib/git/docbuild/linux/Documentation/userspace-api/media/v4l/vidioc-dbg-g-chip-info.rsthKubhtarget)}(h.. _VIDIOC_DBG_G_CHIP_INFO:h]h}(h]h ]h"]h$]h&]refidvidioc-dbg-g-chip-infouh1hhKhhhhhhubhsection)}(hhh](htitle)}(hioctl VIDIOC_DBG_G_CHIP_INFOh]hioctl VIDIOC_DBG_G_CHIP_INFO}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhhhhhKubh)}(hhh](h)}(hNameh]hName}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhhhhhK ubh paragraph)}(h8VIDIOC_DBG_G_CHIP_INFO - Identify the chips on a TV cardh]h8VIDIOC_DBG_G_CHIP_INFO - Identify the chips on a TV card}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK hhhhubeh}(h]nameah ]h"]nameah$]h&]uh1hhhhhhhhK ubh)}(hhh](h)}(hSynopsish]hSynopsis}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhhhhhKubhindex)}(hhh]h}(h]h ]h"]h$]h&]entries](single$V4L.VIDIOC_DBG_G_CHIP_INFO (C macro)c.V4L.VIDIOC_DBG_G_CHIP_INFOhNtauh1j%hjhhhNhNubhdesc)}(hhh](hdesc_signature)}(hVIDIOC_DBG_G_CHIP_INFOh]hdesc_signature_line)}(hVIDIOC_DBG_G_CHIP_INFOh]h desc_name)}(hVIDIOC_DBG_G_CHIP_INFOh]h desc_sig_name)}(hj?h]hVIDIOC_DBG_G_CHIP_INFO}(hjOhhhNhNubah}(h]h ]nah"]h$]h&]uh1jMhjIubah}(h]h ](sig-namedescnameeh"]h$]h&]hhuh1jGhjChhhhhKubah}(h]h ]h"]h$]h&]hhƌ add_permalinkuh1jAsphinx_line_type declaratorhj=hhhhhKubah}(h]j4ah ](sig sig-objecteh"]h$]h&] is_multiline _toc_parts) _toc_namehuh1j;hhhKhj8hhubh desc_content)}(hhh]h}(h]h ]h"]h$]h&]uh1jyhj8hhhhhKubeh}(h]h ](cmacroeh"]h$]h&]domainjobjtypejdesctypejnoindex noindexentrynocontentsentryuh1j6hhhjhNhNubh)}(hN``int ioctl(int fd, VIDIOC_DBG_G_CHIP_INFO, struct v4l2_dbg_chip_info *argp)``h]hliteral)}(hjh]hJint ioctl(int fd, VIDIOC_DBG_G_CHIP_INFO, struct v4l2_dbg_chip_info *argp)}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhKhjhhubeh}(h]synopsisah ]h"]synopsisah$]h&]uh1hhhhhhhhKubh)}(hhh](h)}(h Argumentsh]h Arguments}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhhhhhKubhdefinition_list)}(hhh](hdefinition_list_item)}(h5``fd`` File descriptor returned by :c:func:`open()`. h](hterm)}(h``fd``h]j)}(hjh]hfd}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1jhhhKhjubh definition)}(hhh]h)}(h-File descriptor returned by :c:func:`open()`.h](hFile descriptor returned by }(hjhhhNhNubh)}(h:c:func:`open()`h]j)}(hjh]hopen()}(hjhhhNhNubah}(h]h ](xrefjc-funceh"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]refdoc.userspace-api/media/v4l/vidioc-dbg-g-chip-info refdomainjreftypefunc refexplicitrefwarn c:parent_keysphinx.domains.c LookupKey)}data]j ASTIdentifier)} identifierV4LsbNasb reftargetopenuh1hhhhKhjubh.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhhhKhjubj)}(h9``argp`` Pointer to struct :c:type:`v4l2_dbg_chip_info`. h](j)}(h``argp``h]j)}(hjBh]hargp}(hjDhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj@ubah}(h]h ]h"]h$]h&]uh1jhhhKhj<ubj)}(hhh]h)}(h/Pointer to struct :c:type:`v4l2_dbg_chip_info`.h](hPointer to struct }(hjZhhhNhNubh)}(h:c:type:`v4l2_dbg_chip_info`h]j)}(hjdh]hv4l2_dbg_chip_info}(hjfhhhNhNubah}(h]h ](jjc-typeeh"]h$]h&]uh1jhjbubah}(h]h ]h"]h$]h&]refdocj refdomainjreftypetype refexplicitrefwarnjjj$v4l2_dbg_chip_infouh1hhhhKhjZubh.}(hjZhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjWubah}(h]h ]h"]h$]h&]uh1jhj<ubeh}(h]h ]h"]h$]h&]uh1jhhhKhjhhubeh}(h]h ]h"]h$]h&]uh1jhjhhhhhNubeh}(h] argumentsah ]h"] argumentsah$]h&]uh1hhhhhhhhKubh)}(hhh](h)}(h Descriptionh]h Description}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhhhhhK ubhnote)}(hFThis is an :ref:`experimental` interface and may change in the future.h]h)}(hFThis is an :ref:`experimental` interface and may change in the future.h](h This is an }(hjhhhNhNubh)}(h:ref:`experimental`h]hinline)}(hjh]h experimental}(hjhhhNhNubah}(h]h ](jstdstd-refeh"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]refdocj refdomainjreftyperef refexplicitrefwarnj$ experimentaluh1hhhhK$hjubh( interface and may change in the future.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK$hjubah}(h]h ]h"]h$]h&]uh1jhjhhhhhNubh)}(hXKFor driver debugging purposes this ioctl allows test applications to query the driver about the chips present on the TV card. Regular applications must not use it. When you found a chip specific bug, please contact the linux-media mailing list (`https://linuxtv.org/lists.php `__) so it can be fixed.h](hFor driver debugging purposes this ioctl allows test applications to query the driver about the chips present on the TV card. Regular applications must not use it. When you found a chip specific bug, please contact the linux-media mailing list (}(hjhhhNhNubh reference)}(hA`https://linuxtv.org/lists.php `__h]hhttps://linuxtv.org/lists.php}(hjhhhNhNubah}(h]h ]h"]h$]h&]namehttps://linuxtv.org/lists.phprefurihttps://linuxtv.org/lists.phpuh1jhjubh) so it can be fixed.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK'hjhhubh)}(hoAdditionally the Linux kernel must be compiled with the ``CONFIG_VIDEO_ADV_DEBUG`` option to enable this ioctl.h](h8Additionally the Linux kernel must be compiled with the }(hjhhhNhNubj)}(h``CONFIG_VIDEO_ADV_DEBUG``h]hCONFIG_VIDEO_ADV_DEBUG}(hj$hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh option to enable this ioctl.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK.hjhhubh)}(hXHTo query the driver applications must initialize the ``match.type`` and ``match.addr`` or ``match.name`` fields of a struct :c:type:`v4l2_dbg_chip_info` and call :ref:`VIDIOC_DBG_G_CHIP_INFO` with a pointer to this structure. On success the driver stores information about the selected chip in the ``name`` and ``flags`` fields.h](h5To query the driver applications must initialize the }(hj<hhhNhNubj)}(h``match.type``h]h match.type}(hjDhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj<ubh and }(hj<hhhNhNubj)}(h``match.addr``h]h match.addr}(hjVhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj<ubh or }(hj<hhhNhNubj)}(h``match.name``h]h match.name}(hjhhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj<ubh fields of a struct }(hj<hhhNhNubh)}(h:c:type:`v4l2_dbg_chip_info`h]j)}(hj|h]hv4l2_dbg_chip_info}(hj~hhhNhNubah}(h]h ](jjc-typeeh"]h$]h&]uh1jhjzubah}(h]h ]h"]h$]h&]refdocj refdomainjreftypetype refexplicitrefwarnjjj$v4l2_dbg_chip_infouh1hhhhK1hj<ubh and call }(hj<hhhNhNubh)}(h:ref:`VIDIOC_DBG_G_CHIP_INFO`h]j)}(hjh]hVIDIOC_DBG_G_CHIP_INFO}(hjhhhNhNubah}(h]h ](jstdstd-refeh"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]refdocj refdomainjreftyperef refexplicitrefwarnj$vidioc_dbg_g_chip_infouh1hhhhK1hj<ubhk with a pointer to this structure. On success the driver stores information about the selected chip in the }(hj<hhhNhNubj)}(h``name``h]hname}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj<ubh and }(hj<hhhNhNubj)}(h ``flags``h]hflags}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj<ubh fields.}(hj<hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK1hjhhubh)}(hXWhen ``match.type`` is ``V4L2_CHIP_MATCH_BRIDGE``, ``match.addr`` selects the nth bridge 'chip' on the TV card. You can enumerate all chips by starting at zero and incrementing ``match.addr`` by one until :ref:`VIDIOC_DBG_G_CHIP_INFO` fails with an ``EINVAL`` error code. The number zero always selects the bridge chip itself, e. g. the chip connected to the PCI or USB bus. Non-zero numbers identify specific parts of the bridge chip such as an AC97 register block.h](hWhen }(hjhhhNhNubj)}(h``match.type``h]h match.type}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh is }(hjhhhNhNubj)}(h``V4L2_CHIP_MATCH_BRIDGE``h]hV4L2_CHIP_MATCH_BRIDGE}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh, }(hjhhhNhNubj)}(h``match.addr``h]h match.addr}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubht selects the nth bridge ‘chip’ on the TV card. You can enumerate all chips by starting at zero and incrementing }(hjhhhNhNubj)}(h``match.addr``h]h match.addr}(hj)hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh by one until }(hjhhhNhNubh)}(h:ref:`VIDIOC_DBG_G_CHIP_INFO`h]j)}(hj=h]hVIDIOC_DBG_G_CHIP_INFO}(hj?hhhNhNubah}(h]h ](jstdstd-refeh"]h$]h&]uh1jhj;ubah}(h]h ]h"]h$]h&]refdocj refdomainjIreftyperef refexplicitrefwarnj$vidioc_dbg_g_chip_infouh1hhhhK8hjubh fails with an }(hjhhhNhNubj)}(h ``EINVAL``h]hEINVAL}(hj_hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh error code. The number zero always selects the bridge chip itself, e. g. the chip connected to the PCI or USB bus. Non-zero numbers identify specific parts of the bridge chip such as an AC97 register block.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK8hjhhubh)}(hWhen ``match.type`` is ``V4L2_CHIP_MATCH_SUBDEV``, ``match.addr`` selects the nth sub-device. This allows you to enumerate over all sub-devices.h](hWhen }(hjwhhhNhNubj)}(h``match.type``h]h match.type}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjwubh is }(hjwhhhNhNubj)}(h``V4L2_CHIP_MATCH_SUBDEV``h]hV4L2_CHIP_MATCH_SUBDEV}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjwubh, }(hjwhhhNhNubj)}(h``match.addr``h]h match.addr}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjwubhO selects the nth sub-device. This allows you to enumerate over all sub-devices.}(hjwhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK@hjhhubh)}(hXOn success, the ``name`` field will contain a chip name and the ``flags`` field will contain ``V4L2_CHIP_FL_READABLE`` if the driver supports reading registers from the device or ``V4L2_CHIP_FL_WRITABLE`` if the driver supports writing registers to the device.h](hOn success, the }(hjhhhNhNubj)}(h``name``h]hname}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh( field will contain a chip name and the }(hjhhhNhNubj)}(h ``flags``h]hflags}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh field will contain }(hjhhhNhNubj)}(h``V4L2_CHIP_FL_READABLE``h]hV4L2_CHIP_FL_READABLE}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh= if the driver supports reading registers from the device or }(hjhhhNhNubj)}(h``V4L2_CHIP_FL_WRITABLE``h]hV4L2_CHIP_FL_WRITABLE}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh8 if the driver supports writing registers to the device.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKDhjhhubh)}(hWe recommended the v4l2-dbg utility over calling this ioctl directly. It is available from the LinuxTV v4l-dvb repository; see `https://linuxtv.org/repo/ `__ for access instructions.h](hWe recommended the v4l2-dbg utility over calling this ioctl directly. It is available from the LinuxTV v4l-dvb repository; see }(hjhhhNhNubj)}(h9`https://linuxtv.org/repo/ `__h]hhttps://linuxtv.org/repo/}(hjhhhNhNubah}(h]h ]h"]h$]h&]namehttps://linuxtv.org/repo/jhttps://linuxtv.org/repo/uh1jhjubh for access instructions.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKIhjhhubhtabular_col_spec)}(hhh]h}(h]h ]h"]h$]h&]spec%|p{3.5cm}|p{3.5cm}|p{3.5cm}|p{6.6cm}|uh1j4hhhKNhjhhubh)}(h.. _name-v4l2-dbg-match:h]h}(h]h ]h"]h$]h&]hԌname-v4l2-dbg-matchuh1hhKPhjhhhhubhtable)}(hhh](h)}(hstruct v4l2_dbg_matchh]hstruct v4l2_dbg_match}(hjQhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKRhjNubhtgroup)}(hhh](hcolspec)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jdhjaubje)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jdhjaubje)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jdhjaubhtbody)}(hhh](hrow)}(hhh](hentry)}(hhh]h)}(h__u32h]h__u32}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKWhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h``type``h]j)}(hjh]htype}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhKXhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h>See :ref:`name-chip-match-types` for a list of possible types.h](hSee }(hjhhhNhNubh)}(h:ref:`name-chip-match-types`h]j)}(hjh]hname-chip-match-types}(hjhhhNhNubah}(h]h ](jstdstd-refeh"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]refdocj refdomainjreftyperef refexplicitrefwarnj$name-chip-match-typesuh1hhhhKYhjubh for a list of possible types.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKYhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(hunion {h]hunion {}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKZhj ubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h (anonymous)h]h (anonymous)}(hj%hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK[hj"ubah}(h]h ]h"]h$]h&]morecolsKuh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(h__u32h]h__u32}(hjFhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK\hjCubah}(h]h ]h"]h$]h&]uh1jhj@ubj)}(hhh]h)}(h``addr``h]j)}(hj_h]haddr}(hjahhhNhNubah}(h]h ]h"]h$]h&]uh1jhj]ubah}(h]h ]h"]h$]h&]uh1hhhhK]hjZubah}(h]h ]h"]h$]h&]uh1jhj@ubj)}(hhh]h)}(hIMatch a chip by this number, interpreted according to the ``type`` field.h](h:Match a chip by this number, interpreted according to the }(hj}hhhNhNubj)}(h``type``h]htype}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhj}ubh field.}(hj}hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK^hjzubah}(h]h ]h"]h$]h&]uh1jhj@ubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(hcharh]hchar}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK`hjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h ``name[32]``h]j)}(hjh]hname[32]}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhKahjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(hYMatch a chip by this name, interpreted according to the ``type`` field. Currently unused.h](h8Match a chip by this name, interpreted according to the }(hjhhhNhNubj)}(h``type``h]htype}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh field. Currently unused.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKbhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(h}h]h}}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKdhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h}(h]h ]h"]h$]h&]morecolsKuh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjaubeh}(h]h ]h"]h$]h&]colsKuh1j_hjNubeh}(h](id1jKeh ]h"]name-v4l2-dbg-matchah$]h&]uh1jLhjhhhNhNexpect_referenced_by_name}jNjAsexpect_referenced_by_id}jKjAsubj5)}(hhh]h}(h]h ]h"]h$]h&]j?|p{4.4cm}|p{4.4cm}|p{8.5cm}|uh1j4hhhKhhjhhubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2V4L.v4l2_dbg_chip_info (C type)c.V4L.v4l2_dbg_chip_infohNtauh1j%hjhhhNhNubj7)}(hhh](j<)}(hv4l2_dbg_chip_infoh]jB)}(htype v4l2_dbg_chip_infoh](hdesc_sig_keyword)}(htypeh]htype}(hjzhhhNhNubah}(h]h ]kah"]h$]h&]uh1jxhjthhhhhKjubhdesc_sig_space)}(h h]h }(hjhhhNhNubah}(h]h ]wah"]h$]h&]uh1jhjthhhhhKjubjH)}(hv4l2_dbg_chip_infoh]jN)}(hjrh]hv4l2_dbg_chip_info}(hjhhhNhNubah}(h]h ]jYah"]h$]h&]uh1jMhjubah}(h]h ](j`jaeh"]h$]h&]hhuh1jGhjthhhhhKjubeh}(h]h ]h"]h$]h&]hhjkuh1jAjljmhjphhhhhKjubah}(h]jkah ](jqjreh"]h$]h&]jvjw)jxhuh1j;hhhKjhjmhhubjz)}(hhh]h}(h]h ]h"]h$]h&]uh1jyhjmhhhhhKjubeh}(h]h ](jtypeeh"]h$]h&]jjjjjjjjjuh1j6hhhjhNhNubjM)}(hhh](h)}(hstruct v4l2_dbg_chip_infoh]hstruct v4l2_dbg_chip_info}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKlhjubj`)}(hhh](je)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jdhjubje)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jdhjubje)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jdhjubj)}(hhh](j)}(hhh](j)}(hhh]h)}(hstruct v4l2_dbg_matchh]hstruct v4l2_dbg_match}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKqhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h ``match``h]j)}(hj!h]hmatch}(hj#hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhKrhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h6How to match the chip, see :ref:`name-v4l2-dbg-match`.h](hHow to match the chip, see }(hj?hhhNhNubh)}(h:ref:`name-v4l2-dbg-match`h]j)}(hjIh]hname-v4l2-dbg-match}(hjKhhhNhNubah}(h]h ](jstdstd-refeh"]h$]h&]uh1jhjGubah}(h]h ]h"]h$]h&]refdocj refdomainjUreftyperef refexplicitrefwarnj$name-v4l2-dbg-matchuh1hhhhKshj?ubh.}(hj?hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKshj<ubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(hcharh]hchar}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKthjubah}(h]h ]h"]h$]h&]uh1jhj}ubj)}(hhh]h)}(h ``name[32]``h]j)}(hjh]hname[32]}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhKuhjubah}(h]h ]h"]h$]h&]uh1jhj}ubj)}(hhh]h)}(hThe name of the chip.h]hThe name of the chip.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKvhjubah}(h]h ]h"]h$]h&]uh1jhj}ubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(h__u32h]h__u32}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKwhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h ``flags``h]j)}(hjh]hflags}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhKxhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(hSet by the driver. If ``V4L2_CHIP_FL_READABLE`` is set, then the driver supports reading registers from the device. If ``V4L2_CHIP_FL_WRITABLE`` is set, then it supports writing registers.h](hSet by the driver. If }(hj hhhNhNubj)}(h``V4L2_CHIP_FL_READABLE``h]hV4L2_CHIP_FL_READABLE}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubhH is set, then the driver supports reading registers from the device. If }(hj hhhNhNubj)}(h``V4L2_CHIP_FL_WRITABLE``h]hV4L2_CHIP_FL_WRITABLE}(hj+ hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubh, is set, then it supports writing registers.}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKyhj ubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(h__u32h]h__u32}(hjU hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK}hjR ubah}(h]h ]h"]h$]h&]uh1jhjO ubj)}(hhh]h)}(h``reserved[8]``h]j)}(hjn h]h reserved[8]}(hjp hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjl ubah}(h]h ]h"]h$]h&]uh1hhhhK~hji ubah}(h]h ]h"]h$]h&]uh1jhjO ubj)}(hhh]h)}(hAReserved fields, both application and driver must set these to 0.h]hAReserved fields, both application and driver must set these to 0.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj ubah}(h]h ]h"]h$]h&]uh1jhjO ubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]colsKuh1j_hjubeh}(h]id2ah ]h"]h$]h&]uh1jLhjhhhNhNubj5)}(hhh]h}(h]h ]h"]h$]h&]j?|p{6.6cm}|p{2.2cm}|p{8.5cm}|uh1j4hhhKhjhhubh)}(h.. _name-chip-match-types:h]h}(h]h ]h"]h$]h&]hԌname-chip-match-typesuh1hhKhjhhhhubjM)}(hhh](h)}(hChip Match Typesh]hChip Match Types}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj ubj`)}(hhh](je)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jdhj ubje)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jdhj ubje)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jdhj ubj)}(hhh](j)}(hhh](j)}(hhh]h)}(h``V4L2_CHIP_MATCH_BRIDGE``h]j)}(hj h]hV4L2_CHIP_MATCH_BRIDGE}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]uh1hhhhKhj ubah}(h]h ]h"]h$]h&]uh1jhj ubj)}(hhh]h)}(h0h]h0}(hj* hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj' ubah}(h]h ]h"]h$]h&]uh1jhj ubj)}(hhh]h)}(hUMatch the nth chip on the card, zero for the bridge chip. Does not match sub-devices.h]hUMatch the nth chip on the card, zero for the bridge chip. Does not match sub-devices.}(hjA hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj> ubah}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jhj ubj)}(hhh](j)}(hhh]h)}(h``V4L2_CHIP_MATCH_SUBDEV``h]j)}(hjc h]hV4L2_CHIP_MATCH_SUBDEV}(hje hhhNhNubah}(h]h ]h"]h$]h&]uh1jhja ubah}(h]h ]h"]h$]h&]uh1hhhhKhj^ ubah}(h]h ]h"]h$]h&]uh1jhj[ ubj)}(hhh]h)}(h4h]h4}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj~ ubah}(h]h ]h"]h$]h&]uh1jhj[ ubj)}(hhh]h)}(hMatch the nth sub-device.h]hMatch the nth sub-device.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKhj ubah}(h]h ]h"]h$]h&]uh1jhj[ ubeh}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]colsKuh1j_hj ubeh}(h](id3j eh ]h"]name-chip-match-typesah$]h&]uh1jLhjhhhNhNjQ}j j sjS}j j subeh}(h] descriptionah ]h"] descriptionah$]h&]uh1hhhhhhhhK ubh)}(hhh](h)}(h Return Valueh]h Return Value}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj hhhhhKubh)}(hOn 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 ` chapter.h](h.On success 0 is returned, on error -1 and the }(hj hhhNhNubj)}(h ``errno``h]herrno}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj ubhM variable is set appropriately. The generic error codes are described at the }(hj hhhNhNubh)}(h':ref:`Generic Error Codes `h]j)}(hj h]hGeneric Error Codes}(hj hhhNhNubah}(h]h ](jstdstd-refeh"]h$]h&]uh1jhj ubah}(h]h ]h"]h$]h&]refdocj refdomainj reftyperef refexplicitrefwarnj$ gen-errorsuh1hhhhKhj ubh chapter.}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj hhubj)}(hhh]j)}(hCEINVAL The ``match_type`` is invalid or no device could be matched.h](j)}(hEINVALh]hEINVAL}(hj- hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhj) ubj)}(hhh]h)}(h hhhNhNubj)}(h``match_type``h]h match_type}(hjF hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj> ubh* is invalid or no device could be matched.}(hj> hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhj; ubah}(h]h ]h"]h$]h&]uh1jhj) ubeh}(h]h ]h"]h$]h&]uh1jhhhKhj& ubah}(h]h ]h"]h$]h&]uh1jhj hhhhhNubeh}(h] return-valueah ]h"] return valueah$]h&]uh1hhhhhhhhKubeh}(h](ioctl-vidioc-dbg-g-chip-infoheh ]h"](ioctl vidioc_dbg_g_chip_infovidioc_dbg_g_chip_infoeh$]h&]uh1hhhhhhhhKjQ}j~ hsjS}hhsubeh}(h]h ]h"]h$]h&]sourcehuh1hcurrent_sourceN current_lineNsettingsdocutils.frontendValues)}(hN generatorN datestampN source_linkN source_urlN toc_backlinksjfootnote_backlinksK sectnum_xformKstrip_commentsNstrip_elements_with_classesN strip_classesN report_levelK halt_levelKexit_status_levelKdebugNwarning_streamN tracebackinput_encoding utf-8-siginput_encoding_error_handlerstrictoutput_encodingutf-8output_encoding_error_handlerj error_encodingutf-8error_encoding_error_handlerbackslashreplace language_codeenrecord_dependenciesNconfigN id_prefixhauto_id_prefixid dump_settingsNdump_internalsNdump_transformsNdump_pseudo_xmlNexpose_internalsNstrict_visitorN_disable_configN_sourcehnj _destinationN _config_files]7/var/lib/git/docbuild/linux/Documentation/docutils.confafile_insertion_enabled raw_enabledKline_length_limitM'pep_referencesN pep_base_urlhttps://peps.python.org/pep_file_url_templatepep-%04drfc_referencesN rfc_base_url&https://datatracker.ietf.org/doc/html/ tab_widthKtrim_footnote_reference_spacesyntax_highlightlong smart_quotessmartquotes_locales]character_level_inline_markupdoctitle_xform docinfo_xformKsectsubtitle_xform image_loadinglinkembed_stylesheetcloak_email_addressessection_self_linkenvNubreporterNindirect_targets]substitution_defs}substitution_names}refnames}refids}(h]hajK]jAaj ]j aunameids}(j~ hj} jz jjjjjjj j jNjKj j ju jr u nametypes}(j~ j} jjjj jNj ju uh}(hhjz hjhjjj4j=jjj jjKjNjkjpj j jr j jKjNj jj j u footnote_refs} citation_refs} autofootnotes]autofootnote_refs]symbol_footnotes]symbol_footnote_refs] footnotes] citations]autofootnote_startKsymbol_footnote_startK id_counter collectionsCounter}j KsRparse_messages]hsystem_message)}(hhh]h)}(heUnexpected possible title overline or transition. Treating it as ordinary text because it's so short.h]hgUnexpected possible title overline or transition. Treating it as ordinary text because it’s so short.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj ubah}(h]h ]h"]h$]h&]levelKtypeINFOlineKdsourcehuh1j hjubatransform_messages](j )}(hhh]h)}(hhh]h