summaryrefslogtreecommitdiff
path: root/drivers/video/tegra/dc/nvhdcp.c
diff options
context:
space:
mode:
authorMarvin Zhang <mzhang@nvidia.com>2013-01-09 11:04:04 -0800
committerDan Willemsen <dwillemsen@nvidia.com>2013-09-14 13:05:54 -0700
commit762078be1f4c34bfb7ff5934109be2494b74894f (patch)
treef3e909923a07a82e6af359e3a985938dbf65cce9 /drivers/video/tegra/dc/nvhdcp.c
parent8652e0471c5586aea7177547351305930aa17d49 (diff)
nvhdcp: return bksv_list for upstream protocol.
add returning bksv_list support from function get_nvhdcp_state. upstream library gets bksv_list and passes it to tsec in order to verify the validity of downstream devices. Bug 1197884 Change-Id: I58ba2c5c4200ffb95ab9f929eecb1e9ebb60b5c9 Signed-off-by: Marvin Zhang <mzhang@nvidia.com> Reviewed-on: http://git-master/r/190034 Reviewed-by: James Zhao <jamesz@nvidia.com> Tested-by: James Zhao <jamesz@nvidia.com> Reviewed-by: Jon Mayo <jmayo@nvidia.com> (cherry picked from commit 2c6b09135f87293170a09270f77f413e07e7cf67) Reviewed-on: http://git-master/r/213672 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Karan Jhavar <kjhavar@nvidia.com>
Diffstat (limited to 'drivers/video/tegra/dc/nvhdcp.c')
-rw-r--r--drivers/video/tegra/dc/nvhdcp.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/video/tegra/dc/nvhdcp.c b/drivers/video/tegra/dc/nvhdcp.c
index 261d1a877c90..08a17f69b426 100644
--- a/drivers/video/tegra/dc/nvhdcp.c
+++ b/drivers/video/tegra/dc/nvhdcp.c
@@ -473,11 +473,16 @@ static int verify_ksv(u64 k)
static int get_nvhdcp_state(struct tegra_nvhdcp *nvhdcp,
struct tegra_nvhdcp_packet *pkt)
{
+ int i;
+
mutex_lock(&nvhdcp->lock);
if (nvhdcp->state != STATE_LINK_VERIFY) {
memset(pkt, 0, sizeof *pkt);
pkt->packet_results = TEGRA_NVHDCP_RESULT_LINK_FAILED;
} else {
+ pkt->num_bksv_list = nvhdcp->num_bksv_list;
+ for (i = 0; i < pkt->num_bksv_list; i++)
+ pkt->bksv_list[i] = nvhdcp->bksv_list[i];
pkt->packet_results = TEGRA_NVHDCP_RESULT_SUCCESS;
}
mutex_unlock(&nvhdcp->lock);