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