From bd9d0784e8e7f2c7be7b66bce6e6461d4fcbff04 Mon Sep 17 00:00:00 2001 From: Ajay Singh Parmar Date: Sun, 15 Nov 2015 01:56:08 -0800 Subject: msm: mdss: hdmi: hdcp2p2: add tethered support Provide user an option to let the HDCP2.2 authentication run on main thread. Avoid processing on module threads thus avoiding any scheduling delays. The user may choose to switch to this mode based on its requirements. Change-Id: I76ec4a18f0fc52e99bbe76b6707511d3af6151f3 Signed-off-by: Ajay Singh Parmar --- include/linux/hdcp_qseecom.h | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'include/linux') diff --git a/include/linux/hdcp_qseecom.h b/include/linux/hdcp_qseecom.h index 94caf29cba9f..ab39126b41ef 100644 --- a/include/linux/hdcp_qseecom.h +++ b/include/linux/hdcp_qseecom.h @@ -96,7 +96,7 @@ static inline char *hdcp_lib_cmd_to_str(uint32_t cmd) struct hdcp_txmtr_ops { int (*wakeup)(struct hdcp_lib_wakeup_data *data); bool (*feature_supported)(void *phdcpcontext); - + void (*update_exec_type)(void *ctx, bool tethered); int (*hdcp_txmtr_get_state)(void *phdcpcontext, uint32_t *state); }; @@ -105,9 +105,15 @@ struct hdcp_client_ops { int (*wakeup)(struct hdmi_hdcp_wakeup_data *data); }; -int hdcp_library_register(void **pphdcpcontext, - struct hdcp_client_ops *client_ops, - struct hdcp_txmtr_ops *txmtr_ops, void *client_ctx); +struct hdcp_register_data { + struct hdcp_client_ops *client_ops; + struct hdcp_txmtr_ops *txmtr_ops; + void *client_ctx; + void **hdcp_ctx; + bool tethered; +}; + +int hdcp_library_register(struct hdcp_register_data *data); void hdcp_library_deregister(void *phdcpcontext); bool hdcp1_check_if_supported_load_app(void); int hdcp1_set_keys(uint32_t *aksv_msb, uint32_t *aksv_lsb); -- cgit v1.2.3