1fcd70cd3SDaniel Vetter // SPDX-License-Identifier: GPL-2.0 OR MIT 2fcd70cd3SDaniel Vetter 3fcd70cd3SDaniel Vetter #ifndef __DRM_PROBE_HELPER_H__ 4fcd70cd3SDaniel Vetter #define __DRM_PROBE_HELPER_H__ 5fcd70cd3SDaniel Vetter 6*216b9bbaSThomas Zimmermann #include <drm/drm_modes.h> 7fcd70cd3SDaniel Vetter 8fcd70cd3SDaniel Vetter struct drm_connector; 9*216b9bbaSThomas Zimmermann struct drm_crtc; 10fcd70cd3SDaniel Vetter struct drm_device; 11fcd70cd3SDaniel Vetter struct drm_modeset_acquire_ctx; 12fcd70cd3SDaniel Vetter 13fcd70cd3SDaniel Vetter int drm_helper_probe_single_connector_modes(struct drm_connector 14fcd70cd3SDaniel Vetter *connector, uint32_t maxX, 15fcd70cd3SDaniel Vetter uint32_t maxY); 16fcd70cd3SDaniel Vetter int drm_helper_probe_detect(struct drm_connector *connector, 17fcd70cd3SDaniel Vetter struct drm_modeset_acquire_ctx *ctx, 18fcd70cd3SDaniel Vetter bool force); 19fcd70cd3SDaniel Vetter void drm_kms_helper_poll_init(struct drm_device *dev); 20fcd70cd3SDaniel Vetter void drm_kms_helper_poll_fini(struct drm_device *dev); 21fcd70cd3SDaniel Vetter bool drm_helper_hpd_irq_event(struct drm_device *dev); 220464ed1aSMaxime Ripard bool drm_connector_helper_hpd_irq_event(struct drm_connector *connector); 23fcd70cd3SDaniel Vetter void drm_kms_helper_hotplug_event(struct drm_device *dev); 24710074bbSSimon Ser void drm_kms_helper_connector_hotplug_event(struct drm_connector *connector); 25fcd70cd3SDaniel Vetter 26fcd70cd3SDaniel Vetter void drm_kms_helper_poll_disable(struct drm_device *dev); 27fcd70cd3SDaniel Vetter void drm_kms_helper_poll_enable(struct drm_device *dev); 28fcd70cd3SDaniel Vetter bool drm_kms_helper_is_poll_worker(void); 29fcd70cd3SDaniel Vetter 30*216b9bbaSThomas Zimmermann enum drm_mode_status drm_crtc_helper_mode_valid_fixed(struct drm_crtc *crtc, 31*216b9bbaSThomas Zimmermann const struct drm_display_mode *mode, 32*216b9bbaSThomas Zimmermann const struct drm_display_mode *fixed_mode); 33*216b9bbaSThomas Zimmermann 3416f14564SThomas Zimmermann int drm_connector_helper_get_modes_from_ddc(struct drm_connector *connector); 35d25654b3SThomas Zimmermann int drm_connector_helper_get_modes_fixed(struct drm_connector *connector, 36d25654b3SThomas Zimmermann const struct drm_display_mode *fixed_mode); 37964893d3SJani Nikula int drm_connector_helper_get_modes(struct drm_connector *connector); 3816f14564SThomas Zimmermann 39fcd70cd3SDaniel Vetter #endif 40