1// SPDX-License-Identifier: GPL-2.0 OR MIT
2
3#ifndef __DRM_PROBE_HELPER_H__
4#define __DRM_PROBE_HELPER_H__
5
6#include <drm/drm_modes.h>
7
8struct drm_connector;
9struct drm_crtc;
10struct drm_device;
11struct drm_modeset_acquire_ctx;
12
13int drm_helper_probe_single_connector_modes(struct drm_connector
14 *connector, uint32_t maxX,
15 uint32_t maxY);
16int drm_helper_probe_detect(struct drm_connector *connector,
17 struct drm_modeset_acquire_ctx *ctx,
18 bool force);
19void drm_kms_helper_poll_init(struct drm_device *dev);
20void drm_kms_helper_poll_fini(struct drm_device *dev);
21bool drm_helper_hpd_irq_event(struct drm_device *dev);
22bool drm_connector_helper_hpd_irq_event(struct drm_connector *connector);
23void drm_kms_helper_hotplug_event(struct drm_device *dev);
24void drm_kms_helper_connector_hotplug_event(struct drm_connector *connector);
25
26void drm_kms_helper_poll_disable(struct drm_device *dev);
27void drm_kms_helper_poll_enable(struct drm_device *dev);
28void drm_kms_helper_poll_reschedule(struct drm_device *dev);
29bool drm_kms_helper_is_poll_worker(void);
30
31enum drm_mode_status drm_crtc_helper_mode_valid_fixed(struct drm_crtc *crtc,
32 const struct drm_display_mode *mode,
33 const struct drm_display_mode *fixed_mode);
34
35int drm_connector_helper_get_modes_from_ddc(struct drm_connector *connector);
36int drm_connector_helper_get_modes_fixed(struct drm_connector *connector,
37 const struct drm_display_mode *fixed_mode);
38int drm_connector_helper_get_modes(struct drm_connector *connector);
39int drm_connector_helper_tv_get_modes(struct drm_connector *connector);
40
41#endif
42

source code of linux/include/drm/drm_probe_helper.h