Home | History | Annotate | Line # | Download | only in display
      1 /*	$NetBSD: intel_lspcon.h,v 1.2 2021/12/18 23:45:30 riastradh Exp $	*/
      2 
      3 /* SPDX-License-Identifier: MIT */
      4 /*
      5  * Copyright  2019 Intel Corporation
      6  */
      7 
      8 #ifndef __INTEL_LSPCON_H__
      9 #define __INTEL_LSPCON_H__
     10 
     11 #include <linux/types.h>
     12 
     13 struct drm_connector;
     14 struct drm_connector_state;
     15 struct intel_crtc_state;
     16 struct intel_digital_port;
     17 struct intel_encoder;
     18 struct intel_lspcon;
     19 
     20 bool lspcon_init(struct intel_digital_port *intel_dig_port);
     21 void lspcon_resume(struct intel_lspcon *lspcon);
     22 void lspcon_wait_pcon_mode(struct intel_lspcon *lspcon);
     23 void lspcon_write_infoframe(struct intel_encoder *encoder,
     24 			    const struct intel_crtc_state *crtc_state,
     25 			    unsigned int type,
     26 			    const void *buf, ssize_t len);
     27 void lspcon_read_infoframe(struct intel_encoder *encoder,
     28 			   const struct intel_crtc_state *crtc_state,
     29 			   unsigned int type,
     30 			   void *frame, ssize_t len);
     31 void lspcon_set_infoframes(struct intel_encoder *encoder,
     32 			   bool enable,
     33 			   const struct intel_crtc_state *crtc_state,
     34 			   const struct drm_connector_state *conn_state);
     35 u32 lspcon_infoframes_enabled(struct intel_encoder *encoder,
     36 			      const struct intel_crtc_state *pipe_config);
     37 void lspcon_ycbcr420_config(struct drm_connector *connector,
     38 			    struct intel_crtc_state *crtc_state);
     39 
     40 #endif /* __INTEL_LSPCON_H__ */
     41