40 lines · c
1/* SPDX-License-Identifier: MIT */2/*3 * Copyright © 2019 Intel Corporation4 */5 6#ifndef __INTEL_SNPS_PHY_H__7#define __INTEL_SNPS_PHY_H__8 9#include <linux/types.h>10 11struct drm_i915_private;12struct intel_atomic_state;13struct intel_crtc;14struct intel_crtc_state;15struct intel_encoder;16struct intel_mpllb_state;17enum phy;18 19void intel_snps_phy_wait_for_calibration(struct drm_i915_private *dev_priv);20void intel_snps_phy_update_psr_power_state(struct intel_encoder *encoder,21 bool enable);22 23int intel_mpllb_calc_state(struct intel_crtc_state *crtc_state,24 struct intel_encoder *encoder);25void intel_mpllb_enable(struct intel_encoder *encoder,26 const struct intel_crtc_state *crtc_state);27void intel_mpllb_disable(struct intel_encoder *encoder);28void intel_mpllb_readout_hw_state(struct intel_encoder *encoder,29 struct intel_mpllb_state *pll_state);30int intel_mpllb_calc_port_clock(struct intel_encoder *encoder,31 const struct intel_mpllb_state *pll_state);32 33int intel_snps_phy_check_hdmi_link_rate(int clock);34void intel_snps_phy_set_signal_levels(struct intel_encoder *encoder,35 const struct intel_crtc_state *crtc_state);36void intel_mpllb_state_verify(struct intel_atomic_state *state,37 struct intel_crtc *crtc);38 39#endif /* __INTEL_SNPS_PHY_H__ */40