sphinx.addnodesdocument)}( rawsourcechildren]( translations LanguagesNode)}(hhh](h pending_xref)}(hhh]docutils.nodesTextChinese (Simplified)}parenthsba attributes}(ids]classes]names]dupnames]backrefs] refdomainstdreftypedoc reftarget*/translations/zh_CN/admin-guide/media/mgb4modnameN classnameN refexplicitutagnamehhh ubh)}(hhh]hChinese (Traditional)}hh2sbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget*/translations/zh_TW/admin-guide/media/mgb4modnameN classnameN refexplicituh1hhh ubh)}(hhh]hItalian}hhFsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget*/translations/it_IT/admin-guide/media/mgb4modnameN classnameN refexplicituh1hhh ubh)}(hhh]hJapanese}hhZsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget*/translations/ja_JP/admin-guide/media/mgb4modnameN classnameN refexplicituh1hhh ubh)}(hhh]hKorean}hhnsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget*/translations/ko_KR/admin-guide/media/mgb4modnameN classnameN refexplicituh1hhh ubh)}(hhh]hSpanish}hhsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget*/translations/sp_SP/admin-guide/media/mgb4modnameN classnameN refexplicituh1hhh ubeh}(h]h ]h"]h$]h&]current_languageEnglishuh1h hh _documenthsourceNlineNubhcomment)}(h SPDX-License-Identifier: GPL-2.0h]h SPDX-License-Identifier: GPL-2.0}hhsbah}(h]h ]h"]h$]h&] xml:spacepreserveuh1hhhhhhD/var/lib/git/docbuild/linux/Documentation/admin-guide/media/mgb4.rsthKubh)}(h4This data file has been placed in the public domain.h]h4This data file has been placed in the public domain.}hhsbah}(h]h ]h"]h$]h&]hhuh1hhhhhho/srv/docbuild/lib/venvs/build-kernel-docs/lib64/python3.9/site-packages/docutils/parsers/rst/include/isonum.txthKubh)}(hDerived from the Unicode character mappings available from . Processed by unicode2rstsubs.py, part of Docutils: .h]hDerived from the Unicode character mappings available from . Processed by unicode2rstsubs.py, part of Docutils: .}hhsbah}(h]h ]h"]h$]h&]hhuh1hhhhhhhhKubhsubstitution_definition)}(h*.. |amp| unicode:: U+00026 .. AMPERSANDh]h&}hhsbah}(h]h ]h"]ampah$]h&]uh1hhhhKhhhhubh)}(h+.. |apos| unicode:: U+00027 .. APOSTROPHEh]h'}hhsbah}(h]h ]h"]aposah$]h&]uh1hhhhKhhhhubh)}(h).. |ast| unicode:: U+0002A .. ASTERISKh]h*}hhsbah}(h]h ]h"]astah$]h&]uh1hhhhK hhhhubh)}(h+.. |brvbar| unicode:: U+000A6 .. BROKEN BARh]h¦}hjsbah}(h]h ]h"]brvbarah$]h&]uh1hhhhK hhhhubh)}(h0.. |bsol| unicode:: U+0005C .. REVERSE SOLIDUSh]h\}hjsbah}(h]h ]h"]bsolah$]h&]uh1hhhhK hhhhubh)}(h*.. |cent| unicode:: U+000A2 .. CENT SIGNh]h¢}hjsbah}(h]h ]h"]centah$]h&]uh1hhhhK hhhhubh)}(h&.. |colon| unicode:: U+0003A .. COLONh]h:}hj-sbah}(h]h ]h"]colonah$]h&]uh1hhhhK hhhhubh)}(h&.. |comma| unicode:: U+0002C .. COMMAh]h,}hj<sbah}(h]h ]h"]commaah$]h&]uh1hhhhKhhhhubh)}(h... |commat| unicode:: U+00040 .. COMMERCIAL ATh]h@}hjKsbah}(h]h ]h"]commatah$]h&]uh1hhhhKhhhhubh)}(h/.. |copy| unicode:: U+000A9 .. COPYRIGHT SIGNh]h©}hjZsbah}(h]h ]h"]copyah$]h&]uh1hhhhKhhhhubh)}(h... |curren| unicode:: U+000A4 .. CURRENCY SIGNh]h¤}hjisbah}(h]h ]h"]currenah$]h&]uh1hhhhKhhhhubh)}(h0.. |darr| unicode:: U+02193 .. DOWNWARDS ARROWh]h↓}hjxsbah}(h]h ]h"]darrah$]h&]uh1hhhhKhhhhubh)}(h,.. |deg| unicode:: U+000B0 .. DEGREE SIGNh]h°}hjsbah}(h]h ]h"]degah$]h&]uh1hhhhKhhhhubh)}(h... |divide| unicode:: U+000F7 .. DIVISION SIGNh]h÷}hjsbah}(h]h ]h"]divideah$]h&]uh1hhhhKhhhhubh)}(h,.. |dollar| unicode:: U+00024 .. DOLLAR SIGNh]h$}hjsbah}(h]h ]h"]dollarah$]h&]uh1hhhhKhhhhubh)}(h,.. |equals| unicode:: U+0003D .. EQUALS SIGNh]h=}hjsbah}(h]h ]h"]equalsah$]h&]uh1hhhhKhhhhubh)}(h1.. |excl| unicode:: U+00021 .. EXCLAMATION MARKh]h!}hjsbah}(h]h ]h"]exclah$]h&]uh1hhhhKhhhhubh)}(h9.. |frac12| unicode:: U+000BD .. VULGAR FRACTION ONE HALFh]h½}hjsbah}(h]h ]h"]frac12ah$]h&]uh1hhhhKhhhhubh)}(h<.. |frac14| unicode:: U+000BC .. VULGAR FRACTION ONE QUARTERh]h¼}hjsbah}(h]h ]h"]frac14ah$]h&]uh1hhhhKhhhhubh)}(h;.. |frac18| unicode:: U+0215B .. VULGAR FRACTION ONE EIGHTHh]h⅛}hjsbah}(h]h ]h"]frac18ah$]h&]uh1hhhhKhhhhubh)}(h?.. |frac34| unicode:: U+000BE .. VULGAR FRACTION THREE QUARTERSh]h¾}hjsbah}(h]h ]h"]frac34ah$]h&]uh1hhhhKhhhhubh)}(h>.. |frac38| unicode:: U+0215C .. VULGAR FRACTION THREE EIGHTHSh]h⅜}hjsbah}(h]h ]h"]frac38ah$]h&]uh1hhhhKhhhhubh)}(h=.. |frac58| unicode:: U+0215D .. VULGAR FRACTION FIVE EIGHTHSh]h⅝}hjsbah}(h]h ]h"]frac58ah$]h&]uh1hhhhKhhhhubh)}(h>.. |frac78| unicode:: U+0215E .. VULGAR FRACTION SEVEN EIGHTHSh]h⅞}hj,sbah}(h]h ]h"]frac78ah$]h&]uh1hhhhKhhhhubh)}(h2.. |gt| unicode:: U+0003E .. GREATER-THAN SIGNh]h>}hj;sbah}(h]h ]h"]gtah$]h&]uh1hhhhKhhhhubh)}(h9.. |half| unicode:: U+000BD .. VULGAR FRACTION ONE HALFh]h½}hjJsbah}(h]h ]h"]halfah$]h&]uh1hhhhK hhhhubh)}(h/.. |horbar| unicode:: U+02015 .. HORIZONTAL BARh]h―}hjYsbah}(h]h ]h"]horbarah$]h&]uh1hhhhK!hhhhubh)}(h'.. |hyphen| unicode:: U+02010 .. HYPHENh]h‐}hjhsbah}(h]h ]h"]hyphenah$]h&]uh1hhhhK"hhhhubh)}(h:.. |iexcl| unicode:: U+000A1 .. INVERTED EXCLAMATION MARKh]h¡}hjwsbah}(h]h ]h"]iexclah$]h&]uh1hhhhK#hhhhubh)}(h7.. |iquest| unicode:: U+000BF .. INVERTED QUESTION MARKh]h¿}hjsbah}(h]h ]h"]iquestah$]h&]uh1hhhhK$hhhhubh)}(hJ.. |laquo| unicode:: U+000AB .. LEFT-POINTING DOUBLE ANGLE QUOTATION MARKh]h«}hjsbah}(h]h ]h"]laquoah$]h&]uh1hhhhK%hhhhubh)}(h0.. |larr| unicode:: U+02190 .. LEFTWARDS ARROWh]h←}hjsbah}(h]h ]h"]larrah$]h&]uh1hhhhK&hhhhubh)}(h3.. |lcub| unicode:: U+0007B .. LEFT CURLY BRACKETh]h{}hjsbah}(h]h ]h"]lcubah$]h&]uh1hhhhK'hhhhubh)}(h;.. |ldquo| unicode:: U+0201C .. LEFT DOUBLE QUOTATION MARKh]h“}hjsbah}(h]h ]h"]ldquoah$]h&]uh1hhhhK(hhhhubh)}(h).. |lowbar| unicode:: U+0005F .. LOW LINEh]h_}hjsbah}(h]h ]h"]lowbarah$]h&]uh1hhhhK)hhhhubh)}(h1.. |lpar| unicode:: U+00028 .. LEFT PARENTHESISh]h(}hjsbah}(h]h ]h"]lparah$]h&]uh1hhhhK*hhhhubh)}(h4.. |lsqb| unicode:: U+0005B .. LEFT SQUARE BRACKETh]h[}hjsbah}(h]h ]h"]lsqbah$]h&]uh1hhhhK+hhhhubh)}(h;.. |lsquo| unicode:: U+02018 .. LEFT SINGLE QUOTATION MARKh]h‘}hjsbah}(h]h ]h"]lsquoah$]h&]uh1hhhhK,hhhhubh)}(h/.. |lt| unicode:: U+0003C .. LESS-THAN SIGNh]h<}hj sbah}(h]h ]h"]ltah$]h&]uh1hhhhK-hhhhubh)}(h+.. |micro| unicode:: U+000B5 .. MICRO SIGNh]hµ}hjsbah}(h]h ]h"]microah$]h&]uh1hhhhK.hhhhubh)}(h+.. |middot| unicode:: U+000B7 .. MIDDLE DOTh]h·}hj+sbah}(h]h ]h"]middotah$]h&]uh1hhhhK/hhhhubh)}(h/.. |nbsp| unicode:: U+000A0 .. NO-BREAK SPACEh]h }hj:sbah}(h]h ]h"]nbspah$]h&]uh1hhhhK0hhhhubh)}(h).. |not| unicode:: U+000AC .. NOT SIGNh]h¬}hjIsbah}(h]h ]h"]notah$]h&]uh1hhhhK1hhhhubh)}(h,.. |num| unicode:: U+00023 .. NUMBER SIGNh]h#}hjXsbah}(h]h ]h"]numah$]h&]uh1hhhhK2hhhhubh)}(h).. |ohm| unicode:: U+02126 .. OHM SIGNh]hΩ}hjgsbah}(h]h ]h"]ohmah$]h&]uh1hhhhK3hhhhubh)}(h;.. |ordf| unicode:: U+000AA .. FEMININE ORDINAL INDICATORh]hª}hjvsbah}(h]h ]h"]ordfah$]h&]uh1hhhhK4hhhhubh)}(h<.. |ordm| unicode:: U+000BA .. MASCULINE ORDINAL INDICATORh]hº}hjsbah}(h]h ]h"]ordmah$]h&]uh1hhhhK5hhhhubh)}(h-.. |para| unicode:: U+000B6 .. PILCROW SIGNh]h¶}hjsbah}(h]h ]h"]paraah$]h&]uh1hhhhK6hhhhubh)}(h-.. |percnt| unicode:: U+00025 .. PERCENT SIGNh]h%}hjsbah}(h]h ]h"]percntah$]h&]uh1hhhhK7hhhhubh)}(h*.. |period| unicode:: U+0002E .. FULL STOPh]h.}hjsbah}(h]h ]h"]periodah$]h&]uh1hhhhK8hhhhubh)}(h*.. |plus| unicode:: U+0002B .. PLUS SIGNh]h+}hjsbah}(h]h ]h"]plusah$]h&]uh1hhhhK9hhhhubh)}(h0.. |plusmn| unicode:: U+000B1 .. PLUS-MINUS SIGNh]h±}hjsbah}(h]h ]h"]plusmnah$]h&]uh1hhhhK:hhhhubh)}(h+.. |pound| unicode:: U+000A3 .. POUND SIGNh]h£}hjsbah}(h]h ]h"]poundah$]h&]uh1hhhhK;hhhhubh)}(h... |quest| unicode:: U+0003F .. QUESTION MARKh]h?}hjsbah}(h]h ]h"]questah$]h&]uh1hhhhKhhhhubh)}(h1.. |rarr| unicode:: U+02192 .. RIGHTWARDS ARROWh]h→}hjsbah}(h]h ]h"]rarrah$]h&]uh1hhhhK?hhhhubh)}(h4.. |rcub| unicode:: U+0007D .. RIGHT CURLY BRACKETh]h}}hj*sbah}(h]h ]h"]rcubah$]h&]uh1hhhhK@hhhhubh)}(h<.. |rdquo| unicode:: U+0201D .. RIGHT DOUBLE QUOTATION MARKh]h”}hj9sbah}(h]h ]h"]rdquoah$]h&]uh1hhhhKAhhhhubh)}(h0.. |reg| unicode:: U+000AE .. REGISTERED SIGNh]h®}hjHsbah}(h]h ]h"]regah$]h&]uh1hhhhKBhhhhubh)}(h2.. |rpar| unicode:: U+00029 .. RIGHT PARENTHESISh]h)}hjWsbah}(h]h ]h"]rparah$]h&]uh1hhhhKChhhhubh)}(h5.. |rsqb| unicode:: U+0005D .. RIGHT SQUARE BRACKETh]h]}hjfsbah}(h]h ]h"]rsqbah$]h&]uh1hhhhKDhhhhubh)}(h<.. |rsquo| unicode:: U+02019 .. RIGHT SINGLE QUOTATION MARKh]h’}hjusbah}(h]h ]h"]rsquoah$]h&]uh1hhhhKEhhhhubh)}(h-.. |sect| unicode:: U+000A7 .. SECTION SIGNh]h§}hjsbah}(h]h ]h"]sectah$]h&]uh1hhhhKFhhhhubh)}(h*.. |semi| unicode:: U+0003B .. SEMICOLONh]h;}hjsbah}(h]h ]h"]semiah$]h&]uh1hhhhKGhhhhubh)}(h,.. |shy| unicode:: U+000AD .. SOFT HYPHENh]h­}hjsbah}(h]h ]h"]shyah$]h&]uh1hhhhKHhhhhubh)}(h(.. |sol| unicode:: U+0002F .. SOLIDUSh]h/}hjsbah}(h]h ]h"]solah$]h&]uh1hhhhKIhhhhubh)}(h,.. |sung| unicode:: U+0266A .. EIGHTH NOTEh]h♪}hjsbah}(h]h ]h"]sungah$]h&]uh1hhhhKJhhhhubh)}(h0.. |sup1| unicode:: U+000B9 .. SUPERSCRIPT ONEh]h¹}hjsbah}(h]h ]h"]sup1ah$]h&]uh1hhhhKKhhhhubh)}(h0.. |sup2| unicode:: U+000B2 .. SUPERSCRIPT TWOh]h²}hjsbah}(h]h ]h"]sup2ah$]h&]uh1hhhhKLhhhhubh)}(h2.. |sup3| unicode:: U+000B3 .. SUPERSCRIPT THREEh]h³}hjsbah}(h]h ]h"]sup3ah$]h&]uh1hhhhKMhhhhubh)}(h4.. |times| unicode:: U+000D7 .. MULTIPLICATION SIGNh]h×}hjsbah}(h]h ]h"]timesah$]h&]uh1hhhhKNhhhhubh)}(h0.. |trade| unicode:: U+02122 .. TRADE MARK SIGNh]h™}hj sbah}(h]h ]h"]tradeah$]h&]uh1hhhhKOhhhhubh)}(h... |uarr| unicode:: U+02191 .. UPWARDS ARROWh]h↑}hjsbah}(h]h ]h"]uarrah$]h&]uh1hhhhKPhhhhubh)}(h... |verbar| unicode:: U+0007C .. VERTICAL LINEh]h|}hj)sbah}(h]h ]h"]verbarah$]h&]uh1hhhhKQhhhhubh)}(h*.. |yen| unicode:: U+000A5 .. YEN SIGN h]h¥}hj8sbah}(h]h ]h"]yenah$]h&]uh1hhhhKRhhhhubhsection)}(hhh](htitle)}(hThe mgb4 driverh]hThe mgb4 driver}(hjNhhhNhNubah}(h]h ]h"]h$]h&]uh1jLhjIhhhhhKubhdefinition_list)}(hhh]hdefinition_list_item)}(hiCopyright |copy| 2023 - 2025 Digiteq Automotive author: Martin Tůma h](hterm)}(h/Copyright |copy| 2023 - 2025 Digiteq Automotiveh](h Copyright }(hjihhhNhNubh©}(hjihhhNhNubh 2023 - 2025 Digiteq Automotive}(hjihhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhK hjcubh definition)}(hhh]h paragraph)}(h8author: Martin Tůma h](hauthor: Martin Tůma <}(hjhhhNhNubh reference)}(h!martin.tuma@digiteqautomotive.comh]h!martin.tuma@digiteqautomotive.com}(hjhhhNhNubah}(h]h ]h"]h$]h&]refuri(mailto:martin.tuma@digiteqautomotive.comuh1jhjubh>}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1jhhhK hjubah}(h]h ]h"]h$]h&]uh1jhjcubeh}(h]h ]h"]h$]h&]uh1jahhhK hj^ubah}(h]h ]h"]h$]h&]uh1j\hjIhhhhhNubj)}(hThis is a v4l2 device driver for the Digiteq Automotive FrameGrabber 4, a PCIe card capable of capturing and generating FPD-Link III and GMSL2/3 video streams as used in the automotive industry.h]hThis is a v4l2 device driver for the Digiteq Automotive FrameGrabber 4, a PCIe card capable of capturing and generating FPD-Link III and GMSL2/3 video streams as used in the automotive industry.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhK hjIhhubjH)}(hhh](jM)}(hsysfs interfaceh]hsysfs interface}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jLhjhhhhhKubj)}(hThe mgb4 driver provides a sysfs interface, that is used to configure video stream related parameters (some of them must be set properly before the v4l2 device can be opened) and obtain the video device/stream status.h]hThe mgb4 driver provides a sysfs interface, that is used to configure video stream related parameters (some of them must be set properly before the v4l2 device can be opened) and obtain the video device/stream status.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhjhhubj)}(hThere are two types of parameters - global / PCI card related, found under ``/sys/class/video4linux/videoX/device`` and module specific found under ``/sys/class/video4linux/videoX``.h](hKThere are two types of parameters - global / PCI card related, found under }(hjhhhNhNubhliteral)}(h(``/sys/class/video4linux/videoX/device``h]h$/sys/class/video4linux/videoX/device}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh! and module specific found under }(hjhhhNhNubj)}(h!``/sys/class/video4linux/videoX``h]h/sys/class/video4linux/videoX}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1jhhhKhjhhubjH)}(hhh](jM)}(hGlobal (PCI card) parametersh]hGlobal (PCI card) parameters}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jLhjhhhhhKubj])}(hhh](jb)}(h**module_type** (R): Module type. | 0 - No module present | 1 - FPDL3 | 2 - GMSL (one serializer, two daisy chained deserializers) | 3 - GMSL (one serializer, two deserializers) | 4 - GMSL (two deserializers with two daisy chain outputs) h](jh)}(h**module_type** (R):h](hstrong)}(h**module_type**h]h module_type}(hj;hhhNhNubah}(h]h ]h"]h$]h&]uh1j9hj5ubh (R):}(hj5hhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhK$hj1ubj)}(hhh](j)}(h Module type.h]h Module type.}(hjVhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhjSubh line_block)}(hhh](hh)}(h0 - No module presenth]h0 - No module present}(hjjhhhNhNubah}(h]h ]h"]h$]h&]uh1hindentKhjfhhhKubji)}(h 1 - FPDL3h]h 1 - FPDL3}(hjyhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjfhhhKubji)}(h:2 - GMSL (one serializer, two daisy chained deserializers)h]h:2 - GMSL (one serializer, two daisy chained deserializers)}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjfhhhKubji)}(h,3 - GMSL (one serializer, two deserializers)h]h,3 - GMSL (one serializer, two deserializers)}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjfhhhKubji)}(h94 - GMSL (two deserializers with two daisy chain outputs)h]h94 - GMSL (two deserializers with two daisy chain outputs)}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjfhhhKubeh}(h]h ]h"]h$]h&]uh1jdhjSubeh}(h]h ]h"]h$]h&]uh1jhj1ubeh}(h]h ]h"]h$]h&]uh1jahhhK$hj.ubjb)}(hQ**module_version** (R): Module version number. Zero in case of a missing module. h](jh)}(h**module_version** (R):h](j:)}(h**module_version**h]hmodule_version}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j9hjubh (R):}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhK'hjubj)}(hhh]j)}(h8Module version number. Zero in case of a missing module.h]h8Module version number. Zero in case of a missing module.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhK'hjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jahhhK'hj.hhubjb)}(h8**fw_type** (R): Firmware type. | 1 - FPDL3 | 2 - GMSL h](jh)}(h**fw_type** (R):h](j:)}(h **fw_type**h]hfw_type}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j9hjubh (R):}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhK-hjubj)}(hhh](j)}(hFirmware type.h]hFirmware type.}(hj#hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhK*hj ubje)}(hhh](ji)}(h 1 - FPDL3h]h 1 - FPDL3}(hj4hhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhj1hhhKubji)}(h2 - GMSLh]h2 - GMSL}(hjBhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhj1hhhKubeh}(h]h ]h"]h$]h&]uh1jdhj ubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jahhhK-hj.hhubjb)}(h-**fw_version** (R): Firmware version number. h](jh)}(h**fw_version** (R):h](j:)}(h**fw_version**h]h fw_version}(hjjhhhNhNubah}(h]h ]h"]h$]h&]uh1j9hjfubh (R):}(hjfhhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhK0hjbubj)}(hhh]j)}(hFirmware version number.h]hFirmware version number.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhK0hjubah}(h]h ]h"]h$]h&]uh1jhjbubeh}(h]h ]h"]h$]h&]uh1jahhhK0hj.hhubjb)}(h**serial_number** (R): Card serial number. The format is:: PRODUCT-REVISION-SERIES-SERIAL where each component is a 8b number. h](jh)}(h**serial_number** (R):h](j:)}(h**serial_number**h]h serial_number}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j9hjubh (R):}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhK7hjubj)}(hhh](j)}(h#Card serial number. The format is::h]h"Card serial number. The format is:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhK3hjubh literal_block)}(hPRODUCT-REVISION-SERIES-SERIALh]hPRODUCT-REVISION-SERIES-SERIAL}hjsbah}(h]h ]h"]h$]h&]hhuh1jhhhK5hjubj)}(h$where each component is a 8b number.h]h$where each component is a 8b number.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhK7hjubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jahhhK7hj.hhubeh}(h]h ]h"]h$]h&]uh1j\hjhhhhhNubeh}(h]global-pci-card-parametersah ]h"]global (pci card) parametersah$]h&]uh1jGhjhhhhhKubjH)}(hhh](jM)}(h"Common FPDL3/GMSL input parametersh]h"Common FPDL3/GMSL input parameters}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jLhjhhhhhK:ubj])}(hhh](jb)}(h/**input_id** (R): Input number ID, zero based. h](jh)}(h**input_id** (R):h](j:)}(h **input_id**h]hinput_id}(hj$hhhNhNubah}(h]h ]h"]h$]h&]uh1j9hj ubh (R):}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhK=hjubj)}(hhh]j)}(hInput number ID, zero based.h]hInput number ID, zero based.}(hj?hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhK=hj<ubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jahhhK=hjubjb)}(hb**oldi_lane_width** (RW): Number of deserializer output lanes. | 0 - single | 1 - dual (default) h](jh)}(h**oldi_lane_width** (RW):h](j:)}(h**oldi_lane_width**h]holdi_lane_width}(hjahhhNhNubah}(h]h ]h"]h$]h&]uh1j9hj]ubh (RW):}(hj]hhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhKChjYubj)}(hhh](j)}(h$Number of deserializer output lanes.h]h$Number of deserializer output lanes.}(hj|hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhK@hjyubje)}(hhh](ji)}(h 0 - singleh]h 0 - single}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjhhhKubji)}(h1 - dual (default)h]h1 - dual (default)}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjhhhKubeh}(h]h ]h"]h$]h&]uh1jdhjyubeh}(h]h ]h"]h$]h&]uh1jhjYubeh}(h]h ]h"]h$]h&]uh1jahhhKChjhhubjb)}(h**color_mapping** (RW): Mapping of the incoming bits in the signal to the colour bits of the pixels. | 0 - OLDI/JEIDA | 1 - SPWG/VESA (default) h](jh)}(h**color_mapping** (RW):h](j:)}(h**color_mapping**h]h color_mapping}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j9hjubh (RW):}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhKIhjubj)}(hhh](j)}(hLMapping of the incoming bits in the signal to the colour bits of the pixels.h]hLMapping of the incoming bits in the signal to the colour bits of the pixels.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKFhjubje)}(hhh](ji)}(h0 - OLDI/JEIDAh]h0 - OLDI/JEIDA}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjhhhKubji)}(h1 - SPWG/VESA (default)h]h1 - SPWG/VESA (default)}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjhhhKubeh}(h]h ]h"]h$]h&]uh1jdhjubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jahhhKIhjhhubjb)}(hXG**link_status** (R): Video link status. If the link is locked, chips are properly connected and communicating at the same speed and protocol. The link can be locked without an active video stream. A value of 0 is equivalent to the V4L2_IN_ST_NO_SYNC flag of the V4L2 VIDIOC_ENUMINPUT status bits. | 0 - unlocked | 1 - locked h](jh)}(h**link_status** (R):h](j:)}(h**link_status**h]h link_status}(hj% hhhNhNubah}(h]h ]h"]h$]h&]uh1j9hj! ubh (R):}(hj! hhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhKThj ubj)}(hhh](j)}(hVideo link status. If the link is locked, chips are properly connected and communicating at the same speed and protocol. The link can be locked without an active video stream.h]hVideo link status. If the link is locked, chips are properly connected and communicating at the same speed and protocol. The link can be locked without an active video stream.}(hj@ hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKLhj= ubj)}(hcA value of 0 is equivalent to the V4L2_IN_ST_NO_SYNC flag of the V4L2 VIDIOC_ENUMINPUT status bits.h]hcA value of 0 is equivalent to the V4L2_IN_ST_NO_SYNC flag of the V4L2 VIDIOC_ENUMINPUT status bits.}(hjN hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKPhj= ubje)}(hhh](ji)}(h 0 - unlockedh]h 0 - unlocked}(hj_ hhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhj\ hhhKubji)}(h 1 - lockedh]h 1 - locked}(hjm hhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhj\ hhhKubeh}(h]h ]h"]h$]h&]uh1jdhj= ubeh}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jahhhKThjhhubjb)}(hX **stream_status** (R): Video stream status. A stream is detected if the link is locked, the input pixel clock is running and the DE signal is moving. A value of 0 is equivalent to the V4L2_IN_ST_NO_SIGNAL flag of the V4L2 VIDIOC_ENUMINPUT status bits. | 0 - not detected | 1 - detected h](jh)}(h**stream_status** (R):h](j:)}(h**stream_status**h]h stream_status}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j9hj ubh (R):}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhK^hj ubj)}(hhh](j)}(h~Video stream status. A stream is detected if the link is locked, the input pixel clock is running and the DE signal is moving.h]h~Video stream status. A stream is detected if the link is locked, the input pixel clock is running and the DE signal is moving.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKWhj ubj)}(heA value of 0 is equivalent to the V4L2_IN_ST_NO_SIGNAL flag of the V4L2 VIDIOC_ENUMINPUT status bits.h]heA value of 0 is equivalent to the V4L2_IN_ST_NO_SIGNAL flag of the V4L2 VIDIOC_ENUMINPUT status bits.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKZhj ubje)}(hhh](ji)}(h0 - not detectedh]h0 - not detected}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhj hhhKubji)}(h 1 - detectedh]h 1 - detected}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhj hhhKubeh}(h]h ]h"]h$]h&]uh1jdhj ubeh}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jahhhK^hjhhubjb)}(h**video_width** (R): Video stream width. This is the actual width as detected by the HW. The value is identical to what VIDIOC_QUERY_DV_TIMINGS returns in the width field of the v4l2_bt_timings struct. h](jh)}(h**video_width** (R):h](j:)}(h**video_width**h]h video_width}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j9hj ubh (R):}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhKdhj ubj)}(hhh](j)}(hCVideo stream width. This is the actual width as detected by the HW.h]hCVideo stream width. This is the actual width as detected by the HW.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKahj ubj)}(hpThe value is identical to what VIDIOC_QUERY_DV_TIMINGS returns in the width field of the v4l2_bt_timings struct.h]hpThe value is identical to what VIDIOC_QUERY_DV_TIMINGS returns in the width field of the v4l2_bt_timings struct.}(hj. hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKchj ubeh}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jahhhKdhjhhubjb)}(h**video_height** (R): Video stream height. This is the actual height as detected by the HW. The value is identical to what VIDIOC_QUERY_DV_TIMINGS returns in the height field of the v4l2_bt_timings struct. h](jh)}(h**video_height** (R):h](j:)}(h**video_height**h]h video_height}(hjP hhhNhNubah}(h]h ]h"]h$]h&]uh1j9hjL ubh (R):}(hjL hhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhKjhjH ubj)}(hhh](j)}(hEVideo stream height. This is the actual height as detected by the HW.h]hEVideo stream height. This is the actual height as detected by the HW.}(hjk hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKghjh ubj)}(hqThe value is identical to what VIDIOC_QUERY_DV_TIMINGS returns in the height field of the v4l2_bt_timings struct.h]hqThe value is identical to what VIDIOC_QUERY_DV_TIMINGS returns in the height field of the v4l2_bt_timings struct.}(hjy hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKihjh ubeh}(h]h ]h"]h$]h&]uh1jhjH ubeh}(h]h ]h"]h$]h&]uh1jahhhKjhjhhubjb)}(hX**vsync_status** (R): The type of VSYNC pulses as detected by the video format detector. The value is equivalent to the flags returned by VIDIOC_QUERY_DV_TIMINGS in the polarities field of the v4l2_bt_timings struct. | 0 - active low | 1 - active high | 2 - not available h](jh)}(h**vsync_status** (R):h](j:)}(h**vsync_status**h]h vsync_status}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j9hj ubh (R):}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhKthj ubj)}(hhh](j)}(hBThe type of VSYNC pulses as detected by the video format detector.h]hBThe type of VSYNC pulses as detected by the video format detector.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKmhj ubj)}(hThe value is equivalent to the flags returned by VIDIOC_QUERY_DV_TIMINGS in the polarities field of the v4l2_bt_timings struct.h]hThe value is equivalent to the flags returned by VIDIOC_QUERY_DV_TIMINGS in the polarities field of the v4l2_bt_timings struct.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKohj ubje)}(hhh](ji)}(h0 - active lowh]h0 - active low}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhj hhhKubji)}(h1 - active highh]h1 - active high}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhj hhhKubji)}(h2 - not availableh]h2 - not available}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhj hhhKubeh}(h]h ]h"]h$]h&]uh1jdhj ubeh}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jahhhKthjhhubjb)}(hX**hsync_status** (R): The type of HSYNC pulses as detected by the video format detector. The value is equivalent to the flags returned by VIDIOC_QUERY_DV_TIMINGS in the polarities field of the v4l2_bt_timings struct. | 0 - active low | 1 - active high | 2 - not available h](jh)}(h**hsync_status** (R):h](j:)}(h**hsync_status**h]h hsync_status}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j9hj ubh (R):}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhK~hj ubj)}(hhh](j)}(hBThe type of HSYNC pulses as detected by the video format detector.h]hBThe type of HSYNC pulses as detected by the video format detector.}(hj4 hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKwhj1 ubj)}(hThe value is equivalent to the flags returned by VIDIOC_QUERY_DV_TIMINGS in the polarities field of the v4l2_bt_timings struct.h]hThe value is equivalent to the flags returned by VIDIOC_QUERY_DV_TIMINGS in the polarities field of the v4l2_bt_timings struct.}(hjB hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKyhj1 ubje)}(hhh](ji)}(h0 - active lowh]h0 - active low}(hjS hhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjP hhhKubji)}(h1 - active highh]h1 - active high}(hja hhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjP hhhKubji)}(h2 - not availableh]h2 - not available}(hjo hhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjP hhhKubeh}(h]h ]h"]h$]h&]uh1jdhj1 ubeh}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jahhhK~hjhhubjb)}(hXU**vsync_gap_length** (RW): If the incoming video signal does not contain synchronization VSYNC and HSYNC pulses, these must be generated internally in the FPGA to achieve the correct frame ordering. This value indicates, how many "empty" pixels (pixels with deasserted Data Enable signal) are necessary to generate the internal VSYNC pulse. h](jh)}(h**vsync_gap_length** (RW):h](j:)}(h**vsync_gap_length**h]hvsync_gap_length}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j9hj ubh (RW):}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhKhj ubj)}(hhh]j)}(hX9If the incoming video signal does not contain synchronization VSYNC and HSYNC pulses, these must be generated internally in the FPGA to achieve the correct frame ordering. This value indicates, how many "empty" pixels (pixels with deasserted Data Enable signal) are necessary to generate the internal VSYNC pulse.h]hX=If the incoming video signal does not contain synchronization VSYNC and HSYNC pulses, these must be generated internally in the FPGA to achieve the correct frame ordering. This value indicates, how many “empty” pixels (pixels with deasserted Data Enable signal) are necessary to generate the internal VSYNC pulse.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhj ubah}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jahhhKhjhhubjb)}(hX**hsync_gap_length** (RW): If the incoming video signal does not contain synchronization VSYNC and HSYNC pulses, these must be generated internally in the FPGA to achieve the correct frame ordering. This value indicates, how many "empty" pixels (pixels with deasserted Data Enable signal) are necessary to generate the internal HSYNC pulse. The value must be greater than 1 and smaller than vsync_gap_length. h](jh)}(h**hsync_gap_length** (RW):h](j:)}(h**hsync_gap_length**h]hhsync_gap_length}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j9hj ubh (RW):}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhKhj ubj)}(hhh]j)}(hX}If the incoming video signal does not contain synchronization VSYNC and HSYNC pulses, these must be generated internally in the FPGA to achieve the correct frame ordering. This value indicates, how many "empty" pixels (pixels with deasserted Data Enable signal) are necessary to generate the internal HSYNC pulse. The value must be greater than 1 and smaller than vsync_gap_length.h]hXIf the incoming video signal does not contain synchronization VSYNC and HSYNC pulses, these must be generated internally in the FPGA to achieve the correct frame ordering. This value indicates, how many “empty” pixels (pixels with deasserted Data Enable signal) are necessary to generate the internal HSYNC pulse. The value must be greater than 1 and smaller than vsync_gap_length.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhj ubah}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jahhhKhjhhubjb)}(hX**pclk_frequency** (R): Input pixel clock frequency in kHz. The value is identical to what VIDIOC_QUERY_DV_TIMINGS returns in the pixelclock field of the v4l2_bt_timings struct. *Note: The frequency_range parameter must be set properly first to get a valid frequency here.* h](jh)}(h**pclk_frequency** (R):h](j:)}(h**pclk_frequency**h]hpclk_frequency}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j9hj ubh (R):}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhKhj ubj)}(hhh](j)}(h#Input pixel clock frequency in kHz.h]h#Input pixel clock frequency in kHz.}(hj, hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhj) ubj)}(huThe value is identical to what VIDIOC_QUERY_DV_TIMINGS returns in the pixelclock field of the v4l2_bt_timings struct.h]huThe value is identical to what VIDIOC_QUERY_DV_TIMINGS returns in the pixelclock field of the v4l2_bt_timings struct.}(hj: hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhj) ubj)}(h_*Note: The frequency_range parameter must be set properly first to get a valid frequency here.*h]hemphasis)}(hjJ h]h]Note: The frequency_range parameter must be set properly first to get a valid frequency here.}(hjN hhhNhNubah}(h]h ]h"]h$]h&]uh1jL hjH ubah}(h]h ]h"]h$]h&]uh1jhhhKhj) ubeh}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jahhhKhjhhubjb)}(h**hsync_width** (R): Width of the HSYNC signal in PCLK clock ticks. The value is identical to what VIDIOC_QUERY_DV_TIMINGS returns in the hsync field of the v4l2_bt_timings struct. h](jh)}(h**hsync_width** (R):h](j:)}(h**hsync_width**h]h hsync_width}(hju hhhNhNubah}(h]h ]h"]h$]h&]uh1j9hjq ubh (R):}(hjq hhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhKhjm ubj)}(hhh](j)}(h.Width of the HSYNC signal in PCLK clock ticks.h]h.Width of the HSYNC signal in PCLK clock ticks.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhj ubj)}(hpThe value is identical to what VIDIOC_QUERY_DV_TIMINGS returns in the hsync field of the v4l2_bt_timings struct.h]hpThe value is identical to what VIDIOC_QUERY_DV_TIMINGS returns in the hsync field of the v4l2_bt_timings struct.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhj ubeh}(h]h ]h"]h$]h&]uh1jhjm ubeh}(h]h ]h"]h$]h&]uh1jahhhKhjhhubjb)}(h**vsync_width** (R): Width of the VSYNC signal in PCLK clock ticks. The value is identical to what VIDIOC_QUERY_DV_TIMINGS returns in the vsync field of the v4l2_bt_timings struct. h](jh)}(h**vsync_width** (R):h](j:)}(h**vsync_width**h]h vsync_width}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j9hj ubh (R):}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhKhj ubj)}(hhh](j)}(h.Width of the VSYNC signal in PCLK clock ticks.h]h.Width of the VSYNC signal in PCLK clock ticks.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhj ubj)}(hpThe value is identical to what VIDIOC_QUERY_DV_TIMINGS returns in the vsync field of the v4l2_bt_timings struct.h]hpThe value is identical to what VIDIOC_QUERY_DV_TIMINGS returns in the vsync field of the v4l2_bt_timings struct.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhj ubeh}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jahhhKhjhhubjb)}(hX**hback_porch** (R): Number of PCLK pulses between deassertion of the HSYNC signal and the first valid pixel in the video line (marked by DE=1). The value is identical to what VIDIOC_QUERY_DV_TIMINGS returns in the hbackporch field of the v4l2_bt_timings struct. h](jh)}(h**hback_porch** (R):h](j:)}(h**hback_porch**h]h hback_porch}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j9hj ubh (R):}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhKhj ubj)}(hhh](j)}(h{Number of PCLK pulses between deassertion of the HSYNC signal and the first valid pixel in the video line (marked by DE=1).h]h{Number of PCLK pulses between deassertion of the HSYNC signal and the first valid pixel in the video line (marked by DE=1).}(hj& hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhj# ubj)}(huThe value is identical to what VIDIOC_QUERY_DV_TIMINGS returns in the hbackporch field of the v4l2_bt_timings struct.h]huThe value is identical to what VIDIOC_QUERY_DV_TIMINGS returns in the hbackporch field of the v4l2_bt_timings struct.}(hj4 hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhj# ubeh}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jahhhKhjhhubjb)}(hX**hfront_porch** (R): Number of PCLK pulses between the end of the last valid pixel in the video line (marked by DE=1) and assertion of the HSYNC signal. The value is identical to what VIDIOC_QUERY_DV_TIMINGS returns in the hfrontporch field of the v4l2_bt_timings struct. h](jh)}(h**hfront_porch** (R):h](j:)}(h**hfront_porch**h]h hfront_porch}(hjV hhhNhNubah}(h]h ]h"]h$]h&]uh1j9hjR ubh (R):}(hjR hhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhKhjN ubj)}(hhh](j)}(hNumber of PCLK pulses between the end of the last valid pixel in the video line (marked by DE=1) and assertion of the HSYNC signal.h]hNumber of PCLK pulses between the end of the last valid pixel in the video line (marked by DE=1) and assertion of the HSYNC signal.}(hjq hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhjn ubj)}(hvThe value is identical to what VIDIOC_QUERY_DV_TIMINGS returns in the hfrontporch field of the v4l2_bt_timings struct.h]hvThe value is identical to what VIDIOC_QUERY_DV_TIMINGS returns in the hfrontporch field of the v4l2_bt_timings struct.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhjn ubeh}(h]h ]h"]h$]h&]uh1jhjN ubeh}(h]h ]h"]h$]h&]uh1jahhhKhjhhubjb)}(hX **vback_porch** (R): Number of video lines between deassertion of the VSYNC signal and the video line with the first valid pixel (marked by DE=1). The value is identical to what VIDIOC_QUERY_DV_TIMINGS returns in the vbackporch field of the v4l2_bt_timings struct. h](jh)}(h**vback_porch** (R):h](j:)}(h**vback_porch**h]h vback_porch}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j9hj ubh (R):}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhKhj ubj)}(hhh](j)}(h}Number of video lines between deassertion of the VSYNC signal and the video line with the first valid pixel (marked by DE=1).h]h}Number of video lines between deassertion of the VSYNC signal and the video line with the first valid pixel (marked by DE=1).}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhj ubj)}(huThe value is identical to what VIDIOC_QUERY_DV_TIMINGS returns in the vbackporch field of the v4l2_bt_timings struct.h]huThe value is identical to what VIDIOC_QUERY_DV_TIMINGS returns in the vbackporch field of the v4l2_bt_timings struct.}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhj ubeh}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jahhhKhjhhubjb)}(hX**vfront_porch** (R): Number of video lines between the end of the last valid pixel line (marked by DE=1) and assertion of the VSYNC signal. The value is identical to what VIDIOC_QUERY_DV_TIMINGS returns in the vfrontporch field of the v4l2_bt_timings struct. h](jh)}(h**vfront_porch** (R):h](j:)}(h**vfront_porch**h]h vfront_porch}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1j9hj ubh (R):}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhKhj ubj)}(hhh](j)}(hvNumber of video lines between the end of the last valid pixel line (marked by DE=1) and assertion of the VSYNC signal.h]hvNumber of video lines between the end of the last valid pixel line (marked by DE=1) and assertion of the VSYNC signal.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhjubj)}(hvThe value is identical to what VIDIOC_QUERY_DV_TIMINGS returns in the vfrontporch field of the v4l2_bt_timings struct.h]hvThe value is identical to what VIDIOC_QUERY_DV_TIMINGS returns in the vfrontporch field of the v4l2_bt_timings struct.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhjubeh}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jahhhKhjhhubjb)}(hX~**frequency_range** (RW) PLL frequency range of the OLDI input clock generator. The PLL frequency is derived from the Pixel Clock Frequency (PCLK) and is equal to PCLK if oldi_lane_width is set to "single" and PCLK/2 if oldi_lane_width is set to "dual". | 0 - PLL < 50MHz (default) | 1 - PLL >= 50MHz *Note: This parameter can not be changed while the input v4l2 device is open.* h](jh)}(h**frequency_range** (RW)h](j:)}(h**frequency_range**h]hfrequency_range}(hj7hhhNhNubah}(h]h ]h"]h$]h&]uh1j9hj3ubh (RW)}(hj3hhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhKhj/ubj)}(hhh](j)}(hPLL frequency range of the OLDI input clock generator. The PLL frequency is derived from the Pixel Clock Frequency (PCLK) and is equal to PCLK if oldi_lane_width is set to "single" and PCLK/2 if oldi_lane_width is set to "dual".h]hPLL frequency range of the OLDI input clock generator. The PLL frequency is derived from the Pixel Clock Frequency (PCLK) and is equal to PCLK if oldi_lane_width is set to “single” and PCLK/2 if oldi_lane_width is set to “dual”.}(hjRhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhjOubje)}(hhh](ji)}(h0 - PLL < 50MHz (default)h]h0 - PLL < 50MHz (default)}(hjchhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhj`hhhKubji)}(h1 - PLL >= 50MHzh]h1 - PLL >= 50MHz}(hjqhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhj`hhhKubeh}(h]h ]h"]h$]h&]uh1jdhjOubj)}(hN*Note: This parameter can not be changed while the input v4l2 device is open.*h]jM )}(hjh]hLNote: This parameter can not be changed while the input v4l2 device is open.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jL hjubah}(h]h ]h"]h$]h&]uh1jhhhKhjOubeh}(h]h ]h"]h$]h&]uh1jhj/ubeh}(h]h ]h"]h$]h&]uh1jahhhKhjhhubeh}(h]h ]h"]h$]h&]uh1j\hjhhhhhNubeh}(h]"common-fpdl3-gmsl-input-parametersah ]h"]"common fpdl3/gmsl input parametersah$]h&]uh1jGhjhhhhhK:ubjH)}(hhh](jM)}(h#Common FPDL3/GMSL output parametersh]h#Common FPDL3/GMSL output parameters}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jLhjhhhhhKubj])}(hhh](jb)}(h1**output_id** (R): Output number ID, zero based. h](jh)}(h**output_id** (R):h](j:)}(h **output_id**h]h output_id}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j9hjubh (R):}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhKhjubj)}(hhh]j)}(hOutput number ID, zero based.h]hOutput number ID, zero based.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jahhhKhjubjb)}(hX**video_source** (RW): Output video source. If set to 0 or 1, the source is the corresponding card input and the v4l2 output devices are disabled. If set to 2 or 3, the source is the corresponding v4l2 video output device. The default is the corresponding v4l2 output, i.e. 2 for OUT1 and 3 for OUT2. | 0 - input 0 | 1 - input 1 | 2 - v4l2 output 0 | 3 - v4l2 output 1 *Note: This parameter can not be changed while ANY of the input/output v4l2 devices is open.* h](jh)}(h**video_source** (RW):h](j:)}(h**video_source**h]h video_source}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j9hj ubh (RW):}(hj hhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhKhjubj)}(hhh](j)}(hXOutput video source. If set to 0 or 1, the source is the corresponding card input and the v4l2 output devices are disabled. If set to 2 or 3, the source is the corresponding v4l2 video output device. The default is the corresponding v4l2 output, i.e. 2 for OUT1 and 3 for OUT2.h]hXOutput video source. If set to 0 or 1, the source is the corresponding card input and the v4l2 output devices are disabled. If set to 2 or 3, the source is the corresponding v4l2 video output device. The default is the corresponding v4l2 output, i.e. 2 for OUT1 and 3 for OUT2.}(hj*hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhj'ubje)}(hhh](ji)}(h 0 - input 0h]h 0 - input 0}(hj;hhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhj8hhhKubji)}(h 1 - input 1h]h 1 - input 1}(hjIhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhj8hhhKubji)}(h2 - v4l2 output 0h]h2 - v4l2 output 0}(hjWhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhj8hhhKubji)}(h3 - v4l2 output 1h]h3 - v4l2 output 1}(hjehhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhj8hhhKubeh}(h]h ]h"]h$]h&]uh1jdhj'ubj)}(h]*Note: This parameter can not be changed while ANY of the input/output v4l2 devices is open.*h]jM )}(hj{h]h[Note: This parameter can not be changed while ANY of the input/output v4l2 devices is open.}(hj}hhhNhNubah}(h]h ]h"]h$]h&]uh1jL hjyubah}(h]h ]h"]h$]h&]uh1jhhhKhj'ubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jahhhKhjhhubjb)}(hX**display_width** (RW): Display width. There is no autodetection of the connected display, so the proper value must be set before the start of streaming. The default width is 1280. *Note: This parameter can not be changed while the output v4l2 device is open.* h](jh)}(h**display_width** (RW):h](j:)}(h**display_width**h]h display_width}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j9hjubh (RW):}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhKhjubj)}(hhh](j)}(hDisplay width. There is no autodetection of the connected display, so the proper value must be set before the start of streaming. The default width is 1280.h]hDisplay width. There is no autodetection of the connected display, so the proper value must be set before the start of streaming. The default width is 1280.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhjubj)}(hO*Note: This parameter can not be changed while the output v4l2 device is open.*h]jM )}(hjh]hMNote: This parameter can not be changed while the output v4l2 device is open.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jL hjubah}(h]h ]h"]h$]h&]uh1jhhhKhjubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jahhhKhjhhubjb)}(hX**display_height** (RW): Display height. There is no autodetection of the connected display, so the proper value must be set before the start of streaming. The default height is 640. *Note: This parameter can not be changed while the output v4l2 device is open.* h](jh)}(h**display_height** (RW):h](j:)}(h**display_height**h]hdisplay_height}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j9hjubh (RW):}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhKhjubj)}(hhh](j)}(hDisplay height. There is no autodetection of the connected display, so the proper value must be set before the start of streaming. The default height is 640.h]hDisplay height. There is no autodetection of the connected display, so the proper value must be set before the start of streaming. The default height is 640.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhjubj)}(hO*Note: This parameter can not be changed while the output v4l2 device is open.*h]jM )}(hj#h]hMNote: This parameter can not be changed while the output v4l2 device is open.}(hj%hhhNhNubah}(h]h ]h"]h$]h&]uh1jL hj!ubah}(h]h ]h"]h$]h&]uh1jhhhKhjubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jahhhKhjhhubjb)}(hX**frame_rate** (RW): Output video signal frame rate limit in frames per second. Due to the limited output pixel clock steps, the card can not always generate a frame rate perfectly matching the value required by the connected display. Using this parameter one can limit the frame rate by "crippling" the signal so that the lines are not equal (the porches of the last line differ) but the signal appears like having the exact frame rate to the connected display. The default frame rate limit is 60Hz. h](jh)}(h**frame_rate** (RW):h](j:)}(h**frame_rate**h]h frame_rate}(hjLhhhNhNubah}(h]h ]h"]h$]h&]uh1j9hjHubh (RW):}(hjHhhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhKhjDubj)}(hhh]j)}(hXOutput video signal frame rate limit in frames per second. Due to the limited output pixel clock steps, the card can not always generate a frame rate perfectly matching the value required by the connected display. Using this parameter one can limit the frame rate by "crippling" the signal so that the lines are not equal (the porches of the last line differ) but the signal appears like having the exact frame rate to the connected display. The default frame rate limit is 60Hz.h]hXOutput video signal frame rate limit in frames per second. Due to the limited output pixel clock steps, the card can not always generate a frame rate perfectly matching the value required by the connected display. Using this parameter one can limit the frame rate by “crippling” the signal so that the lines are not equal (the porches of the last line differ) but the signal appears like having the exact frame rate to the connected display. The default frame rate limit is 60Hz.}(hjghhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhjdubah}(h]h ]h"]h$]h&]uh1jhjDubeh}(h]h ]h"]h$]h&]uh1jahhhKhjhhubjb)}(h^**hsync_polarity** (RW): HSYNC signal polarity. | 0 - active low (default) | 1 - active high h](jh)}(h**hsync_polarity** (RW):h](j:)}(h**hsync_polarity**h]hhsync_polarity}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j9hjubh (RW):}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhKhjubj)}(hhh](j)}(hHSYNC signal polarity.h]hHSYNC signal polarity.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhKhjubje)}(hhh](ji)}(h0 - active low (default)h]h0 - active low (default)}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjhhhKubji)}(h1 - active highh]h1 - active high}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjhhhKubeh}(h]h ]h"]h$]h&]uh1jdhjubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jahhhKhjhhubjb)}(h^**vsync_polarity** (RW): VSYNC signal polarity. | 0 - active low (default) | 1 - active high h](jh)}(h**vsync_polarity** (RW):h](j:)}(h**vsync_polarity**h]hvsync_polarity}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j9hjubh (RW):}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhMhjubj)}(hhh](j)}(hVSYNC signal polarity.h]hVSYNC signal polarity.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhMhjubje)}(hhh](ji)}(h0 - active low (default)h]h0 - active low (default)}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjhhhKubji)}(h1 - active highh]h1 - active high}(hj%hhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjhhhKubeh}(h]h ]h"]h$]h&]uh1jdhjubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jahhhMhjhhubjb)}(hX**de_polarity** (RW): DE signal polarity. | 0 - active low | 1 - active high (default) h](jh)}(h**de_polarity** (RW):h](j:)}(h**de_polarity**h]h de_polarity}(hjMhhhNhNubah}(h]h ]h"]h$]h&]uh1j9hjIubh (RW):}(hjIhhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhM hjEubj)}(hhh](j)}(hDE signal polarity.h]hDE signal polarity.}(hjhhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhMhjeubje)}(hhh](ji)}(h0 - active lowh]h0 - active low}(hjyhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjvhhhKubji)}(h1 - active high (default)h]h1 - active high (default)}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjvhhhKubeh}(h]h ]h"]h$]h&]uh1jdhjeubeh}(h]h ]h"]h$]h&]uh1jhjEubeh}(h]h ]h"]h$]h&]uh1jahhhM hjhhubjb)}(hX**pclk_frequency** (RW): Output pixel clock frequency. Allowed values are between 25000-190000(kHz) and there is a non-linear stepping between two consecutive allowed frequencies. The driver finds the nearest allowed frequency to the given value and sets it. When reading this property, you get the exact frequency set by the driver. The default frequency is 61150kHz. *Note: This parameter can not be changed while the output v4l2 device is open.* h](jh)}(h**pclk_frequency** (RW):h](j:)}(h**pclk_frequency**h]hpclk_frequency}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j9hjubh (RW):}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhMhjubj)}(hhh](j)}(hXWOutput pixel clock frequency. Allowed values are between 25000-190000(kHz) and there is a non-linear stepping between two consecutive allowed frequencies. The driver finds the nearest allowed frequency to the given value and sets it. When reading this property, you get the exact frequency set by the driver. The default frequency is 61150kHz.h]hXWOutput pixel clock frequency. Allowed values are between 25000-190000(kHz) and there is a non-linear stepping between two consecutive allowed frequencies. The driver finds the nearest allowed frequency to the given value and sets it. When reading this property, you get the exact frequency set by the driver. The default frequency is 61150kHz.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhM hjubj)}(hO*Note: This parameter can not be changed while the output v4l2 device is open.*h]jM )}(hjh]hMNote: This parameter can not be changed while the output v4l2 device is open.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jL hjubah}(h]h ]h"]h$]h&]uh1jhhhMhjubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jahhhMhjhhubjb)}(hT**hsync_width** (RW): Width of the HSYNC signal in pixels. The default value is 40. h](jh)}(h**hsync_width** (RW):h](j:)}(h**hsync_width**h]h hsync_width}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j9hjubh (RW):}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhMhjubj)}(hhh]j)}(h=Width of the HSYNC signal in pixels. The default value is 40.h]h=Width of the HSYNC signal in pixels. The default value is 40.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhMhjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jahhhMhjhhubjb)}(hY**vsync_width** (RW): Width of the VSYNC signal in video lines. The default value is 20. h](jh)}(h**vsync_width** (RW):h](j:)}(h**vsync_width**h]h vsync_width}(hj@hhhNhNubah}(h]h ]h"]h$]h&]uh1j9hj<ubh (RW):}(hj<hhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhMhj8ubj)}(hhh]j)}(hBWidth of the VSYNC signal in video lines. The default value is 20.h]hBWidth of the VSYNC signal in video lines. The default value is 20.}(hj[hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhMhjXubah}(h]h ]h"]h$]h&]uh1jhj8ubeh}(h]h ]h"]h$]h&]uh1jahhhMhjhhubjb)}(h**hback_porch** (RW): Number of PCLK pulses between deassertion of the HSYNC signal and the first valid pixel in the video line (marked by DE=1). The default value is 50. h](jh)}(h**hback_porch** (RW):h](j:)}(h**hback_porch**h]h hback_porch}(hj}hhhNhNubah}(h]h ]h"]h$]h&]uh1j9hjyubh (RW):}(hjyhhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhMhjuubj)}(hhh]j)}(hNumber of PCLK pulses between deassertion of the HSYNC signal and the first valid pixel in the video line (marked by DE=1). The default value is 50.h]hNumber of PCLK pulses between deassertion of the HSYNC signal and the first valid pixel in the video line (marked by DE=1). The default value is 50.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhMhjubah}(h]h ]h"]h$]h&]uh1jhjuubeh}(h]h ]h"]h$]h&]uh1jahhhMhjhhubjb)}(h**hfront_porch** (RW): Number of PCLK pulses between the end of the last valid pixel in the video line (marked by DE=1) and assertion of the HSYNC signal. The default value is 50. h](jh)}(h**hfront_porch** (RW):h](j:)}(h**hfront_porch**h]h hfront_porch}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j9hjubh (RW):}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhM"hjubj)}(hhh]j)}(hNumber of PCLK pulses between the end of the last valid pixel in the video line (marked by DE=1) and assertion of the HSYNC signal. The default value is 50.h]hNumber of PCLK pulses between the end of the last valid pixel in the video line (marked by DE=1) and assertion of the HSYNC signal. The default value is 50.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhM hjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jahhhM"hjhhubjb)}(h**vback_porch** (RW): Number of video lines between deassertion of the VSYNC signal and the video line with the first valid pixel (marked by DE=1). The default value is 31. h](jh)}(h**vback_porch** (RW):h](j:)}(h**vback_porch**h]h vback_porch}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j9hjubh (RW):}(hjOhhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhM&hjubj)}(hhh]j)}(hNumber of video lines between deassertion of the VSYNC signal and the video line with the first valid pixel (marked by DE=1). The default value is 31.h]hNumber of video lines between deassertion of the VSYNC signal and the video line with the first valid pixel (marked by DE=1). The default value is 31.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhM%hjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jahhhM&hjhhubjb)}(h**vfront_porch** (RW): Number of video lines between the end of the last valid pixel line (marked by DE=1) and assertion of the VSYNC signal. The default value is 30. h](jh)}(h**vfront_porch** (RW):h](j:)}(h**vfront_porch**h]h vfront_porch}(hj4hhhNhNubah}(h]h ]h"]h$]h&]uh1j9hj0ubh (RW):}(hj0hhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhM*hj,ubj)}(hhh]j)}(hNumber of video lines between the end of the last valid pixel line (marked by DE=1) and assertion of the VSYNC signal. The default value is 30.h]hNumber of video lines between the end of the last valid pixel line (marked by DE=1) and assertion of the VSYNC signal. The default value is 30.}(hjOhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhM)hjLubah}(h]h ]h"]h$]h&]uh1jhj,ubeh}(h]h ]h"]h$]h&]uh1jahhhM*hjhhubeh}(h]h ]h"]h$]h&]uh1j\hjhhhhhNubeh}(h]#common-fpdl3-gmsl-output-parametersah ]h"]#common fpdl3/gmsl output parametersah$]h&]uh1jGhjhhhhhKubjH)}(hhh](jM)}(hFPDL3 specific input parametersh]hFPDL3 specific input parameters}(hjzhhhNhNubah}(h]h ]h"]h$]h&]uh1jLhjwhhhhhM-ubj])}(hhh]jb)}(hn**fpdl3_input_width** (RW): Number of deserializer input lines. | 0 - auto (default) | 1 - single | 2 - dual h](jh)}(h**fpdl3_input_width** (RW):h](j:)}(h**fpdl3_input_width**h]hfpdl3_input_width}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j9hjubh (RW):}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhM4hjubj)}(hhh](j)}(h#Number of deserializer input lines.h]h#Number of deserializer input lines.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhM0hjubje)}(hhh](ji)}(h0 - auto (default)h]h0 - auto (default)}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjhhhKubji)}(h 1 - singleh]h 1 - single}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjhhhKubji)}(h2 - dualh]h2 - dual}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjhhhKubeh}(h]h ]h"]h$]h&]uh1jdhjubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jahhhM4hjubah}(h]h ]h"]h$]h&]uh1j\hjwhhhhhNubeh}(h]fpdl3-specific-input-parametersah ]h"]fpdl3 specific input parametersah$]h&]uh1jGhjhhhhhM-ubjH)}(hhh](jM)}(h FPDL3 specific output parametersh]h FPDL3 specific output parameters}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jLhj hhhhhM7ubj])}(hhh]jb)}(hn**fpdl3_output_width** (RW): Number of serializer output lines. | 0 - auto (default) | 1 - single | 2 - dual h](jh)}(h**fpdl3_output_width** (RW):h](j:)}(h**fpdl3_output_width**h]hfpdl3_output_width}(hj%hhhNhNubah}(h]h ]h"]h$]h&]uh1j9hj!ubh (RW):}(hj!hhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhM>hjubj)}(hhh](j)}(h"Number of serializer output lines.h]h"Number of serializer output lines.}(hj@hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhM:hj=ubje)}(hhh](ji)}(h0 - auto (default)h]h0 - auto (default)}(hjQhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjNhhhKubji)}(h 1 - singleh]h 1 - single}(hj_hhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjNhhhKubji)}(h2 - dualh]h2 - dual}(hjmhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjNhhhKubeh}(h]h ]h"]h$]h&]uh1jdhj=ubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jahhhM>hjubah}(h]h ]h"]h$]h&]uh1j\hj hhhhhNubeh}(h] fpdl3-specific-output-parametersah ]h"] fpdl3 specific output parametersah$]h&]uh1jGhjhhhhhM7ubjH)}(hhh](jM)}(hGMSL specific input parametersh]hGMSL specific input parameters}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jLhjhhhhhMAubj])}(hhh](jb)}(hc**gmsl_mode** (RW): GMSL speed mode. | 0 - 12Gb/s (default) | 1 - 6Gb/s | 2 - 3Gb/s | 3 - 1.5Gb/s h](jh)}(h**gmsl_mode** (RW):h](j:)}(h **gmsl_mode**h]h gmsl_mode}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j9hjubh (RW):}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhMIhjubj)}(hhh](j)}(hGMSL speed mode.h]hGMSL speed mode.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhMDhjubje)}(hhh](ji)}(h0 - 12Gb/s (default)h]h0 - 12Gb/s (default)}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjhhhKubji)}(h 1 - 6Gb/sh]h 1 - 6Gb/s}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjhhhKubji)}(h 2 - 3Gb/sh]h 2 - 3Gb/s}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjhhhKubji)}(h 3 - 1.5Gb/sh]h 3 - 1.5Gb/s}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjhhhKubeh}(h]h ]h"]h$]h&]uh1jdhjubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jahhhMIhjubjb)}(hX3**gmsl_stream_id** (RW): The GMSL multi-stream contains up to four video streams. This parameter selects which stream is captured by the video input. The value is the zero-based index of the stream. The default stream id is 0. *Note: This parameter can not be changed while the input v4l2 device is open.* h](jh)}(h**gmsl_stream_id** (RW):h](j:)}(h**gmsl_stream_id**h]hgmsl_stream_id}(hj5hhhNhNubah}(h]h ]h"]h$]h&]uh1j9hj1ubh (RW):}(hj1hhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhMQhj-ubj)}(hhh](j)}(hThe GMSL multi-stream contains up to four video streams. This parameter selects which stream is captured by the video input. The value is the zero-based index of the stream. The default stream id is 0.h]hThe GMSL multi-stream contains up to four video streams. This parameter selects which stream is captured by the video input. The value is the zero-based index of the stream. The default stream id is 0.}(hjPhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhMLhjMubj)}(hN*Note: This parameter can not be changed while the input v4l2 device is open.*h]jM )}(hj`h]hLNote: This parameter can not be changed while the input v4l2 device is open.}(hjbhhhNhNubah}(h]h ]h"]h$]h&]uh1jL hj^ubah}(h]h ]h"]h$]h&]uh1jhhhMPhjMubeh}(h]h ]h"]h$]h&]uh1jhj-ubeh}(h]h ]h"]h$]h&]uh1jahhhMQhjhhubjb)}(h`**gmsl_fec** (RW): GMSL Forward Error Correction (FEC). | 0 - disabled | 1 - enabled (default) h](jh)}(h**gmsl_fec** (RW):h](j:)}(h **gmsl_fec**h]hgmsl_fec}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j9hjubh (RW):}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhMWhjubj)}(hhh](j)}(h$GMSL Forward Error Correction (FEC).h]h$GMSL Forward Error Correction (FEC).}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhMThjubje)}(hhh](ji)}(h 0 - disabledh]h 0 - disabled}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjhhhKubji)}(h1 - enabled (default)h]h1 - enabled (default)}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhjhhhKubeh}(h]h ]h"]h$]h&]uh1jdhjubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jahhhMWhjhhubeh}(h]h ]h"]h$]h&]uh1j\hjhhhhhNubeh}(h]gmsl-specific-input-parametersah ]h"]gmsl specific input parametersah$]h&]uh1jGhjhhhhhMAubeh}(h]sysfs-interfaceah ]h"]sysfs interfaceah$]h&]uh1jGhjIhhhhhKubjH)}(hhh](jM)}(hMTD partitionsh]hMTD partitions}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jLhjhhhhhMZubj])}(hhh]jb)}(hThe mgb4 driver creates a MTD device with two partitions: - mgb4-fw.X - FPGA firmware. - mgb4-data.X - Factory settings, e.g. card serial number. h](jh)}(h9The mgb4 driver creates a MTD device with two partitions:h]h9The mgb4 driver creates a MTD device with two partitions:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jghhhM^hj ubj)}(hhh]h bullet_list)}(hhh](h list_item)}(hmgb4-fw.X - FPGA firmware.h]j)}(hj+h]hmgb4-fw.X - FPGA firmware.}(hj-hhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhM]hj)ubah}(h]h ]h"]h$]h&]uh1j'hj$ubj()}(h9mgb4-data.X - Factory settings, e.g. card serial number. h]j)}(h8mgb4-data.X - Factory settings, e.g. card serial number.h]h8mgb4-data.X - Factory settings, e.g. card serial number.}(hjDhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhM^hj@ubah}(h]h ]h"]h$]h&]uh1j'hj$ubeh}(h]h ]h"]h$]h&]bullet-uh1j"hhhM]hjubah}(h]h ]h"]h$]h&]uh1jhj ubeh}(h]h ]h"]h$]h&]uh1jahhhM^hj ubah}(h]h ]h"]h$]h&]uh1j\hjhhhNhNubj)}(hXThe *mgb4-fw* partition is writable and is used for FW updates, *mgb4-data* is read-only. The *X* attached to the partition name represents the card number. Depending on the CONFIG_MTD_PARTITIONED_MASTER kernel configuration, you may also have a third partition named *mgb4-flash* available in the system. This partition represents the whole, unpartitioned, card's FLASH memory and one should not fiddle with it...h](hThe }(hjrhhhNhNubjM )}(h *mgb4-fw*h]hmgb4-fw}(hjzhhhNhNubah}(h]h ]h"]h$]h&]uh1jL hjrubh3 partition is writable and is used for FW updates, }(hjrhhhNhNubjM )}(h *mgb4-data*h]h mgb4-data}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jL hjrubh is read-only. The }(hjrhhhNhNubjM )}(h*X*h]hX}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jL hjrubh attached to the partition name represents the card number. Depending on the CONFIG_MTD_PARTITIONED_MASTER kernel configuration, you may also have a third partition named }(hjrhhhNhNubjM )}(h *mgb4-flash*h]h mgb4-flash}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jL hjrubh available in the system. This partition represents the whole, unpartitioned, card’s FLASH memory and one should not fiddle with it...}(hjrhhhNhNubeh}(h]h ]h"]h$]h&]uh1jhhhM`hjhhubeh}(h]mtd-partitionsah ]h"]mtd partitionsah$]h&]uh1jGhjIhhhhhMZubjH)}(hhh](jM)}(hIIO (triggers)h]hIIO (triggers)}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jLhjhhhhhMhubj)}(hThe mgb4 driver creates an Industrial I/O (IIO) device that provides trigger and signal level status capability. The following scan elements are available:h]hThe mgb4 driver creates an Industrial I/O (IIO) device that provides trigger and signal level status capability. The following scan elements are available:}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhMjhjhhubj])}(hhh](jb)}(h**activity**: The trigger levels and pending status. | bit 1 - trigger 1 pending | bit 2 - trigger 2 pending | bit 5 - trigger 1 level | bit 6 - trigger 2 level h](jh)}(h **activity**:h](j:)}(h **activity**h]hactivity}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j9hjubh:}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhMshjubj)}(hhh](j)}(h&The trigger levels and pending status.h]h&The trigger levels and pending status.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhMnhjubje)}(hhh](ji)}(hbit 1 - trigger 1 pendingh]hbit 1 - trigger 1 pending}(hj&hhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhj#hhhKubji)}(hbit 2 - trigger 2 pendingh]hbit 2 - trigger 2 pending}(hj4hhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhj#hhhKubji)}(hbit 5 - trigger 1 levelh]hbit 5 - trigger 1 level}(hjBhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhj#hhhKubji)}(hbit 6 - trigger 2 levelh]hbit 6 - trigger 2 level}(hjPhhhNhNubah}(h]h ]h"]h$]h&]uh1hjxKhj#hhhKubeh}(h]h ]h"]h$]h&]uh1jdhjubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jahhhMshjubjb)}(h,**timestamp**: The trigger event timestamp. h](jh)}(h**timestamp**:h](j:)}(h **timestamp**h]h timestamp}(hjxhhhNhNubah}(h]h ]h"]h$]h&]uh1j9hjtubh:}(hjthhhNhNubeh}(h]h ]h"]h$]h&]uh1jghhhMvhjpubj)}(hhh]j)}(hThe trigger event timestamp.h]hThe trigger event timestamp.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhMvhjubah}(h]h ]h"]h$]h&]uh1jhjpubeh}(h]h ]h"]h$]h&]uh1jahhhMvhjhhubeh}(h]h ]h"]h$]h&]uh1j\hjhhhhhNubj)}(hXThe iio device can operate either in "raw" mode where you can fetch the signal levels (activity bits 5 and 6) using sysfs access or in triggered buffer mode. In the triggered buffer mode you can follow the signal level changes (activity bits 1 and 2) using the iio device in /dev. If you enable the timestamps, you will also get the exact trigger event time that can be matched to a video frame (every mgb4 video frame has a timestamp with the same clock source).h]hXThe iio device can operate either in “raw” mode where you can fetch the signal levels (activity bits 5 and 6) using sysfs access or in triggered buffer mode. In the triggered buffer mode you can follow the signal level changes (activity bits 1 and 2) using the iio device in /dev. If you enable the timestamps, you will also get the exact trigger event time that can be matched to a video frame (every mgb4 video frame has a timestamp with the same clock source).}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhhhMxhjhhubj)}(h*Note: although the activity sample always contains all the status bits, it makes no sense to get the pending bits in raw mode or the level bits in the triggered buffer mode - the values do not represent valid data in such case.*h]jM )}(hjh]hNote: although the activity sample always contains all the status bits, it makes no sense to get the pending bits in raw mode or the level bits in the triggered buffer mode - the values do not represent valid data in such case.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jL hjubah}(h]h ]h"]h$]h&]uh1jhhhMhjhhubeh}(h] iio-triggersah ]h"]iio (triggers)ah$]h&]uh1jGhjIhhhhhMhubeh}(h]the-mgb4-driverah ]h"]the mgb4 driverah$]h&]uh1jGhhhhhhhKubeh}(h]h ]h"]h$]h&]sourcehuh1hcurrent_sourceN current_lineNsettingsdocutils.frontendValues)}(jLN generatorN datestampN source_linkN source_urlN toc_backlinksentryfootnote_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_sourceh _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}(hhhhhhj jjjj*jj9j-jHj<jWjKjfjZjujijjxjjjjjjjjjjjjjjjjj jjjj)jj8j,jGj;jVjJjejYjtjhjjwjjjjjjjjjjjjjjjjj jjj j(jj7j+jFj:jUjIjdjXjsjgjjvjjjjjjjjjjjjjjjjj jjj j'jj6j*jEj9jTjHjcjWjrjfjjujjjjjjjjjjjjjjjjjjjj j&jj5j)jDj8usubstitution_names}(amphߌaposhasthbrvbarj bsoljcentj*colonj9commajHcommatjWcopyjfcurrenjudarrjdegjdividejdollarjequalsjexcljfrac12jfrac14jfrac18jfrac34j frac38jfrac58j)frac78j8gtjGhalfjVhorbarjehyphenjtiexcljiquestjlaquojlarrjlcubjldquojlowbarjlparjlsqbjlsquoj ltjmicroj(middotj7nbspjFnotjUnumjdohmjsordfjordmjparajpercntjperiodjplusjplusmnjpoundjquestjquotj raquojrarrj'rcubj6rdquojEregjTrparjcrsqbjrrsquojsectjsemijshyjsoljsungjsup1jsup2jsup3jtimesjtradejuarrj&verbarj5yenjDurefnames}refids}nameids}(jjjjjjjjjtjqjjjjjjjjjju nametypes}(jjjjjtjjjjjuh}(jjIjjjjjjjqjjjwjj jjjjjju footnote_refs} citation_refs} autofootnotes]autofootnote_refs]symbol_footnotes]symbol_footnote_refs] footnotes] citations]autofootnote_startKsymbol_footnote_startK id_counter collectionsCounter}Rparse_messages]transform_messages] transformerN include_log](Documentation/admin-guide/media/mgb4.rst(NNNNta decorationNhhub.