zsphinx.addnodesdocument)}( rawsourcechildren]( translations LanguagesNode)}(hhh](h pending_xref)}(hhh]docutils.nodesTextChinese (Simplified)}parenthsba attributes}(ids]classes]names]dupnames]backrefs] refdomainstdreftypedoc reftarget@/translations/zh_CN/userspace-api/media/v4l/vidioc-subdev-g-cropmodnameN classnameN refexplicitutagnamehhh ubh)}(hhh]hChinese (Traditional)}hh2sbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget@/translations/zh_TW/userspace-api/media/v4l/vidioc-subdev-g-cropmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hItalian}hhFsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget@/translations/it_IT/userspace-api/media/v4l/vidioc-subdev-g-cropmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hJapanese}hhZsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget@/translations/ja_JP/userspace-api/media/v4l/vidioc-subdev-g-cropmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hKorean}hhnsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget@/translations/ko_KR/userspace-api/media/v4l/vidioc-subdev-g-cropmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hPortuguese (Brazilian)}hhsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget@/translations/pt_BR/userspace-api/media/v4l/vidioc-subdev-g-cropmodnameN classnameN refexplicituh1hhh ubh)}(hhh]hSpanish}hhsbah}(h]h ]h"]h$]h&] refdomainh)reftypeh+ reftarget@/translations/sp_SP/userspace-api/media/v4l/vidioc-subdev-g-cropmodnameN 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:spacepreserveuh1hhhhhhZ/var/lib/git/docbuild/linux/Documentation/userspace-api/media/v4l/vidioc-subdev-g-crop.rsthKubhtarget)}(h.. _VIDIOC_SUBDEV_G_CROP:h]h}(h]h ]h"]h$]h&]refidvidioc-subdev-g-cropuh1hhKhhhhhhubhsection)}(hhh](htitle)}(h0ioctl VIDIOC_SUBDEV_G_CROP, VIDIOC_SUBDEV_S_CROPh]h0ioctl VIDIOC_SUBDEV_G_CROP, VIDIOC_SUBDEV_S_CROP}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhhhhhKubh)}(hhh](h)}(hNameh]hName}(hhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhhhhhK ubh paragraph)}(h[VIDIOC_SUBDEV_G_CROP - VIDIOC_SUBDEV_S_CROP - Get or set the crop rectangle on a subdev padh]h[VIDIOC_SUBDEV_G_CROP - VIDIOC_SUBDEV_S_CROP - Get or set the crop rectangle on a subdev pad}(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_SUBDEV_G_CROP (C macro)c.V4L.VIDIOC_SUBDEV_G_CROPhNtauh1j%hjhhhNhNubhdesc)}(hhh](hdesc_signature)}(hVIDIOC_SUBDEV_G_CROPh]hdesc_signature_line)}(hVIDIOC_SUBDEV_G_CROPh]h desc_name)}(hVIDIOC_SUBDEV_G_CROPh]h desc_sig_name)}(hj?h]hVIDIOC_SUBDEV_G_CROP}(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)}(hJ``int ioctl(int fd, VIDIOC_SUBDEV_G_CROP, struct v4l2_subdev_crop *argp)``h]hliteral)}(hjh]hFint ioctl(int fd, VIDIOC_SUBDEV_G_CROP, struct v4l2_subdev_crop *argp)}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhKhjhhubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2"V4L.VIDIOC_SUBDEV_S_CROP (C macro)c.V4L.VIDIOC_SUBDEV_S_CROPhNtauh1j%hjhhhNhNubj7)}(hhh](j<)}(hVIDIOC_SUBDEV_S_CROPh]jB)}(hVIDIOC_SUBDEV_S_CROPh]jH)}(hVIDIOC_SUBDEV_S_CROPh]jN)}(hjh]hVIDIOC_SUBDEV_S_CROP}(hjhhhNhNubah}(h]h ]jYah"]h$]h&]uh1jMhjubah}(h]h ](j`jaeh"]h$]h&]hhuh1jGhjhhhhhKubah}(h]h ]h"]h$]h&]hhjkuh1jAjljmhjhhhhhKubah}(h]jah ](jqjreh"]h$]h&]jvjw)jxhuh1j;hhhKhjhhubjz)}(hhh]h}(h]h ]h"]h$]h&]uh1jyhjhhhhhKubeh}(h]h ](jmacroeh"]h$]h&]jjjjjjjjjuh1j6hhhjhNhNubh)}(hP``int ioctl(int fd, VIDIOC_SUBDEV_S_CROP, const struct v4l2_subdev_crop *argp)``h]j)}(hjh]hLint ioctl(int fd, VIDIOC_SUBDEV_S_CROP, const struct v4l2_subdev_crop *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)}(hj6h]hfd}(hj8hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj4ubah}(h]h ]h"]h$]h&]uh1j2hhhKhj.ubh definition)}(hhh]h)}(h-File descriptor returned by :c:func:`open()`.h](hFile descriptor returned by }(hjPhhhNhNubh)}(h:c:func:`open()`h]j)}(hjZh]hopen()}(hj\hhhNhNubah}(h]h ](xrefjc-funceh"]h$]h&]uh1jhjXubah}(h]h ]h"]h$]h&]refdoc,userspace-api/media/v4l/vidioc-subdev-g-crop refdomainjreftypefunc refexplicitrefwarn c:parent_keysphinx.domains.c LookupKey)}data]jy ASTIdentifier)} identifierV4LsbNasb reftargetopenuh1hhhhKhjPubh.}(hjPhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKhjMubah}(h]h ]h"]h$]h&]uh1jKhj.ubeh}(h]h ]h"]h$]h&]uh1j,hhhKhj)ubj-)}(h7``argp`` Pointer to struct :c:type:`v4l2_subdev_crop`. h](j3)}(h``argp``h]j)}(hjh]hargp}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1j2hhhK!hjubjL)}(hhh]h)}(h-Pointer to struct :c:type:`v4l2_subdev_crop`.h](hPointer to struct }(hjhhhNhNubh)}(h:c:type:`v4l2_subdev_crop`h]j)}(hjh]hv4l2_subdev_crop}(hjhhhNhNubah}(h]h ](jfjc-typeeh"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]refdocjr refdomainjreftypetype refexplicitrefwarnjxj|jv4l2_subdev_cropuh1hhhhK!hjubh.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK!hjubah}(h]h ]h"]h$]h&]uh1jKhjubeh}(h]h ]h"]h$]h&]uh1j,hhhK!hj)hhubeh}(h]h ]h"]h$]h&]uh1j'hjhhhhhNubeh}(h] argumentsah ]h"] argumentsah$]h&]uh1hhhhhhhhKubh)}(hhh](h)}(h Descriptionh]h Description}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhjhhhhhK$ubhnote)}(hThis is an :ref:`obsolete` interface and may be removed in the future. It is superseded by :ref:`the selection API `. No new extensions to the :c:type:`v4l2_subdev_crop` structure will be accepted.h]h)}(hThis is an :ref:`obsolete` interface and may be removed in the future. It is superseded by :ref:`the selection API `. No new extensions to the :c:type:`v4l2_subdev_crop` structure will be accepted.h](h This is an }(hjhhhNhNubh)}(h:ref:`obsolete`h]hinline)}(hj)h]hobsolete}(hj-hhhNhNubah}(h]h ](jfstdstd-refeh"]h$]h&]uh1j+hj'ubah}(h]h ]h"]h$]h&]refdocjr refdomainj7reftyperef refexplicitrefwarnjobsoleteuh1hhhhK(hjubhA interface and may be removed in the future. It is superseded by }(hjhhhNhNubh)}(h4:ref:`the selection API `h]j,)}(hjOh]hthe selection API}(hjQhhhNhNubah}(h]h ](jfstdstd-refeh"]h$]h&]uh1j+hjMubah}(h]h ]h"]h$]h&]refdocjr refdomainj[reftyperef refexplicitrefwarnjvidioc_subdev_g_selectionuh1hhhhK(hjubh. No new extensions to the }(hjhhhNhNubh)}(h:c:type:`v4l2_subdev_crop`h]j)}(hjsh]hv4l2_subdev_crop}(hjuhhhNhNubah}(h]h ](jfjc-typeeh"]h$]h&]uh1jhjqubah}(h]h ]h"]h$]h&]refdocjr refdomainjreftypetype refexplicitrefwarnjxj|jv4l2_subdev_cropuh1hhhhK(hjubh structure will be accepted.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK(hjubah}(h]h ]h"]h$]h&]uh1jhjhhhhhNubh)}(hXTo retrieve the current crop rectangle applications set the ``pad`` field of a struct :c:type:`v4l2_subdev_crop` to the desired pad number as reported by the media API and the ``which`` field to ``V4L2_SUBDEV_FORMAT_ACTIVE``. They then call the ``VIDIOC_SUBDEV_G_CROP`` ioctl with a pointer to this structure. The driver fills the members of the ``rect`` field or returns ``EINVAL`` error code if the input arguments are invalid, or if cropping is not supported on the given pad.h](hApplications can query the device capabilities by setting the }(hjhhhNhNubj)}(h ``which``h]hwhich}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh to }(hjhhhNhNubj)}(h``V4L2_SUBDEV_FORMAT_TRY``h]hV4L2_SUBDEV_FORMAT_TRY}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubhX. When set, ‘try’ crop rectangles are not applied to the device by the driver, but are mangled exactly as active crop rectangles and stored in the sub-device file handle. Two applications querying the same sub-device would thus not interact with each other.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK>hjhhubh)}(hIf the subdev device node has been registered in read-only mode, calls to ``VIDIOC_SUBDEV_S_CROP`` are only valid if the ``which`` field is set to ``V4L2_SUBDEV_FORMAT_TRY``, otherwise an error is returned and the errno variable is set to ``-EPERM``.h](hJIf the subdev device node has been registered in read-only mode, calls to }(hjhhhNhNubj)}(h``VIDIOC_SUBDEV_S_CROP``h]hVIDIOC_SUBDEV_S_CROP}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh are only valid if the }(hjhhhNhNubj)}(h ``which``h]hwhich}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh field is set to }(hjhhhNhNubj)}(h``V4L2_SUBDEV_FORMAT_TRY``h]hV4L2_SUBDEV_FORMAT_TRY}(hj&hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubhB, otherwise an error is returned and the errno variable is set to }(hjhhhNhNubj)}(h ``-EPERM``h]h-EPERM}(hj8hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKEhjhhubh)}(hXDrivers must not return an error solely because the requested crop rectangle doesn't match the device capabilities. They must instead modify the rectangle to match what the hardware can provide. The modified format should be as close as possible to the original request.h]hXDrivers must not return an error solely because the requested crop rectangle doesn’t match the device capabilities. They must instead modify the rectangle to match what the hardware can provide. The modified format should be as close as possible to the original request.}(hjPhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKJhjhhubj&)}(hhh]h}(h]h ]h"]h$]h&]entries](j2V4L.v4l2_subdev_crop (C type)c.V4L.v4l2_subdev_crophNtauh1j%hjhhhNhNubj7)}(hhh](j<)}(hv4l2_subdev_croph]jB)}(htype v4l2_subdev_croph](hdesc_sig_keyword)}(htypeh]htype}(hjyhhhNhNubah}(h]h ]kah"]h$]h&]uh1jwhjshhhhhKOubhdesc_sig_space)}(h h]h }(hjhhhNhNubah}(h]h ]wah"]h$]h&]uh1jhjshhhhhKOubjH)}(hv4l2_subdev_croph]jN)}(hjqh]hv4l2_subdev_crop}(hjhhhNhNubah}(h]h ]jYah"]h$]h&]uh1jMhjubah}(h]h ](j`jaeh"]h$]h&]hhuh1jGhjshhhhhKOubeh}(h]h ]h"]h$]h&]hhjkuh1jAjljmhjohhhhhKOubah}(h]jjah ](jqjreh"]h$]h&]jvjw)jxhuh1j;hhhKOhjlhhubjz)}(hhh]h}(h]h ]h"]h$]h&]uh1jyhjlhhhhhKOubeh}(h]h ](jtypeeh"]h$]h&]jjjjjjjjjuh1j6hhhjhNhNubhtabular_col_spec)}(hhh]h}(h]h ]h"]h$]h&]spec|p{4.4cm}|p{4.4cm}|p{8.5cm}|uh1jhhhKQhjhhubhtable)}(hhh](h)}(hstruct v4l2_subdev_croph]hstruct v4l2_subdev_crop}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKShjubhtgroup)}(hhh](hcolspec)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jhjubj)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jhjubj)}(hhh]h}(h]h ]h"]h$]h&]colwidthKuh1jhjubhtbody)}(hhh](hrow)}(hhh](hentry)}(hhh]h)}(h__u32h]h__u32}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKXhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h``pad``h]j)}(hj9h]hpad}(hj;hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj7ubah}(h]h ]h"]h$]h&]uh1hhhhKYhj4ubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h.Pad number as reported by the media framework.h]h.Pad number as reported by the media framework.}(hjWhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKZhjTubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(h__u32h]h__u32}(hjwhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhK[hjtubah}(h]h ]h"]h$]h&]uh1jhjqubj)}(hhh]h)}(h ``which``h]j)}(hjh]hwhich}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhK\hjubah}(h]h ]h"]h$]h&]uh1jhjqubj)}(hhh]h)}(heCrop rectangle to get or set, from enum :ref:`v4l2_subdev_format_whence `.h](h(Crop rectangle to get or set, from enum }(hjhhhNhNubh)}(h<:ref:`v4l2_subdev_format_whence `h]j,)}(hjh]hv4l2_subdev_format_whence}(hjhhhNhNubah}(h]h ](jfstdstd-refeh"]h$]h&]uh1j+hjubah}(h]h ]h"]h$]h&]refdocjr refdomainjreftyperef refexplicitrefwarnjv4l2-subdev-format-whenceuh1hhhhK]hjubh.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK]hjubah}(h]h ]h"]h$]h&]uh1jhjqubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(hstruct :c:type:`v4l2_rect`h](hstruct }(hjhhhNhNubh)}(h:c:type:`v4l2_rect`h]j)}(hjh]h v4l2_rect}(hjhhhNhNubah}(h]h ](jfjc-typeeh"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]refdocjr refdomainjreftypetype refexplicitrefwarnjxj|j v4l2_rectuh1hhhhK_hjubeh}(h]h ]h"]h$]h&]uh1hhhhK_hjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h``rect``h]j)}(hj*h]hrect}(hj,hhhNhNubah}(h]h ]h"]h$]h&]uh1jhj(ubah}(h]h ]h"]h$]h&]uh1hhhhK`hj%ubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h%Crop rectangle boundaries, in pixels.h]h%Crop rectangle boundaries, in pixels.}(hjHhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKahjEubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(h__u32h]h__u32}(hjhhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKbhjeubah}(h]h ]h"]h$]h&]uh1jhjbubj)}(hhh]h)}(h ``stream``h]j)}(hjh]hstream}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]uh1hhhhKchj|ubah}(h]h ]h"]h$]h&]uh1jhjbubj)}(hhh]h)}(hStream identifier.h]hStream identifier.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKdhjubah}(h]h ]h"]h$]h&]uh1jhjbubeh}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh](j)}(hhh]h)}(h__u32h]h__u32}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKehjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(h``reserved``\ [7]h](j)}(h ``reserved``h]hreserved}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh [7]}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKfhjubah}(h]h ]h"]h$]h&]uh1jhjubj)}(hhh]h)}(hTReserved for future extensions. Applications and drivers must set the array to zero.h]hTReserved for future extensions. Applications and drivers must set the array to zero.}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1hhhhKghjubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]colsKuh1jhjubeh}(h]id1ah ]h"]h$]h&]uh1jhjhhhNhNubeh}(h] descriptionah ]h"] descriptionah$]h&]uh1hhhhhhhhK$ubh)}(hhh](h)}(h Return Valueh]h Return Value}(hj4hhhNhNubah}(h]h ]h"]h$]h&]uh1hhj1hhhhhKkubh)}(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 }(hjBhhhNhNubj)}(h ``errno``h]herrno}(hjJhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjBubhM variable is set appropriately. The generic error codes are described at the }(hjBhhhNhNubh)}(h':ref:`Generic Error Codes `h]j,)}(hj^h]hGeneric Error Codes}(hj`hhhNhNubah}(h]h ](jfstdstd-refeh"]h$]h&]uh1j+hj\ubah}(h]h ]h"]h$]h&]refdocjr refdomainjjreftyperef refexplicitrefwarnj gen-errorsuh1hhhhKmhjBubh chapter.}(hjBhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKmhj1hhubj()}(hhh](j-)}(hXEBUSY The crop rectangle can't be changed because the pad is currently busy. This can be caused, for instance, by an active video stream on the pad. The ioctl must not be retried without performing another action to fix the problem first. Only returned by ``VIDIOC_SUBDEV_S_CROP`` h](j3)}(hEBUSYh]hEBUSY}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j2hhhKvhjubjL)}(hhh]h)}(hXThe crop rectangle can't be changed because the pad is currently busy. This can be caused, for instance, by an active video stream on the pad. The ioctl must not be retried without performing another action to fix the problem first. Only returned by ``VIDIOC_SUBDEV_S_CROP``h](hThe crop rectangle can’t be changed because the pad is currently busy. This can be caused, for instance, by an active video stream on the pad. The ioctl must not be retried without performing another action to fix the problem first. Only returned by }(hjhhhNhNubj)}(h``VIDIOC_SUBDEV_S_CROP``h]hVIDIOC_SUBDEV_S_CROP}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubeh}(h]h ]h"]h$]h&]uh1hhhhKrhjubah}(h]h ]h"]h$]h&]uh1jKhjubeh}(h]h ]h"]h$]h&]uh1j,hhhKvhjubj-)}(hEINVAL The struct :c:type:`v4l2_subdev_crop` ``pad`` references a non-existing pad, the ``which`` field has an unsupported value, or cropping is not supported on the given subdev pad. h](j3)}(hEINVALh]hEINVAL}(hjhhhNhNubah}(h]h ]h"]h$]h&]uh1j2hhhK{hjubjL)}(hhh]h)}(hThe struct :c:type:`v4l2_subdev_crop` ``pad`` references a non-existing pad, the ``which`` field has an unsupported value, or cropping is not supported on the given subdev pad.h](h The struct }(hjhhhNhNubh)}(h:c:type:`v4l2_subdev_crop`h]j)}(hjh]hv4l2_subdev_crop}(hjhhhNhNubah}(h]h ](jfjc-typeeh"]h$]h&]uh1jhjubah}(h]h ]h"]h$]h&]refdocjr refdomainjreftypetype refexplicitrefwarnjxj|jv4l2_subdev_cropuh1hhhhKyhjubh }(hjhhhNhNubj)}(h``pad``h]hpad}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubh$ references a non-existing pad, the }(hjhhhNhNubj)}(h ``which``h]hwhich}(hj hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjubhV field has an unsupported value, or cropping is not supported on the given subdev pad.}(hjhhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhKyhjubah}(h]h ]h"]h$]h&]uh1jKhjubeh}(h]h ]h"]h$]h&]uh1j,hhhK{hjhhubj-)}(hEPERM The ``VIDIOC_SUBDEV_S_CROP`` ioctl has been called on a read-only subdevice and the ``which`` field is set to ``V4L2_SUBDEV_FORMAT_ACTIVE``.h](j3)}(hEPERMh]hEPERM}(hj@ hhhNhNubah}(h]h ]h"]h$]h&]uh1j2hhhK~hj< ubjL)}(hhh]h)}(hThe ``VIDIOC_SUBDEV_S_CROP`` ioctl has been called on a read-only subdevice and the ``which`` field is set to ``V4L2_SUBDEV_FORMAT_ACTIVE``.h](hThe }(hjQ hhhNhNubj)}(h``VIDIOC_SUBDEV_S_CROP``h]hVIDIOC_SUBDEV_S_CROP}(hjY hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjQ ubh8 ioctl has been called on a read-only subdevice and the }(hjQ hhhNhNubj)}(h ``which``h]hwhich}(hjk hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjQ ubh field is set to }(hjQ hhhNhNubj)}(h``V4L2_SUBDEV_FORMAT_ACTIVE``h]hV4L2_SUBDEV_FORMAT_ACTIVE}(hj} hhhNhNubah}(h]h ]h"]h$]h&]uh1jhjQ ubh.}(hjQ hhhNhNubeh}(h]h ]h"]h$]h&]uh1hhhhK~hjN ubah}(h]h ]h"]h$]h&]uh1jKhj< ubeh}(h]h ]h"]h$]h&]uh1j,hhhK~hjhhubeh}(h]h ]h"]h$]h&]uh1j'hj1hhhhhNubeh}(h] return-valueah ]h"] return valueah$]h&]uh1hhhhhhhhKkubeh}(h](/ioctl-vidioc-subdev-g-crop-vidioc-subdev-s-cropheh ]h"](0ioctl vidioc_subdev_g_crop, vidioc_subdev_s_cropvidioc_subdev_g_cropeh$]h&]uh1hhhhhhhhKexpect_referenced_by_name}j hsexpect_referenced_by_id}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]hasnameids}(j hj j jjjjjjj.j+j j u nametypes}(j j jjjj.j uh}(hhj hjhjjj4j=jjjjj+jjjjoj j1j$ju footnote_refs} citation_refs} autofootnotes]autofootnote_refs]symbol_footnotes]symbol_footnote_refs] footnotes] citations]autofootnote_startKsymbol_footnote_startK id_counter collectionsCounter}j KsRparse_messages]transform_messages]hsystem_message)}(hhh]h)}(hhh]h:Hyperlink target "vidioc-subdev-g-crop" is not referenced.}hjH sbah}(h]h ]h"]h$]h&]uh1hhjE ubah}(h]h ]h"]h$]h&]levelKtypeINFOsourcehnjlineKuh1jC uba transformerN include_log] decorationNhhub.