Lines Matching full:hdcp

289 typedef enum mod_hdcp_status (*mod_hdcp_action)(struct mod_hdcp *hdcp);
292 enum mod_hdcp_status *status, struct mod_hdcp *hdcp, char *str);
293 enum mod_hdcp_status mod_hdcp_hdcp1_execution(struct mod_hdcp *hdcp,
296 enum mod_hdcp_status mod_hdcp_hdcp1_dp_execution(struct mod_hdcp *hdcp,
299 enum mod_hdcp_status mod_hdcp_hdcp1_transition(struct mod_hdcp *hdcp,
303 enum mod_hdcp_status mod_hdcp_hdcp1_dp_transition(struct mod_hdcp *hdcp,
309 enum mod_hdcp_status mod_hdcp_hdcp2_execution(struct mod_hdcp *hdcp,
312 enum mod_hdcp_status mod_hdcp_hdcp2_dp_execution(struct mod_hdcp *hdcp,
315 enum mod_hdcp_status mod_hdcp_hdcp2_transition(struct mod_hdcp *hdcp,
319 enum mod_hdcp_status mod_hdcp_hdcp2_dp_transition(struct mod_hdcp *hdcp,
331 struct mod_hdcp *hdcp, struct mod_hdcp_display *display);
333 struct mod_hdcp *hdcp, uint8_t index);
334 enum mod_hdcp_status mod_hdcp_hdcp1_create_session(struct mod_hdcp *hdcp);
335 enum mod_hdcp_status mod_hdcp_hdcp1_destroy_session(struct mod_hdcp *hdcp);
336 enum mod_hdcp_status mod_hdcp_hdcp1_validate_rx(struct mod_hdcp *hdcp);
337 enum mod_hdcp_status mod_hdcp_hdcp1_enable_encryption(struct mod_hdcp *hdcp);
338 enum mod_hdcp_status mod_hdcp_hdcp1_validate_ksvlist_vp(struct mod_hdcp *hdcp);
340 struct mod_hdcp *hdcp);
341 enum mod_hdcp_status mod_hdcp_hdcp1_link_maintenance(struct mod_hdcp *hdcp);
342 enum mod_hdcp_status mod_hdcp_hdcp1_get_link_encryption_status(struct mod_hdcp *hdcp,
344 enum mod_hdcp_status mod_hdcp_hdcp2_create_session(struct mod_hdcp *hdcp);
345 enum mod_hdcp_status mod_hdcp_hdcp2_destroy_session(struct mod_hdcp *hdcp);
346 enum mod_hdcp_status mod_hdcp_hdcp2_prepare_ake_init(struct mod_hdcp *hdcp);
347 enum mod_hdcp_status mod_hdcp_hdcp2_validate_ake_cert(struct mod_hdcp *hdcp);
348 enum mod_hdcp_status mod_hdcp_hdcp2_validate_h_prime(struct mod_hdcp *hdcp);
349 enum mod_hdcp_status mod_hdcp_hdcp2_prepare_lc_init(struct mod_hdcp *hdcp);
350 enum mod_hdcp_status mod_hdcp_hdcp2_validate_l_prime(struct mod_hdcp *hdcp);
351 enum mod_hdcp_status mod_hdcp_hdcp2_prepare_eks(struct mod_hdcp *hdcp);
352 enum mod_hdcp_status mod_hdcp_hdcp2_enable_encryption(struct mod_hdcp *hdcp);
353 enum mod_hdcp_status mod_hdcp_hdcp2_validate_rx_id_list(struct mod_hdcp *hdcp);
355 struct mod_hdcp *hdcp);
357 struct mod_hdcp *hdcp);
359 struct mod_hdcp *hdcp);
362 enum mod_hdcp_status mod_hdcp_read_bksv(struct mod_hdcp *hdcp);
363 enum mod_hdcp_status mod_hdcp_read_bcaps(struct mod_hdcp *hdcp);
364 enum mod_hdcp_status mod_hdcp_read_bstatus(struct mod_hdcp *hdcp);
365 enum mod_hdcp_status mod_hdcp_read_r0p(struct mod_hdcp *hdcp);
366 enum mod_hdcp_status mod_hdcp_read_ksvlist(struct mod_hdcp *hdcp);
367 enum mod_hdcp_status mod_hdcp_read_vp(struct mod_hdcp *hdcp);
368 enum mod_hdcp_status mod_hdcp_read_binfo(struct mod_hdcp *hdcp);
369 enum mod_hdcp_status mod_hdcp_write_aksv(struct mod_hdcp *hdcp);
370 enum mod_hdcp_status mod_hdcp_write_ainfo(struct mod_hdcp *hdcp);
371 enum mod_hdcp_status mod_hdcp_write_an(struct mod_hdcp *hdcp);
372 enum mod_hdcp_status mod_hdcp_read_hdcp2version(struct mod_hdcp *hdcp);
373 enum mod_hdcp_status mod_hdcp_read_rxcaps(struct mod_hdcp *hdcp);
374 enum mod_hdcp_status mod_hdcp_read_rxstatus(struct mod_hdcp *hdcp);
375 enum mod_hdcp_status mod_hdcp_read_ake_cert(struct mod_hdcp *hdcp);
376 enum mod_hdcp_status mod_hdcp_read_h_prime(struct mod_hdcp *hdcp);
377 enum mod_hdcp_status mod_hdcp_read_pairing_info(struct mod_hdcp *hdcp);
378 enum mod_hdcp_status mod_hdcp_read_l_prime(struct mod_hdcp *hdcp);
379 enum mod_hdcp_status mod_hdcp_read_rx_id_list(struct mod_hdcp *hdcp);
380 enum mod_hdcp_status mod_hdcp_read_stream_ready(struct mod_hdcp *hdcp);
381 enum mod_hdcp_status mod_hdcp_write_ake_init(struct mod_hdcp *hdcp);
382 enum mod_hdcp_status mod_hdcp_write_no_stored_km(struct mod_hdcp *hdcp);
383 enum mod_hdcp_status mod_hdcp_write_stored_km(struct mod_hdcp *hdcp);
384 enum mod_hdcp_status mod_hdcp_write_lc_init(struct mod_hdcp *hdcp);
385 enum mod_hdcp_status mod_hdcp_write_eks(struct mod_hdcp *hdcp);
386 enum mod_hdcp_status mod_hdcp_write_repeater_auth_ack(struct mod_hdcp *hdcp);
387 enum mod_hdcp_status mod_hdcp_write_stream_manage(struct mod_hdcp *hdcp);
388 enum mod_hdcp_status mod_hdcp_write_content_type(struct mod_hdcp *hdcp);
389 enum mod_hdcp_status mod_hdcp_clear_cp_irq_status(struct mod_hdcp *hdcp);
391 /* hdcp version helpers */
392 static inline uint8_t is_dp_hdcp(struct mod_hdcp *hdcp) in is_dp_hdcp() argument
394 return (hdcp->connection.link.mode == MOD_HDCP_MODE_DP); in is_dp_hdcp()
397 static inline uint8_t is_dp_mst_hdcp(struct mod_hdcp *hdcp) in is_dp_mst_hdcp() argument
399 return (hdcp->connection.link.mode == MOD_HDCP_MODE_DP && in is_dp_mst_hdcp()
400 hdcp->connection.link.dp.mst_supported); in is_dp_mst_hdcp()
403 static inline uint8_t is_hdmi_dvi_sl_hdcp(struct mod_hdcp *hdcp) in is_hdmi_dvi_sl_hdcp() argument
405 return (hdcp->connection.link.mode == MOD_HDCP_MODE_DEFAULT); in is_hdmi_dvi_sl_hdcp()
408 /* hdcp state helpers */
409 static inline uint8_t current_state(struct mod_hdcp *hdcp) in current_state() argument
411 return hdcp->state.id; in current_state()
414 static inline void set_state_id(struct mod_hdcp *hdcp, in set_state_id() argument
417 memset(&hdcp->state, 0, sizeof(hdcp->state)); in set_state_id()
418 hdcp->state.id = id; in set_state_id()
422 HDCP_NEXT_STATE_TRACE(hdcp, id, output); in set_state_id()
425 static inline uint8_t is_in_hdcp1_states(struct mod_hdcp *hdcp) in is_in_hdcp1_states() argument
427 return (current_state(hdcp) > HDCP1_STATE_START && in is_in_hdcp1_states()
428 current_state(hdcp) <= HDCP1_STATE_END); in is_in_hdcp1_states()
431 static inline uint8_t is_in_hdcp1_dp_states(struct mod_hdcp *hdcp) in is_in_hdcp1_dp_states() argument
433 return (current_state(hdcp) > HDCP1_DP_STATE_START && in is_in_hdcp1_dp_states()
434 current_state(hdcp) <= HDCP1_DP_STATE_END); in is_in_hdcp1_dp_states()
437 static inline uint8_t is_in_hdcp2_states(struct mod_hdcp *hdcp) in is_in_hdcp2_states() argument
439 return (current_state(hdcp) > HDCP2_STATE_START && in is_in_hdcp2_states()
440 current_state(hdcp) <= HDCP2_STATE_END); in is_in_hdcp2_states()
443 static inline uint8_t is_in_hdcp2_dp_states(struct mod_hdcp *hdcp) in is_in_hdcp2_dp_states() argument
445 return (current_state(hdcp) > HDCP2_DP_STATE_START && in is_in_hdcp2_dp_states()
446 current_state(hdcp) <= HDCP2_DP_STATE_END); in is_in_hdcp2_dp_states()
449 static inline uint8_t is_hdcp1(struct mod_hdcp *hdcp) in is_hdcp1() argument
451 return (is_in_hdcp1_states(hdcp) || is_in_hdcp1_dp_states(hdcp)); in is_hdcp1()
454 static inline uint8_t is_hdcp2(struct mod_hdcp *hdcp) in is_hdcp2() argument
456 return (is_in_hdcp2_states(hdcp) || is_in_hdcp2_dp_states(hdcp)); in is_hdcp2()
459 static inline uint8_t is_in_cp_not_desired_state(struct mod_hdcp *hdcp) in is_in_cp_not_desired_state() argument
461 return current_state(hdcp) == HDCP_CP_NOT_DESIRED; in is_in_cp_not_desired_state()
464 static inline uint8_t is_in_initialized_state(struct mod_hdcp *hdcp) in is_in_initialized_state() argument
466 return current_state(hdcp) == HDCP_INITIALIZED; in is_in_initialized_state()
470 static inline void increment_stay_counter(struct mod_hdcp *hdcp) in increment_stay_counter() argument
472 hdcp->state.stay_count++; in increment_stay_counter()
492 static inline void set_watchdog_in_ms(struct mod_hdcp *hdcp, uint16_t time, in set_watchdog_in_ms() argument
510 static inline uint8_t get_active_display_count(struct mod_hdcp *hdcp) in get_active_display_count() argument
516 if (is_display_active(&hdcp->displays[i])) in get_active_display_count()
522 struct mod_hdcp *hdcp) in get_first_active_display() argument
528 if (is_display_active(&hdcp->displays[i])) { in get_first_active_display()
529 display = &hdcp->displays[i]; in get_first_active_display()
536 struct mod_hdcp *hdcp, uint8_t index) in get_active_display_at_index() argument
542 if (hdcp->displays[i].index == index && in get_active_display_at_index()
543 is_display_active(&hdcp->displays[i])) { in get_active_display_at_index()
544 display = &hdcp->displays[i]; in get_active_display_at_index()
551 struct mod_hdcp *hdcp) in get_empty_display_container() argument
557 if (!is_display_active(&hdcp->displays[i])) { in get_empty_display_container()
558 display = &hdcp->displays[i]; in get_empty_display_container()
564 static inline void reset_retry_counts(struct mod_hdcp *hdcp) in reset_retry_counts() argument
566 hdcp->connection.hdcp1_retry_count = 0; in reset_retry_counts()
567 hdcp->connection.hdcp2_retry_count = 0; in reset_retry_counts()