mirror of https://gitee.com/openkylin/linux.git
drm/amd/display: update psp interface header
[Why] We need to support SRM(System Renewability Message) As per hdcp spec (5.Renewability) SRM needs to be storage in a non-volatile memory. PSP owns the checking of SRM but doesn't have the ability to store it in a non-volatile memory. So we need the kernel driver to facilitate it using the interface provided by PSP [How] Add the interface to the header file, so the driver can use them v2: update commit description Signed-off-by: Bhawanpreet Lakha <Bhawanpreet.Lakha@amd.com> Reviewed-by: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com> Reviewed-by: Harry Wentland <harry.wentland@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
e50dc17163
commit
79aad7bd95
|
@ -117,6 +117,8 @@ struct ta_dtm_shared_memory {
|
|||
int psp_cmd_submit_buf(struct psp_context *psp, struct amdgpu_firmware_info *ucode, struct psp_gfx_cmd_resp *cmd,
|
||||
uint64_t fence_mc_addr);
|
||||
|
||||
enum { PSP_HDCP_SRM_FIRST_GEN_MAX_SIZE = 5120 };
|
||||
|
||||
enum ta_hdcp_command {
|
||||
TA_HDCP_COMMAND__INITIALIZE,
|
||||
TA_HDCP_COMMAND__HDCP1_CREATE_SESSION,
|
||||
|
@ -134,7 +136,10 @@ enum ta_hdcp_command {
|
|||
TA_HDCP_COMMAND__UNUSED_3,
|
||||
TA_HDCP_COMMAND__HDCP2_CREATE_SESSION_V2,
|
||||
TA_HDCP_COMMAND__HDCP2_PREPARE_PROCESS_AUTHENTICATION_MSG_V2,
|
||||
TA_HDCP_COMMAND__HDCP2_ENABLE_DP_STREAM_ENCRYPTION
|
||||
TA_HDCP_COMMAND__HDCP2_ENABLE_DP_STREAM_ENCRYPTION,
|
||||
TA_HDCP_COMMAND__HDCP_DESTROY_ALL_SESSIONS,
|
||||
TA_HDCP_COMMAND__HDCP_SET_SRM,
|
||||
TA_HDCP_COMMAND__HDCP_GET_SRM
|
||||
};
|
||||
|
||||
enum ta_hdcp2_msg_id {
|
||||
|
@ -415,6 +420,22 @@ struct ta_hdcp_cmd_hdcp2_enable_dp_stream_encryption_input {
|
|||
uint32_t display_handle;
|
||||
};
|
||||
|
||||
struct ta_hdcp_cmd_set_srm_input {
|
||||
uint32_t srm_buf_size;
|
||||
uint8_t srm_buf[PSP_HDCP_SRM_FIRST_GEN_MAX_SIZE];
|
||||
};
|
||||
|
||||
struct ta_hdcp_cmd_set_srm_output {
|
||||
uint8_t valid_signature;
|
||||
uint32_t srm_version;
|
||||
};
|
||||
|
||||
struct ta_hdcp_cmd_get_srm_output {
|
||||
uint32_t srm_version;
|
||||
uint32_t srm_buf_size;
|
||||
uint8_t srm_buf[PSP_HDCP_SRM_FIRST_GEN_MAX_SIZE];
|
||||
};
|
||||
|
||||
/**********************************************************/
|
||||
/* Common input structure for HDCP callbacks */
|
||||
union ta_hdcp_cmd_input {
|
||||
|
@ -432,6 +453,7 @@ union ta_hdcp_cmd_input {
|
|||
struct ta_hdcp_cmd_hdcp2_process_prepare_authentication_message_input_v2
|
||||
hdcp2_prepare_process_authentication_message_v2;
|
||||
struct ta_hdcp_cmd_hdcp2_enable_dp_stream_encryption_input hdcp2_enable_dp_stream_encryption;
|
||||
struct ta_hdcp_cmd_set_srm_input hdcp_set_srm;
|
||||
};
|
||||
|
||||
/* Common output structure for HDCP callbacks */
|
||||
|
@ -444,6 +466,8 @@ union ta_hdcp_cmd_output {
|
|||
struct ta_hdcp_cmd_hdcp2_create_session_output_v2 hdcp2_create_session_v2;
|
||||
struct ta_hdcp_cmd_hdcp2_process_prepare_authentication_message_output_v2
|
||||
hdcp2_prepare_process_authentication_message_v2;
|
||||
struct ta_hdcp_cmd_set_srm_output hdcp_set_srm;
|
||||
struct ta_hdcp_cmd_get_srm_output hdcp_get_srm;
|
||||
};
|
||||
/**********************************************************/
|
||||
|
||||
|
|
Loading…
Reference in New Issue