1/* SPDX-License-Identifier: GPL-2.0-only */ 2/* 3 * Copyright (c) 2017-2020, The Linux Foundation. All rights reserved. 4 */ 5 6#ifndef _DP_DISPLAY_H_ 7#define _DP_DISPLAY_H_ 8 9#include "dp_panel.h" 10#include <sound/hdmi-codec.h> 11 12struct msm_dp { 13 struct drm_device *drm_dev; 14 struct device *codec_dev; 15 struct drm_connector *connector; 16 struct drm_encoder *encoder; 17 bool is_connected; 18 bool audio_enabled; 19 bool power_on; 20 21 hdmi_codec_plugged_cb plugged_cb; 22 23 u32 max_pclk_khz; 24 25 u32 max_dp_lanes; 26 struct dp_audio *dp_audio; 27}; 28 29int dp_display_set_plugged_cb(struct msm_dp *dp_display, 30 hdmi_codec_plugged_cb fn, struct device *codec_dev); 31int dp_display_validate_mode(struct msm_dp *dp_display, u32 mode_pclk_khz); 32int dp_display_get_modes(struct msm_dp *dp_display, 33 struct dp_display_mode *dp_mode); 34int dp_display_request_irq(struct msm_dp *dp_display); 35bool dp_display_check_video_test(struct msm_dp *dp_display); 36int dp_display_get_test_bpp(struct msm_dp *dp_display); 37void dp_display_signal_audio_start(struct msm_dp *dp_display); 38void dp_display_signal_audio_complete(struct msm_dp *dp_display); 39 40#endif /* _DP_DISPLAY_H_ */ 41