1 /* SPDX-License-Identifier: MIT */ 2 /* 3 * Copyright © 2021 Intel Corporation 4 */ 5 6 #ifndef __VLV_DSI_PLL_H__ 7 #define __VLV_DSI_PLL_H__ 8 9 #include <linux/types.h> 10 11 enum port; 12 struct intel_crtc_state; 13 struct intel_display; 14 struct intel_encoder; 15 16 int vlv_dsi_pll_compute(struct intel_encoder *encoder, 17 struct intel_crtc_state *config); 18 void vlv_dsi_pll_enable(struct intel_encoder *encoder, 19 const struct intel_crtc_state *config); 20 void vlv_dsi_pll_disable(struct intel_encoder *encoder); 21 u32 vlv_dsi_get_pclk(struct intel_encoder *encoder, 22 struct intel_crtc_state *config); 23 void vlv_dsi_reset_clocks(struct intel_encoder *encoder, enum port port); 24 25 int bxt_dsi_pll_compute(struct intel_encoder *encoder, 26 struct intel_crtc_state *config); 27 void bxt_dsi_pll_enable(struct intel_encoder *encoder, 28 const struct intel_crtc_state *config); 29 void bxt_dsi_pll_disable(struct intel_encoder *encoder); 30 u32 bxt_dsi_get_pclk(struct intel_encoder *encoder, 31 struct intel_crtc_state *config); 32 void bxt_dsi_reset_clocks(struct intel_encoder *encoder, enum port port); 33 34 #ifdef I915 35 bool bxt_dsi_pll_is_enabled(struct intel_display *display); 36 void assert_dsi_pll_enabled(struct intel_display *display); 37 void assert_dsi_pll_disabled(struct intel_display *display); 38 #else 39 static inline bool bxt_dsi_pll_is_enabled(struct intel_display *display) 40 { 41 return false; 42 } 43 static inline void assert_dsi_pll_enabled(struct intel_display *display) 44 { 45 } 46 47 static inline void assert_dsi_pll_disabled(struct intel_display *display) 48 { 49 } 50 #endif 51 52 #endif /* __VLV_DSI_PLL_H__ */ 53