firedtv: fix returned struct for ca_info
The SystemId of the ca_info message was filled with garbage. It now returns what the card returns. Signed-off-by: Henrik Kurelid <henrik@kurelid.se> Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
This commit is contained in:
committed by
Stefan Richter
parent
8ae83cdf32
commit
096edfbf16
@@ -763,7 +763,7 @@ int avc_ca_info(struct firesat *firesat, char *app_info, unsigned int *len)
|
|||||||
{
|
{
|
||||||
AVCCmdFrm CmdFrm;
|
AVCCmdFrm CmdFrm;
|
||||||
AVCRspFrm RspFrm;
|
AVCRspFrm RspFrm;
|
||||||
/* int pos; FIXME: unused */
|
int pos;
|
||||||
|
|
||||||
memset(&CmdFrm, 0, sizeof(AVCCmdFrm));
|
memset(&CmdFrm, 0, sizeof(AVCCmdFrm));
|
||||||
CmdFrm.cts = AVC;
|
CmdFrm.cts = AVC;
|
||||||
@@ -783,13 +783,13 @@ int avc_ca_info(struct firesat *firesat, char *app_info, unsigned int *len)
|
|||||||
if (avc_write(firesat, &CmdFrm, &RspFrm) < 0)
|
if (avc_write(firesat, &CmdFrm, &RspFrm) < 0)
|
||||||
return -EIO;
|
return -EIO;
|
||||||
|
|
||||||
/* pos = get_ca_object_pos(&RspFrm); FIXME: unused */
|
pos = get_ca_object_pos(&RspFrm);
|
||||||
app_info[0] = (TAG_CA_INFO >> 16) & 0xFF;
|
app_info[0] = (TAG_CA_INFO >> 16) & 0xFF;
|
||||||
app_info[1] = (TAG_CA_INFO >> 8) & 0xFF;
|
app_info[1] = (TAG_CA_INFO >> 8) & 0xFF;
|
||||||
app_info[2] = (TAG_CA_INFO >> 0) & 0xFF;
|
app_info[2] = (TAG_CA_INFO >> 0) & 0xFF;
|
||||||
app_info[3] = 2;
|
app_info[3] = 2;
|
||||||
app_info[4] = app_info[5];
|
app_info[4] = RspFrm.operand[pos + 0];
|
||||||
app_info[5] = app_info[6];
|
app_info[5] = RspFrm.operand[pos + 1];
|
||||||
*len = app_info[3] + 4;
|
*len = app_info[3] + 4;
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
Reference in New Issue
Block a user