Commit 4fe1fdcc authored by Wenjing Liu's avatar Wenjing Liu Committed by Alex Deucher
Browse files

drm/amd/display: define mod_hdcp_display_disable_option struct

parent ac3a4fa1
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -191,7 +191,7 @@ void hdcp_update_display(struct hdcp_workqueue *hdcp_work,
				psp_set_srm(hdcp_work->hdcp.config.psp.handle, hdcp_work->srm, hdcp_work->srm_size,
					    &hdcp_work->srm_version);

			display->adjust.disable = 0;
			display->adjust.disable = MOD_HDCP_DISPLAY_NOT_DISABLE;
			if (content_type == DRM_MODE_HDCP_CONTENT_TYPE0) {
				hdcp_w->link.adjust.hdcp1.disable = 0;
				hdcp_w->link.adjust.hdcp2.force_type = MOD_HDCP_FORCE_TYPE_0;
@@ -203,7 +203,7 @@ void hdcp_update_display(struct hdcp_workqueue *hdcp_work,
			schedule_delayed_work(&hdcp_w->property_validate_dwork,
					      msecs_to_jiffies(DRM_HDCP_CHECK_PERIOD_MS));
		} else {
			display->adjust.disable = 1;
			display->adjust.disable = MOD_HDCP_DISPLAY_DISABLE_AUTHENTICATION;
			hdcp_w->encryption_status = MOD_HDCP_ENCRYPTION_STATUS_HDCP_OFF;
			cancel_delayed_work(&hdcp_w->property_validate_dwork);
		}
@@ -456,7 +456,7 @@ static void update_config(void *handle, struct cp_psp_stream_config *config)
	link->dp.rev = aconnector->dc_link->dpcd_caps.dpcd_rev.raw;
	link->dp.assr_enabled = config->assr_enabled;
	link->dp.mst_enabled = config->mst_enabled;
	display->adjust.disable = 1;
	display->adjust.disable = MOD_HDCP_DISPLAY_DISABLE_AUTHENTICATION;
	link->adjust.auth_delay = 3;
	link->adjust.hdcp1.disable = 0;

+2 −2
Original line number Diff line number Diff line
@@ -53,7 +53,7 @@ static uint8_t is_cp_desired_hdcp1(struct mod_hdcp *hdcp)
	 */
	for (i = 0; i < MAX_NUM_OF_DISPLAYS; i++) {
		if (hdcp->displays[i].state != MOD_HDCP_DISPLAY_INACTIVE &&
				!hdcp->displays[i].adjust.disable) {
				hdcp->displays[i].adjust.disable != MOD_HDCP_DISPLAY_DISABLE_AUTHENTICATION) {
			is_auth_needed = 1;
			break;
		}
@@ -74,7 +74,7 @@ static uint8_t is_cp_desired_hdcp2(struct mod_hdcp *hdcp)
	 */
	for (i = 0; i < MAX_NUM_OF_DISPLAYS; i++) {
		if (hdcp->displays[i].state != MOD_HDCP_DISPLAY_INACTIVE &&
				!hdcp->displays[i].adjust.disable) {
				hdcp->displays[i].adjust.disable != MOD_HDCP_DISPLAY_DISABLE_AUTHENTICATION) {
			is_auth_needed = 1;
			break;
		}
+8 −2
Original line number Diff line number Diff line
@@ -120,6 +120,12 @@ enum mod_hdcp_display_state {
	MOD_HDCP_DISPLAY_ENCRYPTION_ENABLED
};

enum mod_hdcp_display_disable_option {
	MOD_HDCP_DISPLAY_NOT_DISABLE = 0,
	MOD_HDCP_DISPLAY_DISABLE_AUTHENTICATION,
	MOD_HDCP_DISPLAY_DISABLE_ENCRYPTION,
};

struct mod_hdcp_ddc {
	void *handle;
	struct {
@@ -149,8 +155,8 @@ struct mod_hdcp_psp {
};

struct mod_hdcp_display_adjustment {
	uint8_t disable			: 1;
	uint8_t reserved		: 7;
	uint8_t disable			: 2;
	uint8_t reserved		: 6;
};

struct mod_hdcp_link_adjustment_hdcp1 {