1 .. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later 2 .. c:namespace:: CEC 3 4 .. _cec-func-open: 5 6 ********** 7 cec open() 8 ********** 9 10 Name 11 ==== 12 13 cec-open - Open a cec device 14 15 Synopsis 16 ======== 17 18 .. code-block:: c 19 20 #include <fcntl.h> 21 22 .. c:function:: int open( const char *device_name, int flags ) 23 24 Arguments 25 ========= 26 27 ``device_name`` 28 Device to be opened. 29 30 ``flags`` 31 Open flags. Access mode must be ``O_RDWR``. 32 33 When the ``O_NONBLOCK`` flag is given, the 34 :ref:`CEC_RECEIVE <CEC_RECEIVE>` and :ref:`CEC_DQEVENT <CEC_DQEVENT>` ioctls 35 will return the ``EAGAIN`` error code when no message or event is available, and 36 ioctls :ref:`CEC_TRANSMIT <CEC_TRANSMIT>`, 37 :ref:`CEC_ADAP_S_PHYS_ADDR <CEC_ADAP_S_PHYS_ADDR>` and 38 :ref:`CEC_ADAP_S_LOG_ADDRS <CEC_ADAP_S_LOG_ADDRS>` 39 all return 0. 40 41 Other flags have no effect. 42 43 Description 44 =========== 45 46 To open a cec device applications call :c:func:`open()` with the 47 desired device name. The function has no side effects; the device 48 configuration remain unchanged. 49 50 When the device is opened in read-only mode, attempts to modify its 51 configuration will result in an error, and ``errno`` will be set to 52 EBADF. 53 54 Return Value 55 ============ 56 57 :c:func:`open()` returns the new file descriptor on success. On error, 58 -1 is returned, and ``errno`` is set appropriately. Possible error codes 59 include: 60 61 ``EACCES`` 62 The requested access to the file is not allowed. 63 64 ``EMFILE`` 65 The process already has the maximum number of files open. 66 67 ``ENFILE`` 68 The system limit on the total number of open files has been reached. 69 70 ``ENOMEM`` 71 Insufficient kernel memory was available. 72 73 ``ENODEV`` 74 Device not found or was removed.
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.