dp_display.h 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. /* SPDX-License-Identifier: GPL-2.0-only */
  2. /*
  3. * Copyright (c) 2017-2020, The Linux Foundation. All rights reserved.
  4. */
  5. #ifndef _DP_DISPLAY_H_
  6. #define _DP_DISPLAY_H_
  7. #include "dp_panel.h"
  8. #include <sound/hdmi-codec.h>
  9. #include "disp/msm_disp_snapshot.h"
  10. #define DP_MAX_PIXEL_CLK_KHZ 675000
  11. struct msm_dp {
  12. struct drm_device *drm_dev;
  13. struct platform_device *pdev;
  14. struct device *codec_dev;
  15. struct drm_connector *connector;
  16. struct drm_bridge *next_bridge;
  17. bool link_ready;
  18. bool audio_enabled;
  19. bool power_on;
  20. unsigned int connector_type;
  21. bool is_edp;
  22. bool internal_hpd;
  23. hdmi_codec_plugged_cb plugged_cb;
  24. struct dp_audio *dp_audio;
  25. bool psr_supported;
  26. };
  27. int dp_display_set_plugged_cb(struct msm_dp *dp_display,
  28. hdmi_codec_plugged_cb fn, struct device *codec_dev);
  29. int dp_display_get_modes(struct msm_dp *dp_display);
  30. bool dp_display_check_video_test(struct msm_dp *dp_display);
  31. int dp_display_get_test_bpp(struct msm_dp *dp_display);
  32. void dp_display_signal_audio_start(struct msm_dp *dp_display);
  33. void dp_display_signal_audio_complete(struct msm_dp *dp_display);
  34. void dp_display_set_psr(struct msm_dp *dp, bool enter);
  35. void dp_display_debugfs_init(struct msm_dp *dp_display, struct dentry *dentry, bool is_edp);
  36. #endif /* _DP_DISPLAY_H_ */