* @mode: Current display mode.
* @connected: If HDMI display is connected.
* @is_tpg_enabled: TPG state.
+ * @hdmi_tx_version: HDMI TX version
+ * @hdmi_tx_major_version: HDMI TX major version
+ * @max_pclk_khz: Max pixel clock supported
+ * @hdcp1_use_sw_keys: If HDCP1 engine uses SW keys
+ * @hdcp14_present: If the sink supports HDCP 1.4
+ * @hdcp22_present: If the sink supports HDCP 2.2
+ * @hdcp_status: Current HDCP status
+ * @sink_hdcp_ver: HDCP version of the sink
+ * @enc_lvl: Current encryption level
+ * @curr_hdr_state: Current HDR state of the HDMI connector
+ * @auth_state: Current authentication state of HDCP
+ * @sink_hdcp22_support: If the sink supports HDCP 2.2
+ * @src_hdcp22_support: If the source supports HDCP 2.2
+ * @hdcp_data: Call back data registered by the client with HDCP lib
+ * @hdcp_feat_data: Handle to HDCP feature data
+ * @hdcp_ops: Function ops registered by the client with the HDCP lib
+ * @ddc_ctrl: Handle to HDMI DDC Controller
* @hpd_work: HPD work structure.
* @codec_ready: If audio codec is ready.
* @client_notify_pending: If there is client notification pending.
* @irq_domain: IRQ domain structure.
+ * @notifier: CEC notifider to convey physical address information.
* @pll_update_enable: if it's allowed to update HDMI PLL ppm.
* @dc_enable: If deep color is enabled. Only DC_30 so far.
* @dc_feature_supported: If deep color feature is supported.
- * @notifier: CEC notifider to convey physical address information.
+ * @bt2020_colorimetry: If BT2020 colorimetry is supported by sink
+ * @hdcp_cb_work: Callback function for HDCP
+ * @io: Handle to IO base addresses for HDMI
* @root: Debug fs root entry.
*/
struct sde_hdmi {
u32 hdcp14_present;
u32 hdcp22_present;
u8 hdcp_status;
+ u8 sink_hdcp_ver;
u32 enc_lvl;
u8 curr_hdr_state;
bool auth_state;
}
}
+ if (display->sink_hdcp22_support)
+ display->sink_hdcp_ver = SDE_HDMI_HDCP_22;
+ else
+ display->sink_hdcp_ver = SDE_HDMI_HDCP_14;
+
/* update internal data about hdcp */
display->hdcp_data = fd;
display->hdcp_ops = ops;
mutex_lock(&display->display_lock);
display->pll_update_enable = false;
+ display->sink_hdcp_ver = SDE_HDMI_HDCP_NONE;
mutex_unlock(&display->display_lock);
}
"PLL_ENABLE", 0x0, 0, 1, 0,
CONNECTOR_PROP_PLL_ENABLE);
+ msm_property_install_volatile_range(&c_conn->property_info,
+ "HDCP_VERSION", 0x0, 0, U8_MAX, 0,
+ CONNECTOR_PROP_HDCP_VERSION);
+
/* enum/bitmask properties */
msm_property_install_enum(&c_conn->property_info, "topology_name",
DRM_MODE_PROP_IMMUTABLE, 0, e_topology_name,