| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| #ifndef __MDFLD_DSI_DPI_H__ |
| #define __MDFLD_DSI_DPI_H__ |
| |
| #include "mdfld_dsi_output.h" |
| #include "mdfld_output.h" |
| |
| struct mdfld_dsi_dpi_timing { |
| <------>u16 hsync_count; |
| <------>u16 hbp_count; |
| <------>u16 hfp_count; |
| <------>u16 hactive_count; |
| <------>u16 vsync_count; |
| <------>u16 vbp_count; |
| <------>u16 vfp_count; |
| }; |
| |
| struct mdfld_dsi_dpi_output { |
| <------>struct mdfld_dsi_encoder base; |
| <------>struct drm_device *dev; |
| |
| <------>int panel_on; |
| <------>int first_boot; |
| |
| <------>const struct panel_funcs *p_funcs; |
| }; |
| |
| #define MDFLD_DSI_DPI_OUTPUT(dsi_encoder)\ |
| <------>container_of(dsi_encoder, struct mdfld_dsi_dpi_output, base) |
| |
| |
| extern int mdfld_dsi_dpi_timing_calculation(struct drm_display_mode *mode, |
| <------><------><------><------>struct mdfld_dsi_dpi_timing *dpi_timing, |
| <------><------><------><------>int num_lane, int bpp); |
| extern struct mdfld_dsi_encoder *mdfld_dsi_dpi_init(struct drm_device *dev, |
| <------><------><------><------>struct mdfld_dsi_connector *dsi_connector, |
| <------><------><------><------>const struct panel_funcs *p_funcs); |
| |
| |
| extern void mdfld_dsi_dpi_dpms(struct drm_encoder *encoder, int mode); |
| extern bool mdfld_dsi_dpi_mode_fixup(struct drm_encoder *encoder, |
| <------><------><------><------>const struct drm_display_mode *mode, |
| <------><------><------><------>struct drm_display_mode *adjusted_mode); |
| extern void mdfld_dsi_dpi_prepare(struct drm_encoder *encoder); |
| extern void mdfld_dsi_dpi_commit(struct drm_encoder *encoder); |
| extern void mdfld_dsi_dpi_mode_set(struct drm_encoder *encoder, |
| <------><------><------><------>struct drm_display_mode *mode, |
| <------><------><------><------>struct drm_display_mode *adjusted_mode); |
| extern void mdfld_dsi_dpi_turn_on(struct mdfld_dsi_dpi_output *output, |
| <------><------><------><------>int pipe); |
| extern void mdfld_dsi_dpi_controller_init(struct mdfld_dsi_config *dsi_config, |
| <------><------><------><------>int pipe); |
| #endif |
| |