add to support TBS690B-Lite

This commit is contained in:
tbslucy
2024-12-16 18:07:54 +08:00
parent cf8cf4c060
commit ca3b5b0028

View File

@@ -3410,6 +3410,14 @@ static int tbsmod_probe(struct pci_dev *pdev,
break;
case 0x690b:
dev->cardid = 0x690b;
if(pdev->subsystem_device == 0x0001)
dev->mods_num =4;
else if(pdev->subsystem_device == 0x0020)
dev->mods_num = 2;
else if(pdev->subsystem_device == 0x0010)
dev->mods_num = 1;
else
printk("unknow card type!\n");
break;
case 0x6104:
dev->cardid = 0x6104;
@@ -3429,7 +3437,7 @@ static int tbsmod_probe(struct pci_dev *pdev,
break;
case 0x6032:
dev->cardid = 0x6032;
if(pdev->subsystem_device == 0x008)
if(pdev->subsystem_device == 0x0008)
dev->mods_num = 8;
else if(pdev->subsystem_device == 0x0016)
dev->mods_num = 16;
@@ -3502,12 +3510,19 @@ static int tbsmod_probe(struct pci_dev *pdev,
case 0x690b:
mutex_lock(&dev->chip_lock);
printk("tbsmod%d:tbs690b asi card\n", dev->mod_index);
if(pdev->subsystem_device == 0x0001)
printk("tbsmod%d: TBS690B ASI out\n", dev->mod_index);
else if(pdev->subsystem_device == 0x0020)
printk("tbsmod%d: TBS690B-Lite ASI out\n", dev->mod_index);
else if(pdev->subsystem_device == 0x0010)
printk("tbsmod%d: TBS690B-Lite ASI out\n", dev->mod_index);
mpbuf[0] = 0;//close IIC mask
TBS_PCIE_WRITE( Int_adapter, 0x08, *(u32 *)&mpbuf[0]);
for(i=0;i<4;i++){
for(i=0;i<dev->mods_num;i++){
mpbuf[0] = i; //0--3 :select value
TBS_PCIE_WRITE( MOD_ASI_BASEADDRESS, MOD_ASI_DEVICE, *(u32 *)&mpbuf[0]);
@@ -3582,6 +3597,8 @@ fail0:
static const struct pci_device_id tbsmod_id_table[] = {
MAKE_ENTRY(0x544d, 0x6178, 0x6004, 0x0001, "tbs6004 dvbc card"),
MAKE_ENTRY(0x544d, 0x6178, 0x690b, 0x0001, "tbs690b asi card"),
MAKE_ENTRY(0x544d, 0x6178, 0x690b, 0x0010, "TBS690B-Lite asi card"),
MAKE_ENTRY(0x544d, 0x6178, 0x690b, 0x0020, "TBS690B-Lite asi card"),
MAKE_ENTRY(0x544d, 0x6178, 0x6104, 0x0001, "tbs6104 dvbt card"),
MAKE_ENTRY(0x544d, 0x6178, 0x6014, 0x0001, "tbs6014 qamb card"),
MAKE_ENTRY(0x544d, 0x6178, 0x6008, 0x0001, "tbs6008 dvbc card"),