Lines Matching +full:mode +full:-
1 .. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later
12 CEC_G_MODE, CEC_S_MODE - Get or set exclusive use of the CEC adapter
32 Pointer to CEC mode.
40 filehandle to initiator and/or follower mode which can be exclusive
41 depending on the chosen mode. The initiator is the filehandle that is
61 by the follower. The follower can enable the passthrough mode. In that
65 the passthrough mode. See :ref:`cec-core-processing` for details.
77 .. _cec-mode-initiator_e:
79 .. flat-table:: Initiator Modes
80 :header-rows: 0
81 :stub-columns: 0
84 * .. _`CEC-MODE-NO-INITIATOR`:
86 - ``CEC_MODE_NO_INITIATOR``
87 - 0x0
88 - This is not an initiator, i.e. it cannot transmit CEC messages or
90 * .. _`CEC-MODE-INITIATOR`:
92 - ``CEC_MODE_INITIATOR``
93 - 0x1
94 - This is an initiator (the default when the device is opened) and
97 * .. _`CEC-MODE-EXCL-INITIATOR`:
99 - ``CEC_MODE_EXCL_INITIATOR``
100 - 0x2
101 - This is an exclusive initiator and this file descriptor is the
111 .. _cec-mode-follower_e:
115 .. flat-table:: Follower Modes
116 :header-rows: 0
117 :stub-columns: 0
120 * .. _`CEC-MODE-NO-FOLLOWER`:
122 - ``CEC_MODE_NO_FOLLOWER``
123 - 0x00
124 - This is not a follower (the default when the device is opened).
125 * .. _`CEC-MODE-FOLLOWER`:
127 - ``CEC_MODE_FOLLOWER``
128 - 0x10
129 - This is a follower and it will receive CEC messages unless there
131 …:ref:`CEC_CAP_TRANSMIT <CEC-CAP-TRANSMIT>` is not set or if :ref:`CEC_MODE_NO_INITIATOR <CEC-MODE-…
133 * .. _`CEC-MODE-EXCL-FOLLOWER`:
135 - ``CEC_MODE_EXCL_FOLLOWER``
136 - 0x20
137 - This is an exclusive follower and only this file descriptor will
141 …:ref:`CEC_CAP_TRANSMIT <CEC-CAP-TRANSMIT>` is not set or if :ref:`CEC_MODE_NO_INITIATOR <CEC-MODE-…
143 * .. _`CEC-MODE-EXCL-FOLLOWER-PASSTHRU`:
145 - ``CEC_MODE_EXCL_FOLLOWER_PASSTHRU``
146 - 0x30
147 - This is an exclusive follower and only this file descriptor will
149 CEC device into passthrough mode, allowing the exclusive follower
153 code. You cannot become a follower if :ref:`CEC_CAP_TRANSMIT <CEC-CAP-TRANSMIT>`
154 is not set or if :ref:`CEC_MODE_NO_INITIATOR <CEC-MODE-NO-INITIATOR>` was specified,
156 * .. _`CEC-MODE-MONITOR-PIN`:
158 - ``CEC_MODE_MONITOR_PIN``
159 - 0xd0
160 - Put the file descriptor into pin monitoring mode. Can only be used in
161 combination with :ref:`CEC_MODE_NO_INITIATOR <CEC-MODE-NO-INITIATOR>`,
163 This mode requires that the :ref:`CEC_CAP_MONITOR_PIN <CEC-CAP-MONITOR-PIN>`
165 While in pin monitoring mode this file descriptor can receive the
167 low-level CEC pin transitions. This is very useful for debugging.
168 This mode is only allowed if the process has the ``CAP_NET_ADMIN``
170 * .. _`CEC-MODE-MONITOR`:
172 - ``CEC_MODE_MONITOR``
173 - 0xe0
174 - Put the file descriptor into monitor mode. Can only be used in
175 combination with :ref:`CEC_MODE_NO_INITIATOR <CEC-MODE-NO-INITIATOR>`,
177 In monitor mode all messages this CEC
183 * .. _`CEC-MODE-MONITOR-ALL`:
185 - ``CEC_MODE_MONITOR_ALL``
186 - 0xf0
187 - Put the file descriptor into 'monitor all' mode. Can only be used
188 in combination with :ref:`CEC_MODE_NO_INITIATOR <CEC-MODE-NO-INITIATOR>`, otherwise
189 the ``EINVAL`` error code will be returned. In 'monitor all' mode all messages
193 mode requires that the :ref:`CEC_CAP_MONITOR_ALL <CEC-CAP-MONITOR-ALL>` capability is set,
202 .. _cec-core-processing:
204 .. flat-table:: Core Message Processing
205 :header-rows: 0
206 :stub-columns: 0
209 * .. _`CEC-MSG-GET-CEC-VERSION`:
211 - ``CEC_MSG_GET_CEC_VERSION``
212 - The core will return the CEC version that was set with
214 except when in passthrough mode. In passthrough mode the core
217 * .. _`CEC-MSG-GIVE-DEVICE-VENDOR-ID`:
219 - ``CEC_MSG_GIVE_DEVICE_VENDOR_ID``
220 - The core will return the vendor ID that was set with
222 except when in passthrough mode. In passthrough mode the core
225 * .. _`CEC-MSG-ABORT`:
227 - ``CEC_MSG_ABORT``
228 - The core will return a Feature Abort message with reason
230 passthrough mode. In passthrough mode the core does nothing
232 * .. _`CEC-MSG-GIVE-PHYSICAL-ADDR`:
234 - ``CEC_MSG_GIVE_PHYSICAL_ADDR``
235 - The core will report the current physical address, except when
236 in passthrough mode. In passthrough mode the core does nothing
238 * .. _`CEC-MSG-GIVE-OSD-NAME`:
240 - ``CEC_MSG_GIVE_OSD_NAME``
241 - The core will report the current OSD name that was set with
243 except when in passthrough mode. In passthrough mode the core
246 * .. _`CEC-MSG-GIVE-FEATURES`:
248 - ``CEC_MSG_GIVE_FEATURES``
249 - The core will do nothing if the CEC version is older than 2.0,
252 except when in passthrough mode. In passthrough mode the core
255 * .. _`CEC-MSG-USER-CONTROL-PRESSED`:
257 - ``CEC_MSG_USER_CONTROL_PRESSED``
258 - If :ref:`CEC_CAP_RC <CEC-CAP-RC>` is set and if
259 :ref:`CEC_LOG_ADDRS_FL_ALLOW_RC_PASSTHRU <CEC-LOG-ADDRS-FL-ALLOW-RC-PASSTHRU>`
262 * .. _`CEC-MSG-USER-CONTROL-RELEASED`:
264 - ``CEC_MSG_USER_CONTROL_RELEASED``
265 - If :ref:`CEC_CAP_RC <CEC-CAP-RC>` is set and if
266 :ref:`CEC_LOG_ADDRS_FL_ALLOW_RC_PASSTHRU <CEC-LOG-ADDRS-FL-ALLOW-RC-PASSTHRU>`
269 * .. _`CEC-MSG-REPORT-PHYSICAL-ADDR`:
271 - ``CEC_MSG_REPORT_PHYSICAL_ADDR``
272 - The CEC framework will make note of the reported physical address
279 On success 0 is returned, on error -1 and the ``errno`` variable is set
281 :ref:`Generic Error Codes <gen-errors>` chapter.
287 The requested mode is invalid.
290 Monitor mode is requested, but the process does have the ``CAP_NET_ADMIN``