xref: /OK3568_Linux_fs/kernel/Documentation/userspace-api/media/cec/cec-ioc-adap-g-conn-info.rst (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun.. SPDX-License-Identifier: GPL-2.0
2*4882a593Smuzhiyun..
3*4882a593Smuzhiyun.. Copyright 2019 Google LLC
4*4882a593Smuzhiyun..
5*4882a593Smuzhiyun.. c:namespace:: CEC
6*4882a593Smuzhiyun
7*4882a593Smuzhiyun.. _CEC_ADAP_G_CONNECTOR_INFO:
8*4882a593Smuzhiyun
9*4882a593Smuzhiyun*******************************
10*4882a593Smuzhiyunioctl CEC_ADAP_G_CONNECTOR_INFO
11*4882a593Smuzhiyun*******************************
12*4882a593Smuzhiyun
13*4882a593SmuzhiyunName
14*4882a593Smuzhiyun====
15*4882a593Smuzhiyun
16*4882a593SmuzhiyunCEC_ADAP_G_CONNECTOR_INFO - Query HDMI connector information
17*4882a593Smuzhiyun
18*4882a593SmuzhiyunSynopsis
19*4882a593Smuzhiyun========
20*4882a593Smuzhiyun
21*4882a593Smuzhiyun.. c:macro:: CEC_ADAP_G_CONNECTOR_INFO
22*4882a593Smuzhiyun
23*4882a593Smuzhiyun``int ioctl(int fd, CEC_ADAP_G_CONNECTOR_INFO, struct cec_connector_info *argp)``
24*4882a593Smuzhiyun
25*4882a593SmuzhiyunArguments
26*4882a593Smuzhiyun=========
27*4882a593Smuzhiyun
28*4882a593Smuzhiyun``fd``
29*4882a593Smuzhiyun    File descriptor returned by :c:func:`open()`.
30*4882a593Smuzhiyun
31*4882a593Smuzhiyun``argp``
32*4882a593Smuzhiyun
33*4882a593SmuzhiyunDescription
34*4882a593Smuzhiyun===========
35*4882a593Smuzhiyun
36*4882a593SmuzhiyunUsing this ioctl an application can learn which HDMI connector this CEC
37*4882a593Smuzhiyundevice corresponds to. While calling this ioctl the application should
38*4882a593Smuzhiyunprovide a pointer to a cec_connector_info struct which will be populated
39*4882a593Smuzhiyunby the kernel with the info provided by the adapter's driver. This ioctl
40*4882a593Smuzhiyunis only available if the ``CEC_CAP_CONNECTOR_INFO`` capability is set.
41*4882a593Smuzhiyun
42*4882a593Smuzhiyun.. tabularcolumns:: |p{1.0cm}|p{4.4cm}|p{2.5cm}|p{9.6cm}|
43*4882a593Smuzhiyun
44*4882a593Smuzhiyun.. c:type:: cec_connector_info
45*4882a593Smuzhiyun
46*4882a593Smuzhiyun.. flat-table:: struct cec_connector_info
47*4882a593Smuzhiyun    :header-rows:  0
48*4882a593Smuzhiyun    :stub-columns: 0
49*4882a593Smuzhiyun    :widths:       1 1 8
50*4882a593Smuzhiyun
51*4882a593Smuzhiyun    * - __u32
52*4882a593Smuzhiyun      - ``type``
53*4882a593Smuzhiyun      - The type of connector this adapter is associated with.
54*4882a593Smuzhiyun    * - union {
55*4882a593Smuzhiyun      - ``(anonymous)``
56*4882a593Smuzhiyun    * - ``struct cec_drm_connector_info``
57*4882a593Smuzhiyun      - drm
58*4882a593Smuzhiyun      - :ref:`cec-drm-connector-info`
59*4882a593Smuzhiyun    * - }
60*4882a593Smuzhiyun      -
61*4882a593Smuzhiyun
62*4882a593Smuzhiyun.. tabularcolumns:: |p{4.4cm}|p{2.5cm}|p{10.6cm}|
63*4882a593Smuzhiyun
64*4882a593Smuzhiyun.. _connector-type:
65*4882a593Smuzhiyun
66*4882a593Smuzhiyun.. flat-table:: Connector types
67*4882a593Smuzhiyun    :header-rows:  0
68*4882a593Smuzhiyun    :stub-columns: 0
69*4882a593Smuzhiyun    :widths:       3 1 8
70*4882a593Smuzhiyun
71*4882a593Smuzhiyun    * .. _`CEC-CONNECTOR-TYPE-NO-CONNECTOR`:
72*4882a593Smuzhiyun
73*4882a593Smuzhiyun      - ``CEC_CONNECTOR_TYPE_NO_CONNECTOR``
74*4882a593Smuzhiyun      - 0
75*4882a593Smuzhiyun      - No connector is associated with the adapter/the information is not
76*4882a593Smuzhiyun        provided by the driver.
77*4882a593Smuzhiyun    * .. _`CEC-CONNECTOR-TYPE-DRM`:
78*4882a593Smuzhiyun
79*4882a593Smuzhiyun      - ``CEC_CONNECTOR_TYPE_DRM``
80*4882a593Smuzhiyun      - 1
81*4882a593Smuzhiyun      - Indicates that a DRM connector is associated with this adapter.
82*4882a593Smuzhiyun        Information about the connector can be found in
83*4882a593Smuzhiyun	:ref:`cec-drm-connector-info`.
84*4882a593Smuzhiyun
85*4882a593Smuzhiyun.. tabularcolumns:: |p{4.4cm}|p{2.5cm}|p{10.6cm}|
86*4882a593Smuzhiyun
87*4882a593Smuzhiyun.. c:type:: cec_drm_connector_info
88*4882a593Smuzhiyun
89*4882a593Smuzhiyun.. _cec-drm-connector-info:
90*4882a593Smuzhiyun
91*4882a593Smuzhiyun.. flat-table:: struct cec_drm_connector_info
92*4882a593Smuzhiyun    :header-rows:  0
93*4882a593Smuzhiyun    :stub-columns: 0
94*4882a593Smuzhiyun    :widths:       3 1 8
95*4882a593Smuzhiyun
96*4882a593Smuzhiyun    * .. _`CEC-DRM-CONNECTOR-TYPE-CARD-NO`:
97*4882a593Smuzhiyun
98*4882a593Smuzhiyun      - __u32
99*4882a593Smuzhiyun      - ``card_no``
100*4882a593Smuzhiyun      - DRM card number: the number from a card's path, e.g. 0 in case of
101*4882a593Smuzhiyun        /dev/card0.
102*4882a593Smuzhiyun    * .. _`CEC-DRM-CONNECTOR-TYPE-CONNECTOR_ID`:
103*4882a593Smuzhiyun
104*4882a593Smuzhiyun      - __u32
105*4882a593Smuzhiyun      - ``connector_id``
106*4882a593Smuzhiyun      - DRM connector ID.
107