162306a36Sopenharmony_ci.. SPDX-License-Identifier: GPL-2.0
262306a36Sopenharmony_ci..
362306a36Sopenharmony_ci.. Copyright 2019 Google LLC
462306a36Sopenharmony_ci..
562306a36Sopenharmony_ci.. c:namespace:: CEC
662306a36Sopenharmony_ci
762306a36Sopenharmony_ci.. _CEC_ADAP_G_CONNECTOR_INFO:
862306a36Sopenharmony_ci
962306a36Sopenharmony_ci*******************************
1062306a36Sopenharmony_ciioctl CEC_ADAP_G_CONNECTOR_INFO
1162306a36Sopenharmony_ci*******************************
1262306a36Sopenharmony_ci
1362306a36Sopenharmony_ciName
1462306a36Sopenharmony_ci====
1562306a36Sopenharmony_ci
1662306a36Sopenharmony_ciCEC_ADAP_G_CONNECTOR_INFO - Query HDMI connector information
1762306a36Sopenharmony_ci
1862306a36Sopenharmony_ciSynopsis
1962306a36Sopenharmony_ci========
2062306a36Sopenharmony_ci
2162306a36Sopenharmony_ci.. c:macro:: CEC_ADAP_G_CONNECTOR_INFO
2262306a36Sopenharmony_ci
2362306a36Sopenharmony_ci``int ioctl(int fd, CEC_ADAP_G_CONNECTOR_INFO, struct cec_connector_info *argp)``
2462306a36Sopenharmony_ci
2562306a36Sopenharmony_ciArguments
2662306a36Sopenharmony_ci=========
2762306a36Sopenharmony_ci
2862306a36Sopenharmony_ci``fd``
2962306a36Sopenharmony_ci    File descriptor returned by :c:func:`open()`.
3062306a36Sopenharmony_ci
3162306a36Sopenharmony_ci``argp``
3262306a36Sopenharmony_ci
3362306a36Sopenharmony_ciDescription
3462306a36Sopenharmony_ci===========
3562306a36Sopenharmony_ci
3662306a36Sopenharmony_ciUsing this ioctl an application can learn which HDMI connector this CEC
3762306a36Sopenharmony_cidevice corresponds to. While calling this ioctl the application should
3862306a36Sopenharmony_ciprovide a pointer to a cec_connector_info struct which will be populated
3962306a36Sopenharmony_ciby the kernel with the info provided by the adapter's driver. This ioctl
4062306a36Sopenharmony_ciis only available if the ``CEC_CAP_CONNECTOR_INFO`` capability is set.
4162306a36Sopenharmony_ci
4262306a36Sopenharmony_ci.. tabularcolumns:: |p{1.0cm}|p{4.4cm}|p{2.5cm}|p{9.2cm}|
4362306a36Sopenharmony_ci
4462306a36Sopenharmony_ci.. c:type:: cec_connector_info
4562306a36Sopenharmony_ci
4662306a36Sopenharmony_ci.. flat-table:: struct cec_connector_info
4762306a36Sopenharmony_ci    :header-rows:  0
4862306a36Sopenharmony_ci    :stub-columns: 0
4962306a36Sopenharmony_ci    :widths:       1 1 8
5062306a36Sopenharmony_ci
5162306a36Sopenharmony_ci    * - __u32
5262306a36Sopenharmony_ci      - ``type``
5362306a36Sopenharmony_ci      - The type of connector this adapter is associated with.
5462306a36Sopenharmony_ci    * - union {
5562306a36Sopenharmony_ci      - ``(anonymous)``
5662306a36Sopenharmony_ci    * - ``struct cec_drm_connector_info``
5762306a36Sopenharmony_ci      - drm
5862306a36Sopenharmony_ci      - :ref:`cec-drm-connector-info`
5962306a36Sopenharmony_ci    * - }
6062306a36Sopenharmony_ci      -
6162306a36Sopenharmony_ci
6262306a36Sopenharmony_ci.. tabularcolumns:: |p{4.4cm}|p{2.5cm}|p{10.4cm}|
6362306a36Sopenharmony_ci
6462306a36Sopenharmony_ci.. _connector-type:
6562306a36Sopenharmony_ci
6662306a36Sopenharmony_ci.. flat-table:: Connector types
6762306a36Sopenharmony_ci    :header-rows:  0
6862306a36Sopenharmony_ci    :stub-columns: 0
6962306a36Sopenharmony_ci    :widths:       3 1 8
7062306a36Sopenharmony_ci
7162306a36Sopenharmony_ci    * .. _`CEC-CONNECTOR-TYPE-NO-CONNECTOR`:
7262306a36Sopenharmony_ci
7362306a36Sopenharmony_ci      - ``CEC_CONNECTOR_TYPE_NO_CONNECTOR``
7462306a36Sopenharmony_ci      - 0
7562306a36Sopenharmony_ci      - No connector is associated with the adapter/the information is not
7662306a36Sopenharmony_ci        provided by the driver.
7762306a36Sopenharmony_ci    * .. _`CEC-CONNECTOR-TYPE-DRM`:
7862306a36Sopenharmony_ci
7962306a36Sopenharmony_ci      - ``CEC_CONNECTOR_TYPE_DRM``
8062306a36Sopenharmony_ci      - 1
8162306a36Sopenharmony_ci      - Indicates that a DRM connector is associated with this adapter.
8262306a36Sopenharmony_ci        Information about the connector can be found in
8362306a36Sopenharmony_ci	:ref:`cec-drm-connector-info`.
8462306a36Sopenharmony_ci
8562306a36Sopenharmony_ci.. tabularcolumns:: |p{4.4cm}|p{2.5cm}|p{10.4cm}|
8662306a36Sopenharmony_ci
8762306a36Sopenharmony_ci.. c:type:: cec_drm_connector_info
8862306a36Sopenharmony_ci
8962306a36Sopenharmony_ci.. _cec-drm-connector-info:
9062306a36Sopenharmony_ci
9162306a36Sopenharmony_ci.. flat-table:: struct cec_drm_connector_info
9262306a36Sopenharmony_ci    :header-rows:  0
9362306a36Sopenharmony_ci    :stub-columns: 0
9462306a36Sopenharmony_ci    :widths:       3 1 8
9562306a36Sopenharmony_ci
9662306a36Sopenharmony_ci    * .. _`CEC-DRM-CONNECTOR-TYPE-CARD-NO`:
9762306a36Sopenharmony_ci
9862306a36Sopenharmony_ci      - __u32
9962306a36Sopenharmony_ci      - ``card_no``
10062306a36Sopenharmony_ci      - DRM card number: the number from a card's path, e.g. 0 in case of
10162306a36Sopenharmony_ci        /dev/card0.
10262306a36Sopenharmony_ci    * .. _`CEC-DRM-CONNECTOR-TYPE-CONNECTOR_ID`:
10362306a36Sopenharmony_ci
10462306a36Sopenharmony_ci      - __u32
10562306a36Sopenharmony_ci      - ``connector_id``
10662306a36Sopenharmony_ci      - DRM connector ID.
107