Hi,

Information below was given by a hardware vendor, who uses these demodulators on their dvb-t2 products. As an explanation on our questions for Si2168 Linux driver development.
I think it can give more clue with Part, Revision and ROM detection algorithm 
in Linux driver for that demodulator.

Also, I would like to suggest a following naming method for files containing 
firmware patches. It's self explaining:
dvb-demod-si2168-a30-rom3_0_2-patch-build3_0_20.fw
dvb-demod-si2168-b40-rom4_0_2-patch-build4_0_19.fw.tar.gz
dvb-demod-si2168-b40-rom4_0_2-startup-without-patch-stub.fw
(Stub code to startup B40 without patch at all: 
0x05,0x00,0x00,0x00,0x00,0x00,0x00,0x00)
I think such naming scheme can help to avoid possible mess with fw patch 
versions.

Here is a detection code:
NTSTATUS si2168_cmd_part_info(tPART_INFO *part_info)
{
   NTSTATUS ntStatus;

   BYTE cmdBuffer[1] = {Si2168_PART_INFO_CMD};
   BYTE rspBuffer[13] = {0};

   ntStatus = si2168_cmd_rsp(cmdBuffer, sizeof(cmdBuffer), rspBuffer, 
sizeof(rspBuffer));
   if (ntStatus != STATUS_SUCCESS)
       return ntStatus;

   part_info->chiprev = rspBuffer[1] & 0x0F;
   part_info->part = rspBuffer[2];
   part_info->pmajor = rspBuffer[3];
   part_info->pminor = rspBuffer[4];
   part_info->pbuild = rspBuffer[5];
part_info->serial = ((ULONG)rspBuffer[11] << 24) | ((ULONG)rspBuffer[10] << 16) | ((ULONG)rspBuffer[9] << 8) | ((ULONG)rspBuffer[8]);
   part_info->romid = rspBuffer[12];

   DBGPRINT(("CHIP REV   : %d\n", part_info->chiprev));
   DBGPRINT(("CHIP PART  : %d\n", part_info->part));
   DBGPRINT(("CHIP PMAJOR: %c\n", part_info->pmajor));
   DBGPRINT(("CHIP PMINOR: %c\n", part_info->pminor));
   DBGPRINT(("CHIP PBUILD: %d\n", part_info->pbuild));
   DBGPRINT(("CHIP SERIAL: %08X\n", part_info->serial ));
   DBGPRINT(("CHIP ROMID : %d\n", part_info->romid));

   return STATUS_SUCCESS;
}

Best regards.
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to