53 lines
1.5 KiB
C
Executable File
53 lines
1.5 KiB
C
Executable File
/* driver/soc/samsung/exynos-hdcp/dplink/exynos-hdcp2-dplink.h
|
|
*
|
|
* Copyright (c) 2016 Samsung Electronics Co., Ltd.
|
|
* http://www.samsung.com
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License version 2 as
|
|
* published by the Free Software Foundation.
|
|
*/
|
|
#ifndef __EXYNOS_HDCP2_DPLINK_H__
|
|
#define __EXYNOS_HDCP2_DPLINK_H__
|
|
|
|
#if defined(CONFIG_HDCP2_EMULATION_MODE)
|
|
int dplink_emul_handler(int cmd);
|
|
#endif
|
|
|
|
enum {
|
|
HDCP_AUTH_PROCESS_ON = 0x0,
|
|
HDCP_AUTH_PROCESS_STOP = 0x1,
|
|
HDCP_AUTH_PROCESS_DONE = 0x2
|
|
};
|
|
|
|
enum {
|
|
DRM_OFF = 0x0,
|
|
DRM_ON = 0x1,
|
|
DRM_SAME_STREAM_TYPE = 0x2 /* If the previous contents and stream_type id are the same flag */
|
|
};
|
|
|
|
/* Do hdcp2.2 authentication with DP Receiver
|
|
* and enable encryption if authentication is succeed.
|
|
* @return
|
|
* - 0: Success
|
|
* - ENOMEM: hdcp context open fail
|
|
* - EACCES: authentication fail
|
|
*/
|
|
int hdcp_dplink_authenticate(void);
|
|
|
|
int do_dplink_auth(struct hdcp_link_info *lk_handle);
|
|
int hdcp_dplink_get_rxstatus(uint8_t *status);
|
|
int hdcp_dplink_set_paring_available(void);
|
|
int hdcp_dplink_set_hprime_available(void);
|
|
int hdcp_dplink_set_rp_ready(void);
|
|
int hdcp_dplink_set_reauth(void);
|
|
int hdcp_dplink_set_integrity_fail(void);
|
|
int hdcp_dplink_cancel_auth(void);
|
|
int hdcp_dplink_stream_manage(void);
|
|
int hdcp_dplink_is_auth_state(void);
|
|
int hdcp_dplink_auth_check(void);
|
|
int hdcp_dplink_drm_flag_check(int flag);
|
|
int hdcp_dplink_dp_link_flag_check(int flag);
|
|
void hdcp_clear_session(uint32_t id);
|
|
#endif
|