1 .. SPDX-License-Identifier: GFDL-1.1-no-invari 1 .. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later 2 .. c:namespace:: MC 2 .. c:namespace:: MC 3 3 4 .. _media_ioc_setup_link: 4 .. _media_ioc_setup_link: 5 5 6 ************************** 6 ************************** 7 ioctl MEDIA_IOC_SETUP_LINK 7 ioctl MEDIA_IOC_SETUP_LINK 8 ************************** 8 ************************** 9 9 10 Name 10 Name 11 ==== 11 ==== 12 12 13 MEDIA_IOC_SETUP_LINK - Modify the properties o 13 MEDIA_IOC_SETUP_LINK - Modify the properties of a link 14 14 15 Synopsis 15 Synopsis 16 ======== 16 ======== 17 17 18 .. c:macro:: MEDIA_IOC_SETUP_LINK 18 .. c:macro:: MEDIA_IOC_SETUP_LINK 19 19 20 ``int ioctl(int fd, MEDIA_IOC_SETUP_LINK, stru 20 ``int ioctl(int fd, MEDIA_IOC_SETUP_LINK, struct media_link_desc *argp)`` 21 21 22 Arguments 22 Arguments 23 ========= 23 ========= 24 24 25 ``fd`` 25 ``fd`` 26 File descriptor returned by :c:func:`open( 26 File descriptor returned by :c:func:`open()`. 27 27 28 ``argp`` 28 ``argp`` 29 Pointer to struct :c:type:`media_link_desc 29 Pointer to struct :c:type:`media_link_desc`. 30 30 31 Description 31 Description 32 =========== 32 =========== 33 33 34 To change link properties applications fill a 34 To change link properties applications fill a struct 35 :c:type:`media_link_desc` with link identifica 35 :c:type:`media_link_desc` with link identification 36 information (source and sink pad) and the new 36 information (source and sink pad) and the new requested link flags. They 37 then call the MEDIA_IOC_SETUP_LINK ioctl with 37 then call the MEDIA_IOC_SETUP_LINK ioctl with a pointer to that 38 structure. 38 structure. 39 39 40 The only configurable property is the ``ENABLE 40 The only configurable property is the ``ENABLED`` link flag to 41 enable/disable a link. Links marked with the ` 41 enable/disable a link. Links marked with the ``IMMUTABLE`` link flag can 42 not be enabled or disabled. 42 not be enabled or disabled. 43 43 44 Link configuration has no side effect on other 44 Link configuration has no side effect on other links. If an enabled link 45 at the sink pad prevents the link from being e 45 at the sink pad prevents the link from being enabled, the driver returns 46 with an ``EBUSY`` error code. 46 with an ``EBUSY`` error code. 47 47 48 Only links marked with the ``DYNAMIC`` link fl 48 Only links marked with the ``DYNAMIC`` link flag can be enabled/disabled 49 while streaming media data. Attempting to enab 49 while streaming media data. Attempting to enable or disable a streaming 50 non-dynamic link will return an ``EBUSY`` erro 50 non-dynamic link will return an ``EBUSY`` error code. 51 51 52 If the specified link can't be found the drive 52 If the specified link can't be found the driver returns with an ``EINVAL`` 53 error code. 53 error code. 54 54 55 Return Value 55 Return Value 56 ============ 56 ============ 57 57 58 On success 0 is returned, on error -1 and the 58 On success 0 is returned, on error -1 and the ``errno`` variable is set 59 appropriately. The generic error codes are des 59 appropriately. The generic error codes are described at the 60 :ref:`Generic Error Codes <gen-errors>` chapte 60 :ref:`Generic Error Codes <gen-errors>` chapter. 61 61 62 EINVAL 62 EINVAL 63 The struct :c:type:`media_link_desc` refer 63 The struct :c:type:`media_link_desc` references a 64 non-existing link, or the link is immutabl 64 non-existing link, or the link is immutable and an attempt to modify 65 its configuration was made. 65 its configuration was made.
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.